XML Helper para interfaces

<< Clic para mostrar Tabla de Contenidos >>

Navegación:  Bizagi Studio > Asistente de Procesos > Reglas de Negocio > Ejemplos de reglas de negocio >

XML Helper para interfaces

Introducción

El XML Helper hace parte de la API de reglas de negocio de Bizagi y provee acceso a la información de sus procesos cuando se trabaja con información estructurada XML.

Esta es una alternativa útil dado que el motor de acceso de datos en Bizagi se basa en varias herramientas de optimización cuando se trata de trabajar en un formato nativo para el modelo de datos de Bizagi, como XML.

Funciona tanto cuando se quiere consultar información de Bizagi o cuando se desea insertar o actualizar información en Bizagi.

 

Por ejemplo, es útil cuando se activa el motor BPMN de Bizagi desde una regla de negocio, ya sea para crear un nuevo caso o completar eventos y actividades (p.e, para la colaboración entre procesos en Bizagi).

La activación el motor BPMN de Bizagi tiene en cuenta el uso de CHelper.NewCase(), CHelper.setEvent(), CHelper.PerformActivity(), entre otros, los que pueden usar información estructurada XML como entradas.

 

El objeto XML Helper

Bizagi provee un conjunto de métodos en este objeto, para manejar directamente XMLs y trabajar con información tal cual Bizagi la maneja.

Este objeto se instancia utilizando código en las expresiones de las reglas de negocio por medio de la clase CEntityXmlHelper.

 

Antes de continuar

Tenga en cuenta que el uso de estos métodos requiere de habilidades técnicas orientadas al uso de XMLs y archivos de transformación XSLTs, además requiere de experiencia en trabajo con Bizagi y cómo se maneja la información dentro de sus scopes.

Para mayor información, por favor referirse a Scopes.

Tenga en cuenta que estos métodos generalmente:

Reciben instancias de entidades entre sus parámetros, así que antes de emplear cualquier método, puede requerirse el uso de CEntityManager y sus métodos.

Dependen del uso de CHelper.NewCase(), CHelper.setEvent(), CHelper.PerformActivity(), entre otros.

Se alimentan en esquemas XML predefinidos y transformaciones desde las definiciones de las Entidades. Para mayor información sobre este tema, consulte Esquemas XML del modelo de datos.

 

 

Métodos

Los siguientes métodos se presentan de acuerdo su función.

 

Consultar información almacenada directamente en ciertas Entidades

Estos métodos deben ser usados principalmente cuando se trabaja con entidades Paramétricas, dado que estas no consideran la información almacenada en los scopes y su información se puede consultar sin necesidad de navegar por medio de XPaths.

 

MÉTODO

ENTRADAS

SALIDAS

DESCRIPCIÓN

NOTAS

getEntitiesAsString

 

string entityInfo, string xsd

string

Obtiene los registros de la entidad especificada en una cadena de caracteres con una estructura XML.

 

El parámetro entityInfo usa una representación en cadena de caracteres de una estructura XML que tiene la entidad a ser consultada, incluyendo filtros.

La estructura XML debe ser igual a la usada en el método web getEntitiesAsString del API de Bizagi.

 

El parámetro xsd utiliza una representación en cadena de caracteres de un esquema XML para que la información de los registros incluya sólo los atributos especificados en el esquema.

Otros métodos similares a este están deprecados y se mantienen solamente por compatibilidad hacia atrás. Estos métodos no deben ser utilizados.

 

Para ver un ejemplo de cómo se implementa este método, por favor referirse a Consultar información basada en XML en entidades.

 

Consultar información respecto a los casos (con scopes)

Estos métodos consideran la información que hace parte de lo que se maneja para un caso, aún en el scope de Bizagi.

 

MÉTODO

ENTRADAS

SALIDAS

DESCRIPCIÓN

NOTAS

getCaseAsString

 

int IdCase,

string xsd,

string xsl, string xpathContext

string

Obtiene la información que aplica a un caso (en una cadena de caracteres de un XML), incluyendo un caso cerrado o uno aparte del que está siendo trabajado.

 

El parámetro xsd es opcional, y utiliza una representación en cadena de caracteres de un esquema XML para que la información de los registros incluya sólo los atributos especificados en el esquema (que debe ser construido desde la entidad de la Aplicación)

 

El parámetro xsl usa una representación de un archivo de transformación XML en una cadena de texto para que sea aplicada al resultado.

 

El parámetro xpathContext hace uso de una representación del Contexto XPath en una cadena de texto para definir dónde empezará Bizagi a interpretar el esquema.

Otros métodos similares a este están deprecados y se mantienen solamente para compatibilidad hacia atrás. Estos métodos no deben ser utilizados.

 

Para ver un ejemplo de cómo se implementa este método, por favor referirse a Consultar informacion basada en XML en casos (con scope).

 

Insertar o actualizar información en Entidades

Estos métodos deben ser usados principalmente con entidades paramétricas, dado que no consideran la información que está almacenada en los scopes y que estas entidades se pueden acceder sin navegación por medio de XPaths.

Para estos métodos, debe considerar las definiciones de sus llaves de negocio existentes, como se describe en Usando llaves de negocio en archivos XML.

 

MÉTODO

ENTRADAS

SALIDAS

DESCRIPCIÓN

NOTAS

saveEntityAsString

 

string entityInfo

string

 

Inserta o actualiza las entidades especificadas.

 

El parámetro entityInfo hace uso de una definición de una estructura XML representada en una cadena de texto con la información a ser insertada o actualizada.

La estructura XML debe ser igual a la usada en el método web getEntitiesAsString del API de Bizagi donde se utilizan las definiciones de las llaves de negocio, para actualizar registros existentes.

Otros métodos similares a este están deprecados y se mantienen solamente para compatibilidad hacia atrás.

 

Para ver un ejemplo de cómo se implementa este método por favor referirse a Actualizar información basada en XML en entidades.

 

Insertar o actualizar información respecto a los casos (con scopes)

Estos métodos consideran la información que hace parte de lo que se maneja para un caso, aún en el scope de Bizagi.

Para estos métodos, debe considerar las definiciones de sus llaves de negocio existentes, como se describe en Usando llaves de negocio en archivos XML.

 

MÉTODO

ENTRADAS

SALIDAS

DESCRIPCIÓN

NOTAS

saveCaseAsString

int idCase, string entityInfo, boolean businessKey

boolean

Actualiza la información del caso dado, incluyendo casos cerrados u otro diferente al que está siento trabajado.

 

El parámetro idCase es necesario para definir el caso al cual se le aplicarán los cambios.

 

El parámetro entityInfo hace uso de una definición de una estructura XML representada en una cadena de texto con la información a ser insertada o actualizada.

La estructura XML debe ser igual a la usada en el método web getEntitiesAsString del API de Bizagi, asegurándose de que el nodo raíz es la entidad del proceso.

 

El parámetro businessKey debe ser false para que se usen las definiciones de llaves de negocio como se han predefinido.

Otros métodos similares a este están deprecados y se mantienen solamente para compatibilidad hacia atrás.

 

Para ver un ejemplo de cómo se implementa este método por favor referirse a Actualizar información basada en XML en casos (con scope).

 

Métodos para manipular información (por medio de esquemas y transformaciones XML)

Estos métodos le permiten aplicar transformaciones XML a información de negocio.

 

MÉTODO

ENTRADAS

SALIDAS

DESCRIPCIÓN

NOTAS

transformXmlAsString

string xml,

string xsl

String

Aplica una transformación a información XML, utilizando el estándar XSLT 1.1, y obteniendo el resultado transformado.

 

El parámetro xml utiliza información estructurada XML por medio de una representación en cadena de texto.

 

El parámetro xsl hace uso de un archivo de transformación XML representado como cadena de texto para aplicarlo al resultado.

Otros métodos similares a este están deprecados y se mantienen solamente para compatibilidad hacia atrás.

 

Para ver un ejemplo de cómo se implementa este método por favor referirse a Aplicar transformaciones XLS.