Ejemplo de agrupación
Acerca de esta tarea
Este ejemplo muestra un esquema de archivo sin formato que analiza un conjunto de registros repetitivo mediante grupos. Cada conjunto de registros repetitivo contiene registros de diferente tipo, como se muestra en los siguientes datos de archivo sin formato de entrada de ejemplo:

En estos datos de ejemplo, el primer, el segundo y el tercer registro del conjunto repetitivo tienen un tipo distinto. Además, este ejemplo muestra cómo se utilizan los tipos almacenados en la pestaña Biblioteca de tipos en un esquema de archivo sin formato. En este ejemplo, verá y probará un esquema de archivo sin formato en lugar de crear uno desde cero.
Para abrir, ver y probar el esquema de archivo sin formato utilizado para analizar los datos de entrada mostrados en la Figura 1:
Procedimiento
- En este ejemplo, el esquema de archivo sin formato ya se ha
creado en el proyecto FlatFileSchemasExample. Para ver el esquema de archivo sin formato, primero debe extraer el proyecto FlatFileSchemasExample:
- Busque la Vía de acceso de creación predeterminada definida en Studio: el directorio en el que se crean los nuevos proyectos. Para ver
la Vía de acceso de creación predeterminada, seleccione Archivo > Preferencias...
en el menú de la barra de herramientas de Studio. Se abrirá el diálogo Preferencias. La Vía de acceso de creación predeterminada actual se muestra al final del panel. De forma predeterminada, la Vía de acceso de creación predeterminada se ubica en el siguiente directorio:
C:\Documents and Settings\myLogin\My Documents
Donde myLogin representa su nombre de inicio de sesión de Windows.
- Localice el archivo FlatFileSchemasExample.zip que
contiene los archivos que conforman el proyecto FlatFileSchemasExample.
Si ha aceptado los valores predeterminados durante la
instalación de Studio, este archivo estará ubicado en el
siguiente directorio:
C:\Archivos de programa\IBM\WebSphere Cast Iron Studio 3.X\Samples\FlatFileSchema
- Copie el archivo FlatFileSchemasExample.zip desde el directorio FlatFileSchema en el de Vía de acceso de creación predeterminada.
- Extraiga el contenido del archivo FlatFileSchemasExample.zip en el directorio Vía de acceso de creación predeterminada.
- Busque la Vía de acceso de creación predeterminada definida en Studio: el directorio en el que se crean los nuevos proyectos. Para ver
la Vía de acceso de creación predeterminada, seleccione Archivo > Preferencias...
en el menú de la barra de herramientas de Studio. Se abrirá el diálogo Preferencias. La Vía de acceso de creación predeterminada actual se muestra al final del panel. De forma predeterminada, la Vía de acceso de creación predeterminada se ubica en el siguiente directorio:
- Abra el proyecto FlatFileSchemasExample:
- Seleccione Archivo > Abrir proyecto... en el menú de la barra de herramientas de Studio. Se mostrará el recuadro de diálogo Abrir.
- Localice y abra el directorio FlatFileSchemasExample.
- Pulse el archivo FlatFileSchemasExample.sp3 y, a continuación, en Abrir. Se mostrará el proyecto.
- Abra el esquema de archivo sin formato vegPO preconstruido. En la carpeta Esquemas de archivo sin formato del separador Proyecto, pulse dos veces en el esquema de archivo sin formato vegPO. Los nodos del esquema de archivo sin formato vegPO se muestran en el separador Diseño de esquema y las propiedades del nodo raíz vegPO se muestran en el panel derecho.
- Pruebe el esquema de archivo sin formato vegPO:
- En el panel de prueba, pulse Examinar. Se abrirá el recuadro de diálogo Abrir archivo de datos de prueba de muestra.
- Localice el archivo vegPO.txt que contiene los
datos de entrada. Si ha aceptado los valores predeterminados durante la
instalación de Studio, este archivo estará ubicado en el
siguiente directorio:
C:\Archivos de programa\IBM\WebSphere Cast Iron Studio 3.X\Samples\FlatFileSchema
- Pulse Abrir. Los datos de entrada del archivo vegPO.txt se mostrarán en el panel izquierdo del separador Probar.
- Pulse el icono Probar (
). En el panel de resultados, el resultado de la conversión se muestra como datos XML.
- En el separador Diseño de esquema, pulse en el
nodo raíz vegPO. El nodo raíz vegPO se
muestra con las siguientes propiedades:
- La propiedad Estructura es igual a Delimitada: la estructura del nodo raíz está delimitada.
- El Delimitador hijo es igual a Fin de línea: los registros hijo están delimitados por un fin de línea.
- Posición de delimitador hijo es igual a Después: los delimitadores se esperan después de cada registro.
- El delimitador Repetición es igual a Fin de línea: los registros repetitivos también están delimitados el fin de línea.
- En el separador Diseño de esquema, pulse sobre el
nodo raíz orderingStore. La primera línea de los datos
de entrada se resalta dentro del panel de prueba, como
se muestra en la siguiente ilustración:
El primer registro del esquema de archivo sin formato vegPO es un registro de cabecera denominado orderingStore que se produce solo una vez. En el separador Diseño de esquema, los campos y los registros que componen el registro orderingStore se muestran como hijos. La primera línea se analiza en los campos y registros que componen el registro orderingStore.
Los conjuntos de elementos repetitivos se inician después del primer registro de cabecera. Cada conjunto de elementos repetitivo contiene tres registros hijo de diferente tipo, como se muestra en la siguiente ilustración:
Un registro repetitivo que contiene registros hijo de diferente tipo se puede modelar en el Editor de esquema de archivo sin formato mediante grupos. Los grupos son necesarios solo cuando los datos no proporcionan ningún delimitador adicional o estructura para marcar de forma clara el principio y el final de las repeticiones que contienen más de un registro. Los delimitadores de las repeticiones se hereda del registro padre o del nodo raíz. En este ejemplo del nodo raíz vegPO, el delimitador de repetición se establece en el fin de línea. El nodo de grupo orders utiliza el delimitador de fin de línea para analizar sus registros repetitivos.
- En el separador Diseño de esquema, pulse en el
nodo de grupo orders. Observe los siguientes cambios gráficos
en los paneles:
- En el subpanel izquierdo del panel de prueba, todas las líneas después de la línea de cabecera están resaltadas. Esto indica que tras el análisis, todos los datos después del primer registro se asignan al nodo de grupo orders.
- En el panel Propiedades básicas, las Apariciones del grupo orders son Ilimitadas. Esta configuración significa que puede haber una o más instancias de este grupo.
- En el panel Propiedades básicas, para el grupo orders, el Tipo es igual a order. Esta configuración significa que el grupo orders se basa en el tipo de grupo order. El contenido y las propiedades del tipo de grupo order se definen en el separador Biblioteca de tipos.
- Seleccione el separador Biblioteca de tipos. Se mostrarán
los tipos de registro y de grupo utilizados en el esquema de archivo sin formato
vegPO. El tipo de grupo order contiene tres registros,
como se muestra en la siguiente ilustración:
El siguiente icono representa un registro basado en un tipo de registro:
El grupo orders con el tipo de grupo order definen el conjunto de registros repetitivos de diferentes registros debido a las siguientes características:
- Puede haber una o muchas instancias del grupo orders.
- El tipo de grupo order contiene tres registros de diferente tipo.
- El grupo orders se basa en o hereda el tipo de grupo order.
- En el separador Biblioteca de tipos, pulse sobre el nodo de registro id del
tipo de grupo order. Observe los siguientes cambios gráficos
en los paneles:
- En el panel Propiedades básicas, el Tipo del registro id es igual al tipo de registro denominado orderID. Esta configuración significa que el registro id se basa en el tipo de registro orderID.
- En el subpanel izquierdo del panel de prueba, la primera línea de cada registro repetitivo se resalta como se muestra en la siguiente ilustración:Esto indica que la primera línea de cada registro repetitivo se asigna al registro id.
- En el separador Biblioteca de tipos, pulse sobre el nodo de registro shipdate del
tipo de grupo order. Observe los siguientes cambios gráficos
en los paneles:
- En el panel Propiedades básicas, el Tipo del registro shipdate es igual al tipo de registro denominado shippingDate. Esta configuración significa que el registro shipdate se basa en el tipo de registro shippingDate.
- En el panel Propiedades básicas, la Estructura del registro shipdate es Posicional. Esta configuración significa que los campos hijo del registro shipDate están determinados por su posición y longitud en el registro y no por delimitadores.
- En el subpanel izquierdo del panel de prueba, la segunda línea de cada registro repetitivo se resalta como se muestra en la siguiente ilustración: Esto indica que la segunda línea de cada registro repetitivo se asigna al registro shipDate. El registro shipDate contiene tres campos hijo posicionales (month, day, y year) heredados del tipo de registro shippingDate.
- En Biblioteca de tipos, pulse sobre el nodo month del
tipo de registro shippingDate.
En el subpanel izquierdo del panel de prueba, los valores asignados al campo month se resaltan como se muestra en la siguiente figura:
- En Biblioteca de tipos, pulse sobre el nodo de registro contents del
tipo de grupo order. Observe los siguientes cambios gráficos
en los paneles:
- En el panel Propiedades básicas, el Tipo del registro contents es igual al tipo de registro denominado orderContent. Esta configuración significa que el registro contents se basa en el tipo de registro orderContent.
- En el subpanel izquierdo del panel de prueba, la tercera línea de cada registro repetitivo se resalta como se muestra en la siguiente ilustración: El tipo de registro orderContent contiene el registro vegetables. El registro vegetables contiene un conjunto de registros repetitivos vegetable. El registro vegetable contiene los campos name y pounds.
- En Biblioteca de tipos, pulse sobre el nodo de registro name del
tipo de grupo orderContent. En el subpanel izquierdo del panel de prueba, los valores asignados al campo name se resaltan como se muestra en la siguiente figura: