Skip to main content
Version: 3.0

SAP HANA Nodes

Read from SAP HANA, change data with any statement, and bulk-load pipeline rows into HANA column tables.

Operations
Query · Execute · Write
Limits
50,000 rows or 40 MB per query

The SAP HANA nodes run the functions of an SAP HANA connection. Each node runs one function type.

Configuration Quick Reference​

FieldWhat you chooseDetails
ParametersConnection, Function, Function Parameters, Timeout OverrideSelect the connection profile, function, configure function parameters with expression support, and optionally override timeout.
SettingsDescription, Timeout (seconds), Retry on Timeout, Retry on Fail, On ErrorNode description, maximum execution time, retry behavior on timeout or failure, and error handling strategy. All execution settings default to pipeline-level values.

Node Types​

NodePurposeCommon Use Cases
QueryRun a SELECT and return rowsProduction orders, master data lookups, KPIs from HANA views
ExecuteRun DML, DDL, UPSERT or CALL, return rows affectedKeeping a state table current, archiving, calling procedures
WriteLoad pipeline rows into a tableMachine events, quality results, sensor history

SAP HANA Query nodeSAP HANA Query node

SAP HANA Query Node

SAP HANA Query Node​

Run a SELECT and return its rows as structured data. Rows stream in up to the result limits; HANA decimals keep every digit, and SAP keys keep their leading zeros.

Supported Function Types:

Function NamePurposeCommon Use Cases
QueryRun parameterized SELECT queries against SAP HANAOrder and material lookups, reporting, KPIs

SAP HANA Execute nodeSAP HANA Execute node

SAP HANA Execute Node

SAP HANA Execute Node​

Run a statement that changes data or schema (INSERT, UPDATE, DELETE, UPSERT, MERGE, CREATE, ALTER, DROP or a procedure CALL) and return rowsAffected.

Supported Function Types:

Function NamePurposeCommon Use Cases
ExecuteRun any statement or procedure callUPSERT … WITH PRIMARY KEY for exactly-once rows, cleanup, schema changes

SAP HANA Write nodeSAP HANA Write node

SAP HANA Write Node

SAP HANA Write Node​

Load pipeline rows into a HANA table, matching fields to columns, in batches of Batch Size rows: one round trip and one transaction per batch, so a batch HANA refuses leaves none of its rows. With Create Table If Not Exists on, it creates a missing column table first; with Allow Schema Evolution on, it adds a column for a field the table lacks. See the Write Function for its fields.

Supported Function Types:

Function NamePurposeCommon Use Cases
WriteLoad structured data into an SAP HANA tableEvent and sensor ingestion, auto-created tables

Output​

Every SAP HANA node delivers its data under result, and execution facts (success, functionId, durationMs, timestamp) under _metadata:

NodeExpressionDescription
Query$node["Name"].result.rowsThe result rows, one object per row keyed by column name as HANA reports it (unquoted names are upper case), up to the result limits: the 50,000-row cap and the 40 MB size budget by default. $node["Name"].result.rows[0].<column> reads a value
$node["Name"]._metadata.truncatedtrue when the query hit a result limit and rows holds only what fit
$node["Name"]._metadata.truncatedByWhich limit cut the result: rows or bytes. Present only when truncated is true
$node["Name"].result.rowCountHow many rows were delivered, the same as result.rows.length
Execute$node["Name"].result.rowsAffectedRows the statement affected, as HANA reports it
Write$node["Name"].result.rowsInsertedRows inserted across every batch of this execution

A Query also delivers $node["Name"]._metadata.driver (hdb), $node["Name"]._metadata.query (the SQL that ran), _metadata.truncated and, when a limit tripped, _metadata.truncatedBy. An Execute delivers _metadata.driver and _metadata.query. A Write delivers _metadata.driver, _metadata.table, _metadata.batchSize, _metadata.totalRows and _metadata.matchedColumns, plus _metadata.skippedFields or _metadata.schemaEvolution when they apply; when it created the table it delivers _metadata.tableCreated and _metadata.columns instead of matchedColumns.

Check truncated before you aggregate

A query stopped at the row limit returns a shorter rows array that looks exactly like a complete result. Branch on _metadata.truncated, or narrow the query with WHERE and LIMIT, rather than assuming the read was complete.