Altova MapForce 2024 Professional Edition

Procesar varios archivos de entrada o salida

Inicio Anterior Inicio Siguiente

MapForce puede configurarse para procesar varios archivos simultáneamente (p. ej. todos los archivos de un directorio) cuando se ejecute la asignación. Gracias a esta característica podrá:

 

Suministrar a la asignación una lista de archivos de entrada que se deben procesar.

Generar como resultado de la asignación una lista de archivos en lugar de un solo archivo de salida.

Generar una aplicación de asignación de datos donde el nombre de los archivos de entrada y salida se definen en tiempo de ejecución.

Pasar un grupo de archivos a otro formato.

Dividir un archivo (o base de datos) de gran tamaño en varios archivos más pequeños.

Agrupar varios archivos diferentes en un solo archivo (o cargarlos en una base de datos).

 

Hay dos maneras de configurar componentes de MapForce para que procese varios archivos a la vez:

 

Suministrando la ruta de acceso de los archivos de entrada/salida pertinentes por medio de caracteres de comodín (en lugar de dar un nombre de archivo fijo) en la configuración del componente (véase Cambiar configuración de los componentes). Es decir, puede introducir los comodines * y ? en el cuadro de diálogo "Configuración del componente" para que MapForce resuelva la ruta de acceso correspondiente cuando se ejecute la asignación.

Conectando el nodo raíz de un componente con una secuencia que suministra la ruta de acceso de forma dinámica (p. ej. el resultado de la función replace-fileext). Cuando se ejecute la asignación, MapForce leerá de forma dinámica todos los archivos de entrada o generará todos los archivos de salida de forma dinámica.

 

Dependiendo de cual sea el objetivo del proyecto, podrá usar una de estas técnicas o ambas en la misma asignación. Sin embargo, no tiene sentido utilizar ambas técnicas al mismo tiempo en el mismo componente. Para indicar qué técnica desea usar para cada componente haga clic en el botón btn_file o btn_file_stringdisponible junto al nodo raíz de cada componente. Estos son los comportamientos que puede especificar con estos botones:

 

Usar nombres de archivo de la configuración del componente

Si el componente debe procesar un archivo de instancia o varios, esta opción ordena el procesamiento de los nombres de archivo definidos en el cuadro de diálogo "Configuración del componente".

 

Si selecciona esta opción, el nodo raíz no tiene un conector de entrada porque no es relevante.

file_default

 

Si todavía no ha especificado archivos de entrada/salida en el cuadro de diálogo "Configuración del componente", el nombre del nodo raíz será Archivo: (predeterminado). De lo contrario el nodo raíz muestra el nombre del archivo de entrada seguido de un punto y coma más el nombre del archivo de salida.

 

Si el nombre de la entrada es idéntico al archivo de salida, entonces aparece como nombre del nodo raíz.

file_name_root

 

Esta opción y la opción Usar nombres de archivo dinámicos dados por la asignación se excluyen mutuamente.

Usar nombres de archivo dinámicos dados por la asignación

Esta opción ordena el procesamiento de los nombres de archivo definidos en el área de asignación al conectar valores con el nodo raíz del componente.

 

Si selecciona esta opción, el nodo raíz recibe un conector de entrada con el que se pueden conectar valores que suministren de forma dinámica los nombres de archivo que se deben procesar durante la ejecución de la asignación. Si también definió nombres de archivo en el cuadro de diálogo "Configuración del componente", dichos valores se omitirán.

 

Cuando se selecciona esta opción, el nombre del nodo raíz aparece como Archivo: <dinámico>.

file_name_dynamic

 

Esta opción y la opción Usar nombres de archivo de la configuración del componente se excluyen mutuamente.

Redistribuir cadenas en XML, Redistribuir cadenas en JSON, Redistribuir cadenas en CSV, Redistribuir cadenas en FLF, Redistribuir cadenas en EDI

Si se activa, esta opción permite al componente aceptar un valor de cadena como entrada del nodo raíz y convertirlo en una estructura XML, JSON, CSV, FLF o EDI respectivamente. Consulte el apartado Analizar y serializar cadenas de texto para obtener más información.

Serializar XML en cadenas, Serializar JSON en cadenas, Serializar CSV en cadenas, Serializar FLF en cadenas, Serializar EDI en cadenas

Si se activa, esta opción permite al componente aceptar una estructura como entrada y convertirla en cadenas. La estructura de entrada puede ser XML, JSON, CSV, FLF o EDI respectivamente. Consulte el apartado Analizar y serializar cadenas de texto para obtener más información.

 

Estos son los componentes donde se pueden definir varios archivos de entrada/salida:

 

Archivos XML

Archivos de texto (archivos CSV*, FLF* y FlexText**)

Documentos EDI**

Hojas de cálculo Excel**

Documentos XBRL**

Archivos JSON**

Archivos Protocol Buffers**

 

* Con MapForce Professional Edition

** Con MapForce Enterprise Edition

 

En esta tabla puede ver la compatibilidad de cada lenguaje de MapForce con archivos de entrada/salida dinámicos y con comodines:

 

Lenguaje de destino

Nombre de archivo de entrada dinámico

Nombre de archivo de entrada admite comodines

Nombre de archivo de salida dinámico

XSLT 1.0

*

Incompatible con XSLT 1.0

Incompatible con XSLT 1.0

XSLT 2.0

*

*(1)

*

XSLT 3.0

*

*(1)

*

XQuery

*

*(1)

Incompatible con XQuery

C++

*

*

*

C#

*

*

*

Java

*

*

*

BUILT-IN (motor integrado)

*

*

*

 

Leyenda:

 

*

Compatible

(1)

XSLT 2.0, XSLT 3.0 y XQuery utilizan la función fn:collection. La implementación en los motores XSLT 2.0, XSLT 3.0 y XQuery de Altova resuelve comodines. Los demás motores pueden comportarse de modo distinto.

© 2017-2023 Altova GmbH