Para saber más sobre los filtros en general, consulte el tema Comprender los filtros.
Use este filtro siempre que el desencadenador reciba datos no estructurados, como documentos e informes exportados del sistema heredado, comunicación interceptada entre dispositivos y secuencia de impresión capturada. El filtro le permite extraer campos individuales, campos en las subáreas reiterativas, e incluso pares nombre-valor
.
Para ver ejemplos de datos de texto estructurado, consulte las secciones Datos heredados, Compuesto CSV y Archivos binarios.
Definir estructuras
Elementos que puede usar para configurar el filtro:
-
Campo: Especifica la ubicación de los datos del campo entre la ubicación del campo inicial y final. Hay varias opciones para definir la ubicación del campo, de la codificación rígida de la posición a la habilitación de la posición relativa. Debe asignar los campos definidos a las variables respectivas en la acción Usar filtro de datos. Para obtener más información, consulte el tema Definir campos.
-
Subárea: Especifica la ubicación de datos reiterativos. Cada subárea define al menos un bloque de datos, que a su vez tiene datos para las etiquetas. Puede haber subáreas definidas dentro de las subáreas, lo que permite la definición de estructuras complejas. Puede definir campos dentro de cada bloque de datos. Debe asignar los campos definidos a las variables respectivas en la acción. Para cada subárea, Automation define un nuevo nivel del marcador de posición dentro de la acción Usar filtro de datos, para que pueda asignar variables a los campos de ese nivel. Para obtener más información, consulte el tema Definir subáreas.
-
Área de asignación: Especifica la ubicación de datos reiterativos que tienen los pares
nombre-valor
. Automation lee los nombres de campo y sus valores simultáneamente. Automation también realiza automáticamente la asignación a variables. Use esta función para ajustar el filtro a los datos de entrada cambiantes, lo que elimina el tiempo de mantenimiento. Puede definir el área de asignación en el nivel de raíz del documento, o dentro de la subárea. Para obtener más información, consulte el tema Definir áreas de asignación.
La sección Vista previa de los datos simplifica la configuración. El resultado de la regla del filtro definido se resalta en el área de vista previa con cada cambio de configuración. Puede ver qué datos se extraerían con cada regla.
Los campos se pueden definir en el nivel de raíz como campos de documento. Los campos se pueden definir dentro del bloque de datos. Los pares nombre-valor
se pueden definir dentro del área de asignación.
General
Esta sección define las propiedades generales del filtro de datos no estructurados.
-
Nombre: Especifica el nombre del filtro. Use un nombre descriptivo que identifique el rol del filtro en una configuración. Puede cambiarlo en cualquier momento.
-
Descripción: Le permite describir el propósito de este filtro. Puede usarla para escribir una explicación breve de lo que hace el filtro.
-
Codificación: Especifica la codificación de los datos con los que trabajará este filtro.
-
Ignorar líneas vacías en bloques de datos: Especifica que no aparece un error si el filtro extrae valores de campos vacíos de los bloques de datos.
Cuando define un campo, debe definir su nombre y una regla de cómo extraer los valores de campo de los datos. Cuando se ejecuta el filtro, las reglas de extracción se aplican a los datos de entrada y se asigna el resultado al campo.
Propiedades del campo
-
Nombre: Especifica el nombre único del campo.
-
El campo tiene datos binarios: Especifica que el campo contiene datos binarios. No lo habilite a menos que realmente reciba datos binarios.
Inicio del campo
-
Posición en documento: La posición no modificable en los datos determina el punto inicial/final. El origen de coordinada está en la esquina izquierda superior. El carácter en la posición definida está incluido en los datos extraídos.
-
Fin del documento: El punto inicial/final está al final del documento. También puede definir un desplazamiento desde el final para un número específico de líneas o caracteres.
-
Buscar cadena desde el inicio del documento: La posición de la cadena buscada define el punto inicial/final. Después de que Automation encuentra la cadena requerida, el siguiente carácter determina el punto inicial/final. La cadena buscada no está incluida en los datos extraídos. La búsqueda predeterminada distingue mayúsculas de minúsculas.
-
Iniciar búsqueda desde posición absoluta: Puede ajustar la búsqueda cambiando la posición inicial desde el punto inicial (posición 1,1) para un desplazamiento. Utilice esta función para omitir la búsqueda al comienzo de los datos.
-
Repetición: Especifica qué repetición de la cadena buscada debe coincidir. Utilice esta opción si no espera configurar la posición inicial/final después de la primera cadena encontrada.
-
Desplazamiento desde cadena: Especifica el desplazamiento positivo o negativo después de la cadena buscada.
Ejemplo 6. Ejemplo
Debe definir el desplazamiento que incluirá la cadena buscada en los datos extraídos.
-
Final del campo
-
Posición en documento: La posición no modificable en los datos determina el punto inicial/final. El origen de coordinada está en la esquina izquierda superior. El carácter en la posición definida está incluido en los datos extraídos.
-
Fin del documento: El punto inicial/final está al final del documento. También puede definir un desplazamiento desde el final para un número específico de líneas o caracteres.
-
Buscar cadena desde el inicio del documento: La posición de la cadena buscada define el punto inicial/final. Después de que Automation encuentra la cadena requerida, el siguiente carácter determina el punto inicial/final. La cadena buscada no está incluida en los datos extraídos. La búsqueda predeterminada distingue mayúsculas de minúsculas.
-
Iniciar búsqueda desde posición absoluta: Puede ajustar la búsqueda cambiando la posición inicial desde el punto inicial (posición 1,1) para un desplazamiento. Utilice esta función para omitir la búsqueda al comienzo de los datos.
-
Repetición: Especifica qué repetición de la cadena buscada debe coincidir. Utilice esta opción si no espera configurar la posición inicial/final después de la primera cadena encontrada.
-
Desplazamiento desde cadena: Especifica el desplazamiento positivo o negativo después de la cadena buscada.
Ejemplo 7. Ejemplo
Debe definir el desplazamiento que incluirá la cadena buscada en los datos extraídos.
-
-
Buscar cadena después del inicio del campo: El punto inicial/final se define según la posición de la cadena buscada, como en la opción Buscar cadena desde el inicio del documento, pero la búsqueda comienza después de la posición inicial del campo/área, no en el comienzo de los datos.
-
Longitud: Especifica la longitud de los datos en las líneas en caracteres. El número especificado de líneas o caracteres se extraerá desde la posición inicial.
-
Fin de la línea: Especifica si se extraerán los datos desde la posición inicial hasta el final de la misma línea. Puede definir un desplazamiento negativo desde el final de la línea.
Opciones de formato
Esta sección define las funciones de manipulación de cadenas que se aplicarán a las variables o campos seleccionados. Puede seleccionar una o varias funciones. Las funciones se aplican en el mismo orden seleccionado en la interfaz del usuario: de arriba a abajo.
-
Borrar espacios en el comienzo: borra todos los caracteres de espacio (código 32 ASCII decimal) en el comienzo de la cadena.
-
Borrar espacios en el final: borra todos los caracteres de espacio (valor 32 ASCII decimal) en el final de una cadena.
-
Borrar el carácter de apertura y cierre: borra los caracteres de apertura y cierre seleccionados que aparecen por primera vez en la cadena.
Ejemplo 8. Ejemplo
Si utiliza "{" para el carácter de apertura y "}" para el carácter de cierre, la cadena de entrada
{{selección}}
se convertirá en{selección}
.
-
Buscar y reemplazar: ejecuta la función estándar de buscar y reemplazar a partir de los valores provistos para buscar qué y reemplazar con. También puede usar expresiones comunes.
Nota
Existen varias implementaciones de expresiones comunes en uso. utiliza la sintaxis de .NET Framework para las expresiones comunes. Para obtener más información, consulte Artículo de base de conocimiento.
-
Reemplazar caracteres que no se pueden imprimir con espacios: reemplaza todos los caracteres de control en la cadena con espacios (código 32 ASCII decimal). Los caracteres que no se pueden imprimir son caracteres con valores ASCII decimales entre 0 y 31, y 127 y 159.
-
Borrar caracteres que no se pueden imprimir: borra todos los caracteres de control de la cadena. Los caracteres que no se pueden imprimir son caracteres con valores ASCII decimales entre 0 y 31, y 127 y 159.
-
Descodificar caracteres especiales: descodifica los caracteres (o códigos de control) que no están disponibles en el teclado, como Retorno de carro y Avance de línea. utiliza una notación para codificar dichos caracteres en lenguaje natural, como <CR> para Retorno de carro y <LF> para Avance de línea. Para obtener más información, consulte el tema Introducción de caracteres especiales (Códigos de control).
Esta opción convierte caracteres especiales de la sintaxis en caracteres binarios reales.
Ejemplo 9. Ejemplo
Cuando reciba los datos "<CR><LF>", los usa como una cadena simple de 8 caracteres. Deberá habilitar esta opción para interpretar y usar los datos recibidos como dos caracteres binarios
CR
(Retorno de carro – ASCII código 13) yLF
(Avance de línea – ASCII código 10).
-
Buscar y eliminar todo antes de: Busca la cadena provista y borra todos los caracteres desde el comienzo de los datos hasta la cadena. La cadena buscada también se puede borrar.
-
Buscar y eliminar todo después de: Busca la cadena provista y borra todos los caracteres desde la cadena hasta el fin de los datos. La cadena buscada también se puede borrar.
-
Cambiar grafía: Cambia todos los caracteres de las cadenas a mayúsculas o minúsculas.
La subárea es la sección de datos dentro de la cual hay varios bloques de datos identificados por la misma regla de extracción. Cada bloque de datos proporciona datos para una sola etiqueta.
Todos los bloques de datos deben identificarse con la misma regla de configuración. Cada bloque de datos puede tener otra subárea. Puede definir un número ilimitado de subáreas anidadas dentro de subáreas principales.
Cuando el filtro contiene la definición de una subárea, la acción Usar filtro de datos mostrará subáreas con marcadores de posición anidados. Toda acción anidada debajo de dicho marcador de posición se ejecutará únicamente para los bloques de datos en este nivel. Puede imprimir diferentes etiquetas con datos desde diferentes subáreas.
Configurar subárea
La subárea se define con reglas similares como campos individuales. Cada subárea se define con los siguientes parámetros.
-
Nombre de subárea: Especifica el nombre de la subárea.
-
Bloques de datos: Especifica cómo identificar los bloques de datos dentro de la subárea. Cada subárea tiene al menos un bloque de datos. Cada bloque de datos proporciona datos para una sola etiqueta.
-
Cada bloque contiene un número fijo de líneas: Especifica que cada bloque de datos en una subárea tiene el número fijo de líneas provisto. Use esta opción si sabe que cada bloque de datos tiene exactamente el mismo número de líneas.
-
Bloques que comienzan con una cadena: Especifica que los bloques de datos comienzan con la cadena provista. Todo contenido entre dos cadenas provistas pertenece a un bloque de datos separado. El contenido entre la última cadena y el final de los datos identifica el último bloque de datos.
-
Bloques que finalizan con una cadena: Especifica que los bloques de datos finalizan con la cadena provista. Todo contenido entre dos cadenas provistas pertenece a un bloque de datos separado. El contenido entre el comienzo de los datos y la primera cadena identifica el primer bloque de datos.
-
Bloques separados por una cadena: Especifica que los bloques de datos están separados por la cadena provista. Todo contenido entre dos cadenas seleccionadas pertenece a un bloque de datos separado.
-
-
Comienzo del primer bloque de datos: Especifica la posición inicial del primer bloque de datos. Al mismo tiempo, define la posición inicial de la subárea. Generalmente, la posición inicial también es el comienzo de los datos recibidos. Los parámetros de configuración son los mismos que para definir los campos. Para obtener más información, consulte el tema Definir campos.
-
Fin del último bloque de datos: Especifica la posición final del último bloque de datos. Al mismo tiempo, define la posición final de la subárea. Generalmente, la posición final es el final de los datos recibidos. Los parámetros de configuración son los mismos que para definir los campos. Para obtener más información, consulte el tema Definir campos.
Configurar campos dentro de la subárea
Los campos dentro de la subárea están configurados usando los mismos parámetros que para los campos definidos en el nivel de raíz. Para obtener más información, consulte el tema Definir campos.
Nota
Los números de líneas del campo hacen referencia a la posición dentro del bloque de datos, no la posición dentro de los datos de entrada.
Vista previa de los datos
Esta sección proporciona la vista previa de la definición del campo. Cuando se selecciona el elemento definido, se resalta su posición en los datos en vista previa.
-
Vista previa del nombre del archivo: especifica el archivo que contiene los datos de muestra que se analizarán a través del filtro. Se copia el archivo en vista previa de la definición del filtro. Si cambia el nombre del archivo en vista previa, se guarda el nuevo nombre.
-
Abrir: selecciona otro archivo sobre el cual ejecutar las reglas de filtro.
-
Actualizar: vuelve a ejecutar las reglas de filtro sobre el contenido del nombre del archivo en vista previa. Automation actualiza la sección Vista previa con el resultado.
El filtro de datos no estructurados identifica automáticamente los campos y sus valores en los datos recibidos. Esto hace que la asignación manual variable a campo sea innecesaria.
La funcionalidad Estructura dinámica es útil si el desencadenador recibe datos con una estructura cambiante. En dichos casos, la estructura principal de los datos permanece sin cambios ( p.ej. los campos están delimitados por coma), o conserva la misma estructura, pero cambia el orden o el número de los campos. Podría haber campos nuevos, o algunos de los campos anteriores podrían ya no estar disponibles. Debido a la Estructura dinámica, habilitada, el filtro identifica automáticamente la estructura del archivo recibido. Al mismo tiempo, el filtro lee los nombres de campos y sus valores (pares name:value
) de los datos. Esto elimina la necesidad de asignación manual de campos a variables.
Usar filtro de datos la acción no ofrece posibilidades de asignación, debido a que realiza la asignación en forma dinámica. Incluso no tendrá que definir las variables de etiquetas en la configuración de los desencadenadores. La acción asignará valores de campo a las variables de las etiquetas del mismo nombre, sin tener que importar las variables de la etiqueta. No obstante, esta regla se aplica solamente a la acción Imprimir etiqueta. Si quiere usar los valores de campo en otra acción, deberá definir variables en el desencadenador, y mantener, al mismo tiempo, la asignación automática de variable a campo.
Nota
No se producirá ningún error si el campo disponible en los datos de entrada no tiene una variable de etiqueta correspondiente. ignora en silencio las variables faltantes.
Configurar área de asignación
El área de asignación se configura usando el mismo procedimiento que la subárea. Para obtener más información, consulte el tema Definir subáreas. El área de asignación puede definirse al nivel de raíz de los datos, donde aparece una sola vez. También se puede configurar dentro de una subárea, de modo que se ejecute para cada bloque de datos en la subárea.
Configurar campos en el área de asignación
Cuando cree una área de asignación, el filtro define automáticamente los dos marcadores de posición. Estos dos marcadores de posición definen el par nombre:Valor
.
-
Nombre de variable: Especifica el campo, cuyo contenido será el nombre de la variable (componente
nombre
en un par). Configure el campo usando el mismo procedimiento que con los campos de documentos. Para obtener más información, consulte el tema Definir campos. -
Valor de variable: Especifica el campo cuyo contenido será el valor de la variable (componente
valor
en un par). Configure el campo usando el mismo procedimiento que con los campos de documentos. Para obtener más información, consulte el tema Definir campos.
Ejemplo
El área entre ^XA y ^XZ es el área de asignación. Cada línea del área de asignación proporciona el par nombre:valor
. Nombre El nombre se define como valor entre el sexto carácter de la línea y el carácter de igual. Valor El valor se define como valor entre el carácter de igual y el final de la línea con desplazamiento negativo de tres caracteres.
^XA ^FD01DonationHR=G095605 3412625^FS ^FD02DonationBC=DG0956053412625^FS ^FD03HospitalNoHR=HN060241^FS ^FD04HospitalNoBC=060241^FS ^FD05Surname=Hawley^FS ^FD07Forename=Annie^FS ^FD09Product=Blood^FS ^FD10PatientBlGp=O Rh +ve^FS ^FD11DoB=27 June 1947^FS ^FD12DateReqd=25 Dec 2012^FS ^XZ