AIX | HP-UX | Linux | OS/2 | OS/390 | OS/400 | PTX | SUN | Win NT |
X | X | X | X | X | X | X | X | X |
Purpose
Reads lines from a text file into a Net.Data table.
Format
@DTWF_READ(filename, transform, delimiter, table, retry, lines, startline, columns)
@DTWF_READ(filename, transform, delimiter, table, retry, lines, startline)
@DTWF_READ(filename, transform, delimiter, table, retry, lines)
@DTWF_READ(filename, transform, delimiter, table, retry)
@DTWF_READ(filename, transform, delimiter, table)
Parameters
Table 178. DTWF_READ Parameters
Data Type | Parameter | Use | Description |
---|---|---|---|
string | filename | INOUT | The name of the file whose records are read into a table variable. On successful completion of the call, this parameter returns the fully qualified file name. |
string | transform | IN | The format of the file:
|
string | delimiter | IN | A character string to indicate the ends of values. This parameter is case sensitive. Ignored if transform is ASCIITEXT. |
table | table | OUT | The table variable into which the file records are read.
For non-OS/400 users: The maximum length of a row in an FFI table is 16383 characters. This limit includes a null character for each column in the Net.Data macro table. |
integer | retry | IN | The number of times to retry if the file cannot be read immediately. The default is not to retry. |
integer | lines | INOUT | The number of lines in the file to read into the table. A value of 0 means to read to the end of the file or until the table is full; this is the default. Upon successful completion of this funciton call, the number of rows in the resulting table is returned. |
integer | startline | IN | The line in the file from which to start reading. The default is to start reading at the first line. |
integer | columns | OUT | Returns the number of columns in the table. |
Return Codes
Table 179. DTWF_READ Return Codes
Return Code | Explanation |
---|---|
-1001 | The server could not process a Net.Data request to allocate memory. |
1001 | An input parameter contained a NULL value. |
1002 | An input parameter contained a string value which consisted of the null-terminating character. |
1003 | An incorrect number of parameters were passed on a function call. |
1004 | A parameter passed on a function call, required to be a Net.Data macro table variable, was of a different variable type. |
1005 | A parameter passed on a function call, required to be a string variable, was of a different variable type. |
1006 | A literal string was passed on a function call for a parameter which was required to be an output parameter. |
1007 | A parameter contains a value which is not valid. |
1010 | Data was written to the table until it was full, and the remainder of the data was discarded. |
2000 | A flat file interface built-in function could not find the specified file. |
2003 | A flat file interface built-in function could not read a row of data into a table variable because the number of bytes in the row exceeded the maximum supported number of bytes. |
2004 | A flat file interface built-in function was attempting to find a file, but encountered a path in the FFI_PATH configuration file variable that was longer than the maximum supported number of bytes, which is 4095. |
2005 | A call to a system function failed. |
2006 | A flat file interface built-in function could not access the specified file because it was in use by this or another process and could not be shared in the specified mode. |
Examples
Example 1:
%DEFINE { myFile = "c:/private/myfile" myTable = %TABLE myWait = "1000" %} @DTWF_READ(myFile, "DELIMITED", ";", myTable, myWait)
Example 2:
%DEFINE { myFile = "c:/private/myfile" myTable = %TABLE myWait = "0" myRows = "0" myStartrow = "1" myColumns = "" %} @DTWF_READ(myFile, "DELIMITED", ";", myTable, myWait, myRows, myStartrow, myColumns)
Example 3:
%DEFINE { myFile = "c:/private/myfile" myTable = %TABLE %} @DTWF_READ(myFile, "ASCIITEXT", ";", myTable) @DTW_TB_TABLE(myTable,"BORDER","")