IV Foro Tecnológico de los OCEX AUTOMATIZACIÓN DE FICHEROS EN ACL: Importación a través de script José Manuel Borrero Ferreira ([email protected]) Valencia, febrero de 2011 IV Foro Tecnológico de los OCEX Iniciamos un proyecto de ACL. 1 IV Foro Tecnológico de los OCEX Pinchamos en cancelar para salir del asistente. IV Foro Tecnológico de los OCEX Incluimos el script principal. 2 IV Foro Tecnológico de los OCEX En este momento vamos a incorporar datos al script primario desde un repositorio común. IV Foro Tecnológico de los OCEX Una vez incluida toda la información a realizar, guardamos y ejecutamos. 3 IV Foro Tecnológico de los OCEX Se inicia el proceso de importación desde los ficheros de origen. IV Foro Tecnológico de los OCEX Continúa con el proceso de incorporación del siguiente fichero de origen después de crear la 1ª tabla ya parametrizada. 4 IV Foro Tecnológico de los OCEX Se ejecutan sucesivamente hasta la finalización del script. IV Foro Tecnológico de los OCEX Al final de la ejecución del script, nuestro proyecto queda conformado con los parámetros del formato de tabla 5 IV Foro Tecnológico de los OCEX Esto es la importación del fichero y su posterior definición con respecto al documento externo con cada una de las definiciones de campo IV Foro Tecnológico de los OCEX Esta nomenclatura se utiliza para los ficheros que ACL toma como “Otro formato de archivo”. La sintaxis a la que corresponde el fichero a importar es la siguiente: Nombre del formato de tabla Fichero de salida con extensión *.fil IMPORT DELIMITED TO _009_MATCORR_1T "_009_MATCORR_1T.fil" FROM "\\PDC1\COMUN\JOSE\PROYECTO_ACL\2009_MATCORR_1T.TXT" 0 SEPARATOR "" QUALIFIER NONE CONSECUTIVE STARTLINE 2 FIELD "Esta_tabla_No_se_utiliza" C AT 1 DEC 0 WID 402 PIC "" AS "" Ruta del archivo a importar, si éste no se encuentra en el directorio predeterminado. DELIMITED: aún no siendo un fichero delimitado por algún separador, la incorporación del formato de tabla es la más adecuada. SEPARATOR :Especifica el separador, también conocido como delimitador. Para conformar la tabla, en nuestro ejemplo es ninguno, tal y como indican las comillas dobles. Éste indica si la importación es de server o directa y puede tener 2 valores, “0” y “1” QUALIFIER :Especifica un calificador de texto. Enciérrelo entre comillas dobles. Para especificar las comillas dobles como calificador de texto, encierre las comillas dobles en comillas simples. En nuestro ejemplo es ninguno, tal y como indicamos con el parámetro NONE. STARTLINE :Especifica la línea en la que comienzan los datos. Por ejemplo, si las primeras cuatro líneas contienen información de encabezado que usted no desea, especifique que los datos comienzan en la línea 5. En nuestro ejemplo el parámetro es “2”, para comenzar a leer desde la segunda línea del fichero. 6 IV Foro Tecnológico de los OCEX Abrimos la tabla anteriormente definida y comenzamos a definir los campos y sus atributos. OPEN _009_MATCORR_1T DEFINE FIELD NumPropuesta ASCII 1 8 DEFINE FIELD TipoNumeracion ASCII 9 1 DEFINE FIELD NumDocumento ASCII 10 8 DEFINE FIELD NumLinea ASCII 18 4 DEFINE FIELD TipoDocumento ASCII 22 5 DEFINE FIELD Tercero ASCII 27 13 DEFINE FIELD Sustituto ASCII 40 13 DEFINE FIELD FechaPropuesta DATE 53 8 PIC "AAAAMMDD" DEFINE FIELD FechaContabiliz DATE 61 8 PIC "AAAAMMDD" DEFINE FIELD FechaOrdenacion DATE 69 8 PIC "AAAAMMDD" DEFINE FIELD FechaSirvaseP DATE 77 8 PIC "AAAAMMDD" DEFINE FIELD FechaMaterializaP DATE 85 8 PIC "AAAAMMDD" DEFINE FIELD AgrupacionPresu ASCII 93 1 DEFINE FIELD TipoPresupuesto ASCII 94 1 DEFINE FIELD Seccion ASCII 95 2 DELETE REPORT Vista_predeterminada DEFINE VIEW VISTA_DE_PRUEBAS1 OK DEFINE COLUMN VISTA_DE_PRUEBAS1 NumPropuesta NumPropuesta WIDTH 8 POSITION 1 DEFINE COLUMN VISTA_DE_PRUEBAS1 TipoNumeracion TipoNumeracion WIDTH 2 POSITION 2 DEFINE COLUMN VISTA_DE_PRUEBAS1 NumDocumento NumDocumento WIDTH 10 POSITION 3 DEFINE COLUMN VISTA_DE_PRUEBAS1 NumLinea NumLinea WIDTH 6 POSITION 4 DEFINE COLUMN VISTA_DE_PRUEBAS1 TipoDocumento TipoDocumento WIDTH 7 POSITION 5 DEFINE COLUMN VISTA_DE_PRUEBAS1 Tercero Tercero WIDTH 15 POSITION 6 DEFINE COLUMN VISTA_DE_PRUEBAS1 Sustituto Sustituto WIDTH 15 POSITION 7 DEFINE COLUMN VISTA_DE_PRUEBAS1 FechaPropuesta FechaPropuesta WIDTH 10 POSITION 8 DEFINE COLUMN VISTA_DE_PRUEBAS1 FechaContabiliz FechaContabiliz WIDTH 10 POSITION 9 DEFINE COLUMN VISTA_DE_PRUEBAS1 FechaOrdenacion FechaOrdenacion WIDTH 10 POSITION 10 DEFINE COLUMN VISTA_DE_PRUEBAS1 FechaSirvaseP FechaSirvaseP WIDTH 10 POSITION 11 DEFINE COLUMN VISTA_DE_PRUEBAS1 FechaMaterializaP FechaMaterializaP WIDTH 10 POSITION 12 DEFINE COLUMN VISTA_DE_PRUEBAS1 AgrupacionPresu AgrupacionPresu WIDTH 3 POSITION 13 DEFINE COLUMN VISTA_DE_PRUEBAS1 TipoPresupuesto TipoPresupuesto WIDTH 3 POSITION 14 DEFINE COLUMN VISTA_DE_PRUEBAS1 Sección Sección WIDTH 4 POSITION 15 DEFINE COLUMN VISTA_DE_PRUEBAS1 Organismo Organismo WIDTH 4 POSITION 16 DEFINE COLUMN VISTA_DE_PRUEBAS1 Servicio Servicio WIDTH 4 POSITION 17 IV Foro Tecnológico de los OCEX Los parámetros de datos de origen para IMPORT incluyen ODBC, PRINT, PDF, XML, EXCEL, ACCESS y DELIMITED. Debe importar los datos externos una sola vez. A continuación, puede utilizar el comando REFRESH para actualizar la tabla desde los datos de origen. Tipo de datos Letra A B C D El F G H I J K L M ACL BINARY (binario) CARÁCTER DATE EBCDIC FLOAT (flotante) ACCPAC No se utiliza IBMFLOAT No se utiliza UNSIGNED LÓGICOS No se utiliza N O P Q R S T V W X S Z PRINT No se utiliza PACKED (compactado) BASIC MICRO CUSTOM PCASCII VAXFLOAT No se utiliza NUMERIC (numérico) UNISYS ZONED (zonado) 7