Cuando se asigna un evento CBE a una clase de evento de Enterprise Console en la base de reglas, cada elemento de datos ampliado se asigna a un atributo del evento de Enterprise Console resultante.
Si el nombre completo de un elemento de datos ampliado no coincide con el nombre de un atributo en la definición de clase de eventos de Enterprise Console, el elemento de datos ampliado se descarta.
En la Tabla 1 se muestra la asignación de un elemento de datos ampliados CBE a atributos en un evento de Enterprise Console.
Subcampo de elemento de datos ampliados |
Atributo de Enterprise Console |
---|---|
Nombre de atributo |
|
Indica si el valor del atributo de Enterprise Console es un valor simple o una matriz. |
|
Valor del atributo |
|
extendedDataElement.children |
Cada elemento hijo del elemento de datos ampliados se convierte a otro atributo del evento de Enterprise Console. El proceso se repite de forma continuada hasta que no haya más subelementos dentro del elemento de datos ampliado. Para obtener información detallada sobre el nombre del atributo resultante en el evento de Enterprise Console, consulte el apartado "Nombre". |
Tabla 1. Asignación de elementos de datos CBE a atributos de Enterprise Console.
En los apartados siguientes se explica detalladamente cómo cada atributo de una definición de eventos CBE se asigna a un atributo en una definición de clases de eventos de Enterprise Console:
Un extendedDataElement puede estar anidado en otro extendedDataElement. El nombre del atributo resultante en la definición de clases de eventos de Enterprise Console está formado por la concatenación de los nombres de todos los elementos extendedDataElement empezando por el ancestro superior hasta el nombre del elemento que se está asignando. El carácter "." (punto) se utiliza como separador.
Como ejemplo, observe un evento CBE con los elementos de datos ampliados siguientes:
<CommonBaseEvent ...> <extendedDataElements name="abc" type="string"> <values>my value</values> <children name="def" type="int"> <values>123</values> </children> </extendedDataElements> ... </CommonBaseEvent>
Los atributos resultantes y los valores correspondientes del evento de Enterprise Console serían los siguientes:
abc='my value' abc.def=123
Si se produce un conflicto entre el nombre asignado de un elemento de datos ampliados y el nombre de otro atributo del evento de Enterprise Console, el elemento de datos ampliados se descarta. Para obtener más información, consulte el tema "Conflictos de nombres para elementos de datos ampliados".
Por la misma razón, los elementos de datos ampliados con los nombres siguientes no se asignan a un atributo del evento de Enterprise Console porque el algoritmo de conversión procesa los atributos básicos antes que los elementos de datos ampliados:
Nota:
El subcampo de tipo en un elemento de datos ampliados indica el tipo de datos previsto para los valores dentro del elemento. El elemento de datos ampliados sólo se asigna a un atributo del evento de Enterprise Console de destino si ambos tipos son compatibles.
En la Tabla 2 se muestra el tipo de compatibilidad entre los tipos de datos ampliados y los tipos de atributos de Enterprise Console.
Tipo de elemento de datos ampliados |
Tipo de atributo de Enterprise Console |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Tabla 2. Asignación de tipos de elementos de datos ampliados a tipos de atributos de Enterprise Console
Como ejemplo, observe un evento CBE con los elementos de datos ampliados siguientes:
<CommonBaseEvent extensionName="CustomEvent" ...> <extendedDataElements name="slot1" type="string"> <values>my value1</values> <values>my value2</values> <values>my value3</values> </extendedDataElements> ... </CommonBaseEvent>
Si se supone que el atributo "slot1" para la clase de evento "CustomEvent" en la base de reglas está definido como una lista de cadenas, el evento de Enterprise Console resultante contendrá el atributo siguiente:
slot1=['my value1', 'my value2', 'my value3']
Conflictos de nombres para elementos de datos ampliados