Informix Error -1373
-1373 The field fieldname is not in the list of fields in the
CONSTRUCT/INPUT statement.The built-in function get_fldbuf() or field_touched() has been called with the field name shown. However, input from that field was not requested in this CONSTRUCT or INPUT statement. As a result, the function cannot return any useful value. Review all uses of these functions, and compare them to the list of fields at the beginning of the statement.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-1373 fires when get_fldbuf() or field_touched() references a field that wasn't included in
the associated CONSTRUCT/INPUT statement's field list — per the official guidance, these
functions can only operate on fields actually declared in that statement.
get_fldbuf()/field_touched()called with a field name absent from the statement's declared field list, per the official guidance — the direct, only cause.
Solutions / Resolution
- Verify that all fields referenced by these functions are explicitly listed in the
corresponding
CONSTRUCT/INPUTstatement, per the official guidance.
Examples
A function call referencing an undeclared field
CONSTRUCT v_where ON order_id, status FROM s_order.*
LET v_touched = field_touched("order_date")
-- -1373: order_date isn't in this CONSTRUCT statement's field list
Corrected
LET v_touched = field_touched("status")
Diagnostic Checks
- Compare the field name passed to
get_fldbuf()/field_touched()against theCONSTRUCT/INPUTstatement's actual field list.
Related Errors / Related Topics
- -1109 — "List and record field counts differ." A related form/statement field-list error, about a count mismatch rather than a specific function call referencing an undeclared field.
get_fldbuf()/field_touched() referenced a field not in the statement's field list — check
the field list.