Teradata TPump/INMOD Interface
This section discusses the Teradata TPump/INMOD Interface for different client operating
systems:
Teradata TPump/INMOD Interface on IBM Client‑based Systems
The use of an INMOD is specified on the IMPORT command. On IBM client‑based systems,
Teradata Database interfaces with INMODs written in C.
Examples of these INMODs are presented in Appendix C: “INMOD and Notify Exit Routine Examples”. An optional parms string to be passed to the INMOD may also be specified on the IMPORT command. Teradata
TPump imposes the following syntax rules for this string:
The parms string may include one or more character strings, each delimited on either end by
apostrophes or quotation marks. The maximum size of the parms string is 1 KB.
If a FastLoad INMOD is used, the parms string of the IMPORT command must be FDLINMOD.
The parms string passed to an INMOD includes the parentheses used to specify the parm. Thus, if the IMPORT specifies USING ('5'), the entire expression ('5') is passed
to the INMOD.
Parentheses within delimited character strings or comments have the same syntactical
significance as alphabetic characters.
In the parms string that Teradata TPump passes to the INMOD routine, each comment is replaced
by a single blank character.
In the parms string that Teradata TPump passes to the INMOD routine, each consecutive sequence
of whitespace characters, such as blank, tab, and so on, that appears outside of delimited
strings, is replaced by a single blank character.
FDLINMOD is used for compatibility by pointing to a data structure that is the same
for BDL and FDL INMODs.
Teradata TPump/INMOD Interface on UNIX Systems
On UNIX system‑based client platforms, Teradata TPump is written in C and, therefore,
the INMOD procedure is dynamically loaded at runtime, rather than link‑edited into
the Teradata TPump module or operated as a separate executable program.
The runtime loader requires that the INMOD module be compiled and linked as a shared
object, and that the entry point for the procedure be named _dynamn.
The use of an INMOD is specified in the IMPORT command. On UNIX systems, Teradata
Database interfaces only with INMODs written in C. An example of a C INMOD is presented
in Appendix C: “INMOD and Notify Exit Routine Examples”. An optional parms string to be passed to the INMOD may also be specified on the IMPORT command. Teradata
TPump imposes these syntax rules:
One INMOD is allowed for each IMPORT command. Multiple IMPORTs are allowed; these
may use the same or different INMODs.
The input filename parameter specified on the IMPORT command must be the fully qualified UNIX pathname
for the input file.
The INMOD filename parameter specified on the IMPORT command must be the fully qualified UNIX pathname
of the INMOD shared object file.
The parms string may include one or more character strings, each delimited on either end by
an apostrophe, or delimited on either end by a quotation mark. The maximum size of
the parms string is 1k bytes.
If a FastLoad INMOD is used, the parms string of the IMPORT command must be “FDLINMOD”.
The parms string as a whole must be enclosed in parentheses.
Parentheses within delimited character strings or comments have the same syntactical
significance as alphabetic characters.
In the parms string that Teradata TPump passes to the INMOD routine, each comment is replaced
by a single blank character.
In the parms string that Teradata TPump passes to the INMOD routine, each consecutive sequence
of whitespace characters, such as blank, tab, and so on, that appears outside of delimited
strings, is replaced by a single blank character.
FDLINMOD is used for compatibility by pointing to a data structure that is the same
for FDL INMODs.
Teradata TPump/INMOD Interface on Windows Systems
On Windows client platforms, Teradata TPump is written in C and, therefore, the INMOD
procedure is dynamically loaded at runtime, rather than link‑edited into the Teradata
TPump module or run as a separate executable program.
The runtime loader requires that the INMOD module be compiled and linked as a Dynamic‑Link
Library (DLL) file, and that the point for the procedure be named _dynamn.
The use of an INMOD is specified in the IMPORT command. On systems, Teradata Database
interfaces only with written in C. An optional parms string to be passed to INMOD may also be specified on the IMPORT command. Teradata
TPump imposes the following syntax rules:
One INMOD is allowed for each IMPORT command. Multiple are allowed; these may use
the same or different INMODs.
The input filename parameter specified on the IMPORT command must be the fully qualified
Windows pathname for the input file.
The INMOD filename parameter specified on the IMPORT command must be the fully qualified
Windows pathname of the INMOD DLL file.
The parms string may include one or more character strings, each delimited on either end by
an apostrophe, or delimited on either end by a quotation mark. The maximum size of
the parms string is 1k bytes.
If a FastLoad INMOD is used, the parms string of the IMPORT command must be “FDLINMOD”.
The parms string as a whole must be enclosed in parentheses.
Parentheses within delimited character strings or comments have the same syntactical
significance as alphabetic characters.
In the parms string that Teradata TPump passes to the INMOD routine, each comment is replaced
by a single blank character.
In the parms string that Teradata TPump passes to the INMOD routine, each consecutive sequence
of whitespace characters, such as blank, tab, and so on, that appears outside of delimited
strings, is replaced by a single blank character.
FDLINMOD is used for compatibility by pointing to a data structure that is the same
for FDL INMODs.