16.20 - C Constant/Variable Mode Table Function With Dynamic Result Row Specification - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQL External Routine Programming

Advanced SQL Engine
Teradata Database
Release Number
Release Date
April 2020
Content Type
Programming Reference
Publication ID
English (United States)

This example is similar to the preceding example, C Constant/Variable Mode Table Function, and shows the C code for a table function that supports both TBL_MODE_CONST and the TBL_MODE_VARY modes. The TBL_MODE_CONST is very simple in that any one AMP will extract the data out of the text string that is passed in.

The table function can return a maximum of four columns, as specified by the RETURNS TABLE VARYING COLUMNS clause in the REPLACE FUNCTION statement.

Each output parameter in the table function parameter list is declared as a void pointer because the actual data types of the result row arguments are unknown until function invocation.

During execution, the table function calls the FNC_TblGetColDef library function to get the actual number and data types of the result row arguments.