v26.01: Working with Write Nodes
Write nodes save processed data from upstream nodes to target destinations, completing the data processing pipeline. Write nodes function as terminal nodes in workflows, meaning they only accept input connections and cannot provide output to subsequent nodes.
Available Write Node Types
Data Type |
Description |
|---|---|
Sheet |
Writes data to sheets including standard sheets and multi-section sheets |
|
v26.04: Master Data |
Writes to master data entities such as hierarchies and reference data |
Table |
Writes data to tables within the system |
Remote Table |
Writes data to remote tables in external systems |
Journal |
Writes journal entries for transactional data |
Note: Write nodes only accept input connections and cannot provide output connections to other nodes. They function as terminal nodes, marking the end of data flow paths in the workflow.
Configuration Layout
Write nodes require comprehensive configuration to define output destination, data structure, source mapping, and write behavior.
Layout Definition v26.08:
The Layout Definition specifies the output data structure with specific requirements for each section.
Rows holds dimensions that render as output columns.
Columns is now reserved exclusively for Metrics; dimensions cannot be added to Columns, and Metrics cannot be moved out.
Filters holds dimensions moved out of Rows, each scoping the write to a single leaf member; filtered dimensions are excluded from both the Mapping table and the output.
Note: Metric selection is mandatory regardless of where metrics appear in the layout structure (Rows, Columns, or Filters). Each metric can only be used in one Write node across the entire workflow. The system validates metric uniqueness and displays an error if duplicates are detected.
Field Mapping v26.08:
The Field Mapping section establishes correspondence between input data and output structure. The interface displays a two-column view with Source Fields from the input node on the left and output Fields from the output layout on the right.
Mapping Requirements:
- All output fields must be mapped to source fields.
- Source and output data types must be compatible.
- The system prevents incompatible mappings (string to number, date to string, etc.).
- When source has more columns than output: System aggregates data automatically.
- When output has more columns than source: User must modify layout to move extra dimensions to filters.
- For sheet targets: Source columns must be unique (no duplicate records requiring aggregation of non-numeric fields).
Write Mode Options
Write Mode determines how the system handles existing data in the target destination.
Write Mode |
Behavior |
Use Case |
|---|---|---|
Overwrite |
Clears existing data based on specified criteria before writing new data. When selected, the Set Overwrite based on section appears in the node's configuration panel. Configure it using one of the following:
|
Full refresh of data where previous values should be replaced. |
Merge |
Updates existing records where dimension combinations match exactly. Inserts new records where no match exists. Functions identically to file upload merge behavior. |
Incremental updates where some records are updated and new records are added. |
Append |
Adds records without clearing existing data. Primarily applicable for table targets (queue-based operations). Not relevant for sheet targets. |
Adding new records to existing data without modifications. |
v26.04: Configuring Master Data node
The Master Data node writes data directly to master data tables within the workspace.
To configure a Master Data node:
Click + Add Node from the Level 2 header. The Add Node dialog opens.
Select Write from the left panel.
Select Master Data from the right panel. The node appears on the canvas and the configuration side panel opens.
-
Fill in the required fields from the configuration panel:
Parameter
Description
Name
Unique identifier. Defaults to Master Data_[n].
Target
Select a master data table using the inline selector (Click to Select).
Input
Select an upstream node (Read or Transform) using the inline selector.
Mapping List
Map source columns to target table columns.
v26.05:
Settings (Optional)
Configure Precedent and Subsequent nodes to control node execution order.
See Working with Node Settings for more details.
Select Publish in the Level 2 header to save the configuration.
Note: The Master Data node supports insert and update operations, automated data synchronization, and dimension member management.
Configuring Sheet Node
Sheet nodes save processed data to sheets within the workspace.
To configure a Sheet node:
Click + Add Node from the Level 2 header. The Add Node dialog opens.
Select Write from the left panel.
Select Sheet from the right panel. The node appears on the canvas and the configuration side panel opens.
-
Fill in the required fields from the configuration panel:
Parameter
Description
Name
Unique identifier. Defaults to Sheet Write_[n].
Target
Select a sheet using the inline selector (Click to Select).
Input
Select an upstream node (Read or Transform) using the inline selector.
Layout
Configure Rows, Columns, and Filters sections.
Mapping List
Map target fields to source fields.
Write Option
Select Overwrite, Merge, or Append. Determines how the system handles existing data in the target.
Set Overwrite based on
For Overwrite mode only. Configure Fixed Member, Source Data, or Context Variable.
v26.05: Settings (Optional)
Configure Precedent and Subsequent nodes to control node execution order.
See Working with Node Settings for more details.
(Optional) Select Test to validate the configuration without committing changes, or Preview to view the data frame that will be written.
Select Publish in the Level 2 header to save the configuration.
Note: Sheet node is the only enabled Write data type for production use. Metric selection is mandatory in the layout structure. Each metric can be used in only one Write node across the entire workflow.
v26.07: Configuring Table Node
Table nodes write processed data to transaction tables within the system. This completes full write-path coverage —Sheets, Master Data, and Transaction Tables can all be write destinations within a single workflow.
To configure a Table node:
Click + Add Node from the Level 2 header. The Add Node dialog opens.
Select Write from the left panel.
Select Table from the right panel. The node appears on the canvas and the configuration side panel opens.
-
Fill in the required fields from the configuration panel:
Parameter
Description
Name
Unique identifier. Defaults to Table_[n].
Target Table
Select a transaction table using the inline selector (Click to select). Selecting a target repopulates the Mapping and updates duplicate-handling options.
Input
Select an upstream node (Read, SQL, or Mapping) using the inline selector. Accepts one input. Changing the input repopulates the source columns in the Mapping.
Mapping
Map source columns from the input node to target dimensions and metrics. Each row shows a target field; select a source field, Ignore (local dimensions and metrics only), or Fixed Value from the dropdown. At least one metric must be mapped to a source field.
Handle Duplicate Records Select the duplicate-handling strategy. Options depend on the target table's duplicate policy.
v26.08: Write Option
Select Overwrite, Merge, or Append. Determines how the system handles existing data in the target.
v26.08: Set Overwrite based on
For Overwrite mode only. Select dimensions from the Update list; use the Filter icon on any global dimension to scope the overwrite to specific members. Settings (Optional)
Configure Precedent and Subsequent nodes to control node execution order. See Working with Node Settings for more details.
Select Publish in the Level 2 header to save the configuration.
The Table node supports write-to-table operations with automatic duplicate handling and full audit logging. Data lineage and row-level transaction details are captured for each write operation.
Note: v26.08:
Write Option availability depends on the target table's duplicate policy. Overwrite is always available and is the default. Merge is available only when duplicates are disabled. Append is available only when duplicates are enabled.
Intelligent Duplicate Handling
When you select a target table, the Table node automatically detects the target's duplicate policy and constrains available duplicate-handling options accordingly. If the target allows duplicates, only the "Insert all records" option is available—all source records write as new. If the target disables duplicates, the node offers only the valid methods: Retain last value (default), Aggregate all records, or Reject duplicate records. This intelligent detection prevents configuration mismatches and ensures the write method always aligns with the target table's policy.
Write Execution with Complete Visibility
During execution, the Table node provides complete transparency into the write operation. An output preview shows the transformed data after the duplicate-handling method is applied, allowing you to verify the result before commit. The audit log records the transaction table name, the duplicate-handling method used, and row counts for each path (written/skipped/aggregated/rejected), enabling you to verify data integrity and troubleshoot write operations. This detailed execution visibility supports compliance requirements and provides confidence in data changes.
v26.08: Overwrite Mode for Transaction Tables
Transaction Tables allow duplicate rows by design. When a workflow runs repeatedly, the Write Transaction Table node without Overwrite mode accumulates duplicate records with each run. Overwrite mode prevents this by clearing the data slice matching the specified dimension key before writing new data, making the workflow idempotent — repeated runs produce identical results without row accumulation.
The overwrite key is defined by the dimensions selected in the Set Overwrite based on section:
A checked global dimension restricts the cleared slice to its selected members. If no members are selected, all members are included.
A checked local dimension resolves to all members and does not narrow the slice.
Dimensions not in the key are treated as wildcards — all their members within the slice are rewritten.
At least one global dimension must be included in the overwrite key. If the key is empty or contains only local dimensions, publish is blocked with the warning "Global dimension required for overwrite."