Ch. 17 · ServiceNow

ServiceNow Record Producers

Collect input with a catalog form and create the right record, and know the limits when the target span multiple tables.

~2 min readintermediateupdated Oct 5, 2026

A record producer presents a catalog-style form and creates a record in a specified table from the submitted values. It gives users a guided form without exposing the underlying table, and it maps variables to fields in a script.

Before you start

You should be comfortable with catalog items and tables. This article covers record producers and their mapping.

Step-by-step walkthrough

Step 1: Choose the target table

A record producer creates a record in one table, chosen when you configure it. The variables become the form fields the user fills, and the mapping script copies them into the record. Picking the right table keeps the resulting records consistent with the workflow.

Step 2: Map variables in the script

The producer’s script runs on submit and sets fields on the new record from the variables, such as current.short_description = producer.short_description. This is where defaults, derived values and conditional mappings belong.

Step 3: Respect the single-table and producer limits

One producer targets one table, so creating linked records across tables needs additional logic, often a business rule or flow. Large tables split across record producers complicate querying, so plan how the records will be found and reported on.

Worked scenario

The producer maps its variables to the incident fields.

// Record producer script
current.short_description = producer.short_description;
current.description = producer.description;
current.category = producer.category;
current.caller_id = gs.getUserID();
JavaScript

Walk through the example

On submit, the script creates an incident with the values the user entered, and sets the caller to the current user. The user interacted with a friendly form, not the incident table, which reduces the fields they must understand while still producing a standard record.

Common mistake

Assuming one producer can create records in several tables, which it cannot without extra logic. Another is leaving the target table’s required fields unset, so submission fails or produces incomplete records.

Verify the behavior

Submit the producer and confirm a record appears in the target table with the mapped values. Leave a required field empty and confirm the failure. Query the created records to confirm they are findable and reportable.

Interview exercise

When is a record producer better than a form on the table itself?

Answer and reasoning

When the audience should not interact with the underlying table directly, or you want a guided, simplified form with only relevant variables and a controlled mapping. It hides table complexity and enforces the mapping in one place. For power users editing the record directly, the table form is appropriate.

Continue learning

Compare catalog intake in GlideAjax contracts and flows in Flow Designer. Read the ServiceNow record producer documentation and try the ServiceNow interview questions.

More in ServiceNow

read ✓ServiceNow · hard

ServiceNow ACL Scripting and Access

Enforce access with ACLs, use scripted conditions carefully, and test as the actual user to verify.

~2 min readread →
read ✓ServiceNow · hard

ServiceNow Caching and Invalidation

Understand what the platform caches, when a change takes effect, and how to flush caches consistently across nodes.

~2 min readread →
read ✓ServiceNow · mid

ServiceNow Dictionary and Field Audit

Define fields in the dictionary, use per-table overrides, and enable audit on the fields that need a history.

~2 min readread →
esc