GetActivities
De
<keywords content="keywords">getActivities, getActivitiesAsString, get Activities, Capa SOA, WorkflowEngineSOA, Workflow Engine SOA</keywords>
Contenido |
getActivities
Método del servicio web WorkflowEngineSOA utilizado para consultar las actividades abiertas en Bizagi desde una aplicación externa; las actividades abiertas son aquellas que aún se encuentran pendientes, suspendidas o inactivas. Este artículo aplica también para el método getActivitiesAsString.
Descripción
Este método recibe un XML con varios filtros que se utilizan para obtener como resultado únicamente las actividades que cumplen los criterios de búsqueda. El método getActivities recibe y retorna un XmlDocument y getActivitiesAsString recibe y retorna un XML con formato string.
Parámetros de Entrada
Este es el esquema correspondiente al XML esperado:
Parámetro 1 (XmlDocument o Tipo String)
BizAgiWSParam: Nodo raíz. Aquí se incluyen todos los filtros posibles. Estos filtros son opcionales. Si se utiliza más de un criterio, el resultado debería traer únicamente las actividades que cumplen con todas las condiciones.
domain: Busca las actividades cuyo usuario asignado pertenezca a este dominio.
userName: Busca las actividades cuyo usuario asignado sea el indicado en este elemento.
radNumber: Actividades que pertenezcan a este número de creación (número de caso).
applicationName: Actividades que pertenezcan a esta aplicación (ingrese el nombre y no el nombre a mostrar).
categoryName: Todas las actividades abiertas de esta categoría (ingrese el nombre y no el nombre a mostrar).
processName: Obtiene las actividades de este proceso (ingrese el nombre y no el nombre a mostrar).
idCase: Actividades que pertenecen a este idCase (número de identificación del caso).
subprocessDepth: Este no es un parámetro de búsqueda; es un indicador de la profundidad del subproceso. Se utiliza cuando hay una tarea de tipo subproceso, para poder obtener información de actividades en los subprocesos que puedan existir en un caso. Por defecto, esta consulta retorna un nivel de profundidad, es decir, el resultado contendrá las actividades de los subprocesos relacionados al proceso del caso actual; pero no las actividades pertenecientes al subproceso o subprocesos dentro de este subproceso. Se puede ingresar cualquier valor entero, pero es importante tener presente que para profundidades más grandes, el tiempo de respuesta puede aumentar, por lo cual se recomienda ingresar un número pequeño.
creationDate: Se refiere a la fecha a partir de la cual una actividad se encuentra disponible (cuando se habilita la actividad para un caso).
expirationDate: Fecha tentativa en la cual una actividad expirará (de acuerdo a la configuración de duración).
From: Será utilizado como un sub-nodo ya sea de la fecha de creación o de la fecha de expiración; permite que se pueda ingresar un rango de fechas. Esta será la fecha inicial para la búsqueda (la más antigua).
To: Será utilizado como un sub-nodo ya sea de la fecha de creación o de la fecha de expiración; permite que se pueda ingresar un rango de fechas. Esta será la fecha final para la bpusqueda (la más reciente).
Nota: Cuando se incluyen fechas en un XML se recomienda uilizar el formato de fechas para XML; el cual es YYYY-MM-DD. Para incluir la hora utilice YYYY-MM-DDT00:00:00. |
Ejemplo
Para consultar las actividades creadas entre el 17 de Mayo a las 4 pm y el 21 de Mayo a las 4 pm, con usuario asignado "Raulp" la solicitud XML debe ser:
Parámetros de Salida
El esquema del XML de respuesta se muestra a continuación:
La respuesta incluye información de todas las actividades que cumplen con los criterios de búsqueda. A continuación encontrará una descripción de la información que contiene el XML de respuesta.
workItems: Nodo raíz, contiene un nodo "workItem" para cada actividad incluída en la respuesta.
workItem: Es una actividad especial (una instancia de una tarea) del proceso que se encuentra activa para el caso.
workItemId: Número de identificación o llave de la actividad.
workItemState: Estado actual de la actividad.
workItemEntryDate: Fecha y hora en la que se llega a la actividad por primera vez.
workItemDuration: Es la duración estimada, en minutos, para esta actividad.
workItemSubprocesses: Si la actividad es de tipo subproceso, en este nodo encontrará información de las actividades del subproceso. Tiene un nodo hijo llamado "workItems" de manera que desde este punto la estructura la misma incluyendo un nodo "workItem" para cada actividad que cumple con los criterios de búsqueda dentro del subproceso.
workItemEstimatedSolutionDate: Es la fecha estimada de solución de la actividad.
workItemSolutionDate: Es la fecha en la cual se completó la actividad.
task: Contiene información sobre la tarea correspondiente a la actividad.
taskId: Número de identificación o llave de la tarea.
taskName: Nombre de la tarea.
taskDisplayName: Nombre a mostrar de la tarea.
taskDescription: Texto descriptivo de la actividad.
taskHelpText: Texto de ayuda de la actividad.
HelpUrl: URL con infromación de la actividad.
taskEstimatedDuration: Es la duración estimada, en minutos, para la tarea.
taskType: Tipo de tarea.
taskCost: Costo estimado de la tarea. Este valor, al igual que es de las fechas estimadas, es configurado y determinado por la persona que diseña el proceso.
taskPriority: Prioridad de cumplimiento de la tarea.
taskTransactional: Indica si la tarea es transaccional.
taskCompensation: Indica si es una tarea de compensación.
taskTimerEventDuration: Si es una tarea de temporizador, contendrá su duración en minutos.
AllowsReassign: Una marca que muestra si esta tarea puede ser resignada a otro usuario.
SendNotification: Indica si se debe enviar un email a un usuario informando sobre la disponibilidad de la tarea.
SendAlarms: Indica si se debe enviar un email al usuario asignado informándole que la tarea tiene riesgo de vencerse.
ExtendedEstimatedDuration: Duración de tiempo extendida.
Form: Reservada para uso futuro.
IsAsynchTask: Especifica si esta es una tarea asincrónica. Utilizada normalmente para interfaces.
NumberOfRetries: Aplica para tareas asincrónicas. Corresponde al número de intentos automáticos de una tarea. En caso de error se arroja una excepción.
RetryInterval: Aplica para tareas asincrónicas. es el tiempo (en minutos) entre cada reintento.
ShowFeedback: Aplica para tareas asincrónicas. Indica si se le informará a usuario cuando se presente un error.
TimeoutSeconds: Aplica para tareas asincrónicas. Tiempo (en segundos) que debe esperar la tarea asincrónica por una respuesta del sistema externo.
process: Tiene información sobre el proceso al cual pertenece la actividad.
processId: Número de identificación del caso (idCase).
processCreationDate: Fecha de creación del caso.
processSolutionDate: Fecha de solución del caso.
processWorkflowClass: Toda la información de este nodo es información del proceso (metadata) y no información del caso en particular
workflowClassId: Número de identifiacación (o llave) del proceso.
workflowClassName: Nombre del proceso.
workflowClassDisplayName: Nombre a mostrar del proceso.
workflowClassDescription: Descripción del proceso.
workflowClassHelpText: Texto de ayuda del proceso.
workflowClassHelpURL: URL de ayuda del proceso.
workflowClassDisplayOrder: Orden en el cual apareceerá el proceso en la aplicación web.
workflowClassCreationDate: Fecha de creación del proceso.
workflowClassGlobalForm: Número de identificación de la forma global del proceso (cero si no está configurada).
workflowClassAllocationPrinciple: Reservado para uso futuro.
workflowClassProcessType: Tipo de proceso.
workflowClassDisplay: Indica si el proceso es visible o no.
workflowClassUseParentRadicationNumber: Indica si un caso de este proceso utiliza su propio número de creación o si es el mismo número que el del proceso padre (si es un subproceso).
workflowClassSupportScopes: Indica si el proceso soporta los "scopes" de Bizagi, los cuales son un método eficiente de persistencia de datos.
processError: Contiene información de los errores presentados durante el procesamiento de este método.
errorCode: Código del error, si es que se presentó alguno.
errorMessage: Mensaje de error, si es que se presentó alguno.
Ejemplo
A continuación se presenta el XML de respuesta a la invocación presentada anteriormente:
<comments />