Use PDIs? Take our 5-minute survey to help shape the PDI roadmap.

In which table the values of variable sets are stored

Alon Grod
Tera Expert

In which table the values of variable sets are stored

1 ACCEPTED SOLUTION

Danish Bhairag2
Tera Sage

Hi @Alon Grod ,

 

  • Variable Set Definitions (item_option_new_set): Stores the metadata configuration of the variable sets themselves.
  • Variables (item_option_new): Stores individual variable definitions whether they belong to a standard catalog item or a variable set.
  • Submitted Values (sc_item_option / question_answer): Stores the actual submitted answers linked to a requested item (RITM) or task record.
  • Multi-Row Variable Sets (sc_multi_row_question_answer): Data for multi-row variables (MRVS) is stored in the sc_multi_row_question_answer table. Each row of MRVS is a record in this table.

Thanks,

Danish Bhairagdar

View solution in original post

7 REPLIES 7

Ankur Bawiskar
Tera Patron

@Alon Grod 

the answer to your question is easy and could be easily found in community, docs or google

what's your actual question and business requirement?

Regards,
Ankur
✨ Certified Technical Architect  ||  ✨ 10x ServiceNow MVP  ||  ✨ ServiceNow Community Leader

VJ_Srivastava
Tera Contributor

Hello @Alon Grod ,

From an architectural standpoint, ServiceNow handles catalog variables through a highly normalized database schema rather than a flat table structure. Because a single variable set can be attached to hundreds of different catalog items, the platform decouples the variable definition from the submitted payload.

When a user submits a form, the system utilizes a Many-to-Many (M2M) architecture:

  • The raw submitted answers live in sc_item_option.

  • The sc_item_option_mtom table acts as the relational bridge connecting those answers to the specific parent record (like the RITM).

Understanding this relational schema is critical when designing complex integrations or data warehouse exports. Querying flat records is easy, but extracting M2M variable payloads at scale requires deliberate integration design to ensure you don't inadvertently cause performance degradation or long-running database queries on your instance.

Tanushri
Tera Contributor

Hi Alon,

While this is fundamentally a database architecture question, knowing exactly where this data lives is critical for operational reporting and business intelligence.

Variable sets often contain the most important business context for a request—whether that is a financial cost center, a specific software entitlement, or a compliance justification. When organizations struggle to report on Service Catalog metrics, it is almost always because their reporting teams don't realize this data spans across the sc_item_option and sc_item_option_mtom tables.

By understanding this backend structure, your analytics and platform teams can build much more accurate dashboards and automated audits. Ensuring this data is properly extracted and visible to business stakeholders directly improves decision-making and operational transparency across the enterprise.