16.20 - USING-data-count - Teradata Tools and Utilities

Teradata® Call-Level Interface Version 2 Reference for Mainframe-Attached Systems

prodname
Teradata Tools and Utilities
vrm_release
16.20
created_date
September 2019
category
Programming Reference
featnum
B035-2417-108K

USING-data-count is a four-byte field that when not zero indicates USING-data-pointer-vector addresses a vector of pointers to areas containing data that is associated with the USING clause in the request string. The number of pointers in the vector is the value of USING-data-count. If Varying-length-request is not specified, USING-data-length-vector addresses a vector of four-byte values containing the length of each area of using-data. If Varying-length-request is specified, USING-data-length-vector is unused.

A USING-data-count of one (along with the associated data and length) is functionally equivalent to the existing USING-data-pointer (along with the associated length). A USING-data-count greater than one will be rejected if Teradata Database does not support Array Operations. The DBCHQE Array-operations query may be used to ascertain whether Teradata Database supports this feature. To determine the maximum number of array elements that will fit in a message, use the SQL-limits Query ‘QEPISQL’ field QERSQLIC.

USING-data-count exists only when DBCHINI had been called for a DBCAREA with Total-length set to at least 640 (that is, the returned DBCAREA Level value is at least 1). For a smaller DBCAREA, USING-data-count is ignored.

In this language... The variable name for USING-data-count is...
COBOL DBRIUDC
PL/I DBRIUDC
C, C++ dbriUDC
IBM Assembler DBRIUDC
This routine... Does this for USING-data-count...
DBCHINI writes
DBCHCL reads (RSUP; IWPF; IRQ)
USING-data-count is used by... To...
applications write

Before calling DBCHCL for the Initiate Request function when the request contains a USING modifier, the application must provide the associated using-data. Varying-length-request applies as follows:

When Varying-length-request is set to this value... Then...
Y USING-data-length-vector is ignored and each data area addressed by USING-data-pointer-vector must point to the two-byte area containing the length of using-data, which is followed by the actual using-data.
N the entries of USING-data-length-vector specify the length for each area.

See Varying-length-request.

Since CLIv2 does not parse the request string, it is the application's responsibility to set any USING-data appropriately.