Toda la información de producto en wiki.bizagi.com aplica para Bizagi BPM Suite 9.1.X.
Para las nuevas versiones de Bizagi BPM Suite (10.X y superior) visite la Guía de Usuario.
 

GetCaseDataUsingSchema

De

<keywords content="keywords">getCaseDataUsingSchema, getCaseDataUsingSchemaAsString, getCaseDataUsingSchemaLite, getCaseDataUsingSchemaLiteAsString, get Case Data Using Schema,capa SOA, EntityManagerSOA, Entity Manager SOA</keywords> 

Contenido

getCaseDataUsingSchema

Es un método del servicio web EntityManagerSOA, usado para obtener información sobre un caso en Bizagi, dado el número de identificación del caso y un esquema especificando la información deseada. Este documento también aplica para los métodos: getCaseDataUsingSchemaAsString, getCaseDataUsingSchemaLite y getCaseDataUsingSchemaLiteAsString

Descripción

Este método recibe dos parámetros, un entero correspondiente al idCase del caso que se desea consultar y un esquema (XSD). Este esquema debe ser consistente con la estructura del Modelo-Entidad-Relación de Bizagi.

Como respuesta, este método retornará un XML con el resultado de la consulta. El método getCaseDataUsingSchemaAsString funciona de la misma forma pero en lugar de un XmlDocument que es el tipo de dato usado en getCaseDataUsingSchema, recibe y retorna un string XML. Existen otros dos métodos, getCaseDataUsingSchemaLite y getCaseDataUsingSchemaLiteAsString los cuales tienen  la misma funcionalidad que los descritos anteriormente pero con la diferencia que para atributos del tipo Archivo, el contenido del archivo no se retorna. En los métodos getCaseDataUsingSchema y getCaseDataUsingSchemaAsString se incluye el contenido de un archivo en un el XML como una secuencia de caracteres desde un arreglo de bytes con Base64 (como se recomienda para un XML).

Datos de Entrada

Parámetro 1 (Tipo Entero)

idCase: Corresponde al número de identificación interno (id en la base de datos) del caso en Bizagi.

Parametro 2 (Tipo Entero)

idWorkitem: (Opcional). Corresponde al identificador de la instancia de una tarea. Con dicho parámetro se puede obtener los datos de un caso que estén almacenados en una actividad, sin que necesariamente esa actividad haya avanzado y persistido los datos.

Parametro 3 (XmlDocument o Tipo String)

xsd: Esquema con la información que será extraída. Una forma sencilla de crear este esquema es usar la opción Xml Schemas para la entidad con la jerarquía mas alta en el modelo (e.g. la entidad de aplicación).


Ejemplo 

Para un proyecto con el siguiente modelo de datos:



Este sería un ejemplo de un esquema enviado como segundo parámetro:



Este esquema comienza con el nombre de del atributo de la entidad de Aplicación que está relacionado con la Entidad de Proceso. Desde ahora, el esquema se construye incluyendo todos los atributos deseados (usando su Nombre y no su Nombre a Mostrar o Display Name) y usando las relaciones para acceder a otras actividades. Las relacíones de Tipo Colección se incluyen de forma diferente; dado que estas son relaciones uno a muchos, comenzando desde la "Entidad  uno" (Request), primero va el nombre de la relación (Applicants) luego el nombre de la "entidad muchos" (Applicant), y finalmente , es posible incluir atributos de esta entidad.

Datos de Salida 

La salida es un XmlDocument con la información solicitada e incluída en el esquema, así:



Nótese que aunque los atributos DocumentNumber y idDocumentType fueron incluídos en el ejemplo de esquema de entrada , estos no aparecen en la respuesta. La razón para esto es que, para el caso consultado, no existe información en estos atributos(los valores de los atributos es null), entonces Bizagi no los incluye en la respuesta por defecto. Si se desea incluirlos en la respuesta XML, aun sin información, incluya en el XSD nillable="true". Por ejemplo:



Esto debe hacerse también para el elemento idDocumentType y el sub elemento Name. Luego que se hace esto, la nueva respuesta sería:



Cuando la respuesta incluye una relación uno a muchos como una Colección, en este ejemplo el elemento "idRequest" tiene varios elementos "Applicant", cada elemento de la colección (Applicant) incluirá un atributo XML llamado "key", el cual indica el id (o llave) de este registro en la base de datos.

Por otro lado, si la relación uno a muchos no es una Colección (como idDocumentType en este ejemplo), Bizagi incluirá en su respuesta para este elemento, el nombre de la entidad relacionada en un atributo XML llamado "EntityName", junto con el atributo XML "key" con el id del registro. A continuación encontrará un ejemplo de esto si el atributo "idDocumentType" tiene información en la base de datos:


Notas

  • El atributo nillable sirve para consultar información de un caso con un XSD. No se ha implementado la funcionalidad que permite consultar información de una entidad con un XSD (no funciona para el método getEntitiesUsingSchema).
  • Esto retornará la información existente en el caso, pero no la información almacenada en algunas actividades aún en proceso. Es decir, si la actividad no se ha terminado, la nueva información registrada puede que se haya guardado pero aún no haya persistido en la base de datos, entonces esta no será incluída en la respuesta de este método hasta que se avance la actividad (se haga click en siguiente).
  • El XSD debe comenzar con el nombre del Atributo en la Entidad de Aplicación relacionada con la entidad de proceso.

<comments />