3.2 Data Collection
3.2.1. Recorded data
3.2.1.2 Procedures
Una regla de proceso realiza una acción en un campo de un registro o un objeto, o en el propio registro u objeto. Para definir una regla de proceso, en el servicio o el canal utilizado para la transacción, puede especificar el registro o el objeto al que se aplica la regla.
Iniciación de reglas de proceso:
Para una transacción saliente, un evento de un objeto de negocio en el objeto primario de una estructura de objeto, inicia una regla de proceso. Para una
transacción entrante, el evento que inicia una regla de proceso se identifica mediante el valor del atributo de acción del objeto primario del mensaje XML. Al configurar canales de publicación y servicios de negocio, puede especificar qué eventos utilizar para iniciar cada regla de proceso. Puede aplicar una regla de proceso al registro primario, a un registro de nivel inferior o a un objeto, pero el evento de que inicia la regla se debe iniciar en el objeto primario.
Puede, por ejemplo, implementar una regla de detención en el objeto PERSON que impida a los usuarios cambiar cualquier atributo en el registro de la persona al especificar que la regla se aplica en la actualización . Con esta configuración, los usuarios pueden crear o suprimir registros de persona pero no los pueden actualizar.
Para las transacciones salientes, puede configurar una o más de las siguientes acciones en el objeto primario en la aplicación de canales de publicación para que inicie la regla:
v Insertar v Delete v Actualizar
Cuando se genera un mensaje saliente utilizando la función de exportación de datos o una invocación programada del canal de publicidad, se ejecutan todas las reglas de proceso, independientemente de los valores del evento.
Para transacciones entrantes, se puede configurar una o más de las siguientes acciones en el objeto primario en la aplicación de servicios de negocio para que inicien la regla:
v Add
v Cambiar o sustituir (equivalente de actualizar) v Delete
Puede establecer uno de estos valores como el atributo de acción del objeto primario para la transacción entrante.
Acciones de regla de proceso:
Una regla de proceso puede actuar sobre un servicio empresarial o un canal de publicación en conjunto. Por ejemplo, una regla puede eludir un mensaje o puede manipular el valor de un campo de datos dentro del mensaje.
Tres acciones de regla de proceso actúan sobre un mensaje de servicio o canal: detener, omitir y omitir niveles inferiores. Cuatro acciones de regla de proceso transforman el valor en un campo dentro del mensaje de servicio o canal: combinar, dividir, establecer y sustituir.
Acciones de procesamiento de mensajes:
Las acciones de procesamiento de mensajes detienen u omiten un mensaje entero de un servicio empresarial o de un canal de publicación u omiten registros enteros del mensaje.
Acción de omisión
La acción de omisión pasa por alto un mensaje que cumple criterios especificados. Cuando se aplica una acción de omisión a un mensaje entrante, el mensaje no se procesa y se borra de la cola entrante. Cuando una acción de omisión se aplica a un mensaje saliente, no se graba nada en la cola y el mensaje no se envía a un sistema externo. El procesamiento de la omisión no genera un error, pero el archivo de registro del sistema es actualizado con la regla que causó la acción de omisión. Una acción de omisión tiene algunas reglas predefinidas. Estas reglas buscan valores de control de integración para garantizar que los mensajes salientes tengan un estado válido antes de ser enviados al sistema externo.
Acción de detención
La acción de detención detiene un mensaje que cumple criterios especificados. Se deshace un mensaje saliente y se muestra un mensaje de error. Para las
transacciones entrantes, el mensaje permanece en la cola JMS entrante. Si el error se debió a una invocación síncrona del servicio empresarial, se notifica el error al programa de llamada.
No se proporcionan reglas predefinidas con una acción de detención. Esta opción es un programa de utilidad para que los usuarios personalicen el comportamiento de un servicio o canal.
Cuando sea posible, utilice la acción de omisión en lugar de la acción de detención para los servicios empresariales entrantes. La acción de detención causa un error de procesamiento y el mensaje permanece en la cola entrante o el iniciador recibe una respuesta de error. Estos resultados no se producen cuando se utiliza la acción de omisión.
Si una regla de procesamiento con una acción de detención se aplica a un canal de publicación generado por la función Exportación de datos, la acción de detención se trata como una acción de omisión. Si la acción de detención se evalúa como verdadera, el mensaje se omite.
Acción de omisión de niveles inferiores
Puede aplicar la acción de omisión de niveles inferiores sólo a mensajes salientes en un canal de publicación. Aplique la regla de procesamiento en el registro u objeto cuyos registros de nivel inferior se omitan.
Si la estructura de persona tiene el objeto de persona y los objetos de nivel inferior de teléfono y correo electrónico, puede utilizar la acción de omisión de niveles inferiores sobre una persona para quitar los datos de teléfono y correo electrónico del mensaje. Utilice la acción de omisión de niveles inferiores cuando se produzca un cambio de estado y el sistema externo no necesite la información de teléfono y correo electrónico adjuntas.
Acción de omisión de registro
Puede aplicar la acción de omisión de registro sólo a mensajes salientes en un canal de publicación. La acción de omisión de registro suprime un registro o un objeto que contiene la regla aplicada. Aplique la regla de procesamiento sobre el registro o el objeto, y todos los registros y objetos de nivel inferior, que desee omitir.
Si la estructura de objeto de persona tiene un objeto de persona y un objeto de nivel inferior de teléfono, puede utilizar la acción de omisión de registro para quitar un registro de teléfono específico del mensaje. Utilice la acción de omisión de registro, por ejemplo, cuando desee enviar el número de teléfono de trabajo, pero no el número de teléfono particular de una persona. La regla de omisión de registro necesita una condición que identifique un registro de teléfono particular para garantizar que el registro se omita.
Acciones de transformación de campos:
Aplique la regla de transformación de campos a un registro o a un objeto que contenga el campo que se debe transformar. Una regla de transformación de campos se puede aplicar a un solo campo o a varios campos del registro seleccionado.
Acción de establecimiento
La acción de establecimiento graba un valor en un campo de datos especificado. Cuando defina la regla, especifique los datos que se deben establecer y el origen del valor nuevo. Indique si la regla siempre graba el valor nuevo en el campo de destino o si graba el valor nuevo sólo cuando el campo es nulo (la acción
predeterminada). Puede utilizar esta acción para inicializar el valor en un campo de datos. Si la regla siempre graba el valor nuevo en el campo de destino, cualquier valor existente en el campo se sobrescribe.
El origen puede ser uno de los valores siguientes: v Un control de integración de valor
v Un valor no modificable
v Un control del sistema (en la tabla de base de datos MAXVARS) v Otro campo del registro u objeto especificado
v Un campo en un objeto relacionado
Acción Sustituir
La acción de sustitución sustituye un valor de un campo de datos por otro valor. Cuando defina la regla, especifique el campo de datos que desee actualizar. El control que utilice debe ser un control de referencia cruzada. Especifique el nombre de un control de referencia cruzada que contenga los valores originales y de sustitución para el campo de datos.
Utilice esta acción cuando la base de datos y el sistema externo utilicen
identificadores diferentes para la misma entidad. Puede sustituir, por ejemplo, el valor de SITEID en un canal de publicación por un valor de PLANTID externo y sustituya el valor de PLANTID externo en un servicio empresarial con el valor de SITEID.
Acción de combinación
La acción de combinación concatena valores de varios campos de origen en un solo campo de destino. Cuando defina la regla, identifique el campo de destino y los campos de origen y la secuencia en que se deben grabar los datos de origen. Los datos de origen pueden ser un campo de datos o un control de integración que contenga un valor de datos. También puede especificar un control de integración que contenga el delimitador para separar los segmentos en el campo de destino.
Utilice esta acción en una regla de procesamiento de servicio empresarial cuando la definición de sistema y la definición de sistema externo de una entidad no
coincidan. Una regla de procesamiento de servicio empresarial puede combinar, por ejemplo, un ID de distribuidor y un campo de ubicación de distribuidor de un sistema externo en el campo COMPANY. Una regla de procesamiento de canal de publicación puede utilizar entonces la acción de división para separar el campo combinado en valores distintos cuando se envíen datos al sistema externo. Los campos de origen y de destino deben estar en el mismo objeto. Esta acción siempre sobrescribe el valor existente en el campo de destino. Asegúrese de que los campos de origen y de destino sean campos alfanuméricos o pueden producirse errores de procesamiento.
Acción de división
La acción de división es lo contrario de la acción de combinación. La acción de división separa el valor de un campo en varios campos. Al definir la regla,
identifica un campo de origen, uno o varios campos de destino y cómo identifica el procesador de regla segmentos del campo de origen.
Los campos pueden tener los orígenes siguientes: v Un campo del registro u objeto seleccionado
v Un control de integración que contenga el delimitador que separa los segmentos en el campo de origen.
Los campos de origen y de destino deben existir en el mismo objeto. Esta acción siempre sobrescribe el valor existente en los campos de destino. Asegúrese de que los campos de origen y de destino sean campos alfanuméricos o pueden
producirse errores de procesamiento.
Si ha combinado varios campos en un mensaje entrante, divida el campo combinado en campos individuales en la dirección saliente. Hay dos modos de identificar cómo dividir el campo. Puede especificar la longitud de cada segmento del campo de origen o puede identificar un delimitador que separe los segmentos. Si la longitud del campo de cada segmento de los datos de origen es constante, el procesador de reglas divide el campo de origen de izquierda a derecha, según la longitud del campo, la secuencia y valores que especifique. Por ejemplo, el campo de destino A con una longitud de carácter de 6 contiene las posiciones 1-6 del campo de origen. El campo de destino B con una longitud de carácter de 3 contiene las posiciones 7-9 del campo de origen.
Si la longitud de los segmentos del campo de origen es variable pero el campo de origen contiene un delimitador distinto que identifica los segmentos, utilice la opción de separador. La opción de separador identifica un control de integración que define el separador. El mismo separador debe delimitar todos los segmentos. El procesador de reglas analiza el campo de origen de izquierda a derecha. El procesador busca el delimitador, divide la serie en varios valores y mueva cada valor al campo de destino designado.
Secuencia de procesamiento:
Las reglas de proceso se aplican secuencialmente para cada registro u objeto dentro de una estructura de objeto, empezando por el objeto principal y bajando a los objetos de nivel inferior.
Si define varias reglas de proceso para un solo registro u objeto, puede modificar la secuencia de proceso predeterminada. Su modificación resulta especialmente importante si una regla depende del resultado satisfactorio de una regla anterior. Si se aplica satisfactoriamente una regla con una acción de detención u omisión, no se produce ninguna comprobación adicional.