AIX | HP-UX | Linux | OS/2 | OS/390 | OS/400 | PTX | SUN | Win NT |
X | X | X | X | X | X | X | X | X |
Finalidad
Graba el contenido de una tabla de Net.Data en un archivo de texto.
Formato
@DTWF_WRITE(nombarchivo, transformar, delimitador, tabla, reintento, filas, líneainicio)
@DTWF_WRITE(nombarchivo, transformar, delimitador, tabla, reintento, filas)
@DTWF_WRITE(nombarchivo, transformar, delimitador, tabla, reintento)
@DTWF_WRITE(nombarchivo, transformar, delimitador, tabla)
Parámetros
Tabla 195. Parámetros de DTWF_WRITE
Tipo de datos | Parámetro | Uso | Descripción |
---|---|---|---|
serie | nombarchivo | INOUT | El nombre del archivo en el que se graban los registros de la variable de tabla. Cuando la llamada se complete satisfactoriamente, este parámetro devolverá el nombre de archivo completamente calificado. |
serie | transform | IN | El formato del archivo:
|
serie | delimitador | IN | Serie de caracteres para indicar los extremos de los valores. Este parámetro es sensible a mayúsculas y minúsculas. Se ignora si transform es ASCIITEXT. |
tabla | tabla | IN | La variable de tabla utilizada para exportar filas al archivo.
Para los usuarios que no utilicen OS/400: La longitud máxima de una fila en una tabla FFI es de 16383 caracteres. Este límite incluye un carácter nulo para cada columna de la tabla de macro de Net.Data. |
entero | reintento | IN | El número de veces que ha de efectuarse un reintento en el caso de que no pueda grabarse en el archivo inmediatamente. El valor por omisión es no efectuar ningún reintento. |
entero | filas | IN | El número de filas de la tabla a grabar en el archivo. Un valor de 0 significa que se graban todas las filas de la tabla en el archivo; este es el valor por omisión. |
entero | líneainicio | INOUT | El número de línea del archivo desde la que se ha de iniciar la grabación. Un valor de 1 significa comenzar en la primera línea del archivo; este es el valor por omisión. Si se especifica un valor posterior al final del archivo, se devuelve un error y este parámetro se establece en el número de líneas del archivo. |
Códigos de retorno
Tabla 196. Códigos de retorno de DTWF_WRITE
Código de retorno | Explicación |
---|---|
-1001 | El servidor no ha podido procesar una petición de Net.Data para asignar memoria. |
1001 | Un parámetro de entrada contenía un valor NULL. |
1002 | Un parámetro de entrada contenía un valor de serie que consistía en el carácter de terminación nulo. |
1003 | Se ha transmitido un número incorrecto de parámetros en una llamada de función. |
1004 | Se ha transmitido un parámetro en una llamada de función que debería haber sido una variable de tabla de macro Net.Data, pero era de un tipo de variable diferente. |
1005 | Se ha transmitido un parámetro en una llamada de función que debería haber sido una variable de serie, pero era de un tipo de variable diferente. |
1006 | Se ha transmitido una serie literal en una llamada de función para un parámetro que debería haber sido un parámetro de salida. |
1007 | Un parámetro contiene un valor que no es válido. |
2000 | Una función incorporada de la interfaz de archivo plano no ha podido encontrar el archivo especificado. |
2003 | Una función incorporada de la interfaz de archivo plano no pudo leer una fila de datos en una variable de tabla porque el número de bytes de la fila excedía del número máximo de bytes soportados. |
2004 | Una función incorporada de la interfaz de archivo plano estaba intentando encontrar un archivo, pero ha encontrado una vía de acceso en la variable del archivo de configuración FFI_PATH cuya longitud era superior al número máximo de bytes soportados, que es 4095. |
2005 | Se ha producido una anomalía en una llamada a una función del sistema. |
2006 | Una función incorporada de la interfaz de archivo plano no ha podido acceder al archivo especificado porque lo estaba utilizando éste u otro proceso y no se podía compartir en la modalidad especificada. |
Notas de utilización
Ejemplos
Ejemplo 1:
%DEFINE { myFile = "c:/private/myfile" myTable = %TABLE %} @DTWF_WRITE(myFile, "DELIMITED", ";", myTable)
Ejemplo 2:
%DEFINE { myFile = "c:/private/myfile" myTable = %TABLE %} @DTWF_WRITE(myFile, "ASCIITEXT", ";", myTable, "5000")
Ejemplo 3:
%DEFINE { myFile = "c:/private/myfile" myTable = %TABLE %} @DTWF_WRITE(myFile, "ASCIITEXT", ";", myTable, "5000", "10", "50")