Fields
Summarize
Summary of Fields
Fields are essential components of the CPQ (Configure, Price, Quote) configuration model, serving as the smallest units representing individual data points such as quantities or choices. They are globally accessible within an environment, allowing for reuse across different blueprints, rules, and layouts, which promotes consistency and minimizes duplication.
Show less
Key Features
- Blueprints: Define which global fields participate in configurations, enabling reuse without duplication.
- Rules: Utilize field values to perform various actions, such as determining values and validating options.
- Layouts: Control the visual presentation of fields and user interactions through different Component display types.
- BOM/Product List: Map field values to product attributes for downstream processing.
Field Lifecycle
Fields are created once and are globally available, facilitating their reuse. The lifecycle includes:
- Create: Define the field type, name, and unique identifier.
- Associate: Link fields to blueprints to enable their use in configurations.
- Place Display: Choose appropriate display types within layouts.
- Orchestrate: Apply rules that read and manipulate field values.
Choosing the Right Field Type
Selecting appropriate field types is critical for ensuring valid data. Options include:
- Text: Free-form input.
- Number: Numeric input with constraints.
- Boolean: True/False values.
- Picklist: Constrained selection options.
- Product Picker: Specialized for product selection.
- Sets: Tabular collections for row-specific interactions.
Data Model vs. Display Model
The field type dictates the data model, while the Component display type determines user interaction. A single field can be displayed differently across various layouts while maintaining a consistent data model.
Association and Reuse
Fields are designed for global reuse. Associating a field with any blueprint makes it available for that blueprint's layouts and rules, which simplifies maintenance and avoids redundancy.
Governance and Naming
Use clear variable names and document field descriptions to ensure future usability. Set defaults judiciously based on business logic needs.
Performance and Reliability Tips
Opt for the simplest field types to enhance performance. Utilize picklist extensions or product pickers to manage complex data while minimizing rule counts.
When to Use Bulk Operations
For large-scale changes or migrations, leverage Matrix Loader for efficient field creation and editing, which also serves as documentation throughout the development process.
Learn how fields provide the foundational data model for CPQ configurations—what they are, how they relate to blueprints, rules, and layouts, and how to choose the right type and display for reliable, reusable experiences.
Fields are the smallest unit of the CPQ configuration model and represent a single piece of data (for example, a quantity, a choice, or a note). They power the user experience (what the user sees and edits), the logical model (what rules read and act on), and downstream outputs (what is written to the bill of materials or passed to external systems). Because fields are global in an environment, the same field can be reused across blueprints, rules, and layouts to ensure consistency and reduce duplication.
Fields become part of a specific configuration only when they are associated with a blueprint. When all fields referenced by a rule are associated to a blueprint, the rule is intrinsically related to the blueprint—no extra linking step is required.
How fields fit into the configuration model
- Blueprints: Declare which global fields participate in a configuration. Association enables reuse without cloning.
- Rules: Read field values as inputs and perform actions on fields (determine values, show/hide, validate, filter options, add products).
- Layouts: Place fields visually and select a Component display type to control how the user interacts with each field.
- BOM/product list: field values can be mapped to product attribution or extended properties for downstream processing.
Field scope and life cycle
- Create: Define the field type, name, and unique variable name (global identifier).
- Associate: Add the field to one or more blueprints to make it available in those configurations.
- Place Display: Choose the appropriate Component display type in a layout (for example, grid, visual picker, slider, read-only).
- Orchestrate: Apply rules to read or set field values, control visibility, present messages, and drive product actions.
Choosing the right field type
- Text: Free-form string input (up to 2000 characters), with optional length constraints and default.
- Number: Numeric input with optional min/max; layout-level options can enforce step or precision and formatting (currency/percent/read-only currency).
- Boolean: True/False with customizable labels and default state.
- Picklist (single or multi-select): Constrained choices with definable options, defaults, and picklist extensions for rich, columnar option data and implicit filtering.
- Product Picker: A picker specialized for products that can add items to the BOM and map additional data to Product List fields—often removing the need for separate rules.
- Sets: Tabular collections where each row’s subfields interact row-locally (ideal for calendar-like or line-item scenarios).
Data model vs. display model
The field type defines the data model and specifies what values are valid. The Component display type defines how users interact with the field in a layout (for example, radio, menu, or grid). A single field can be rendered differently across layouts while preserving a consistent data model.
- Number: shown as number input, number-with-submit, slider, read-only text/currency, or formatted number.
- Picklist: shown as traditional menu, vertical radio buttons or check boxes, visual tiles, or grid (with picklist extension columns).
- Product Picker: shown as a grid or visual tile experience with subfields and aggregates.
Association and reuse
Because fields are global, reuse is the default. Associate a field with any blueprint that needs it; the field is then available to the blueprint’s layouts and rules. If all referenced fields in a rule are associated with the blueprint, the rule is automatically considered related to the blueprint.
This model avoids cloning, reduces drift, and simplifies maintenance across products and experiences.
Governance and naming
- Variable names: Use clear, stable, names (with words separated by underscores, as in shipping_method) to make rule scripts expressive and durable.
- Descriptions: Document intent and valid ranges (minimum and maximum, semantic meaning) to aid future reuse.
- Defaults: Set only when the business logic expects a starting state; otherwise, let rules determine values contextually.
Accessibility and internationalization
- Prefer display types that make choices obvious (radios/tiles) when option sets are small.
- Provide human-readable labels and help text; use read-only text with Markdown for structured guidance.
- Use layout-level formatting for numbers and currency to respect locale conventions.
Performance and reliability tips
- Choose the simplest field type that satisfies the requirement. Fewer rules and validations mean faster run times.
- Use picklist extensions or product pickers to encapsulate rich option data and reduce rule count.
- Reserve “always-on” determination rules for true system defaults; prefer contextual conditions elsewhere.
When to use bulk operations
For larger changes or environment migrations, use Matrix Loader to bulk-create and edit fields and field options. The spreadsheet artifact doubles as documentation and accelerates flow from dev to test to production.