GetCases
From Business Process Management, BPM and Workflow Automation Wiki | BizAgi BPMS
<keywords content="keywords"> getCases, getcases, getCasesAsString, getcasesasstring, get Cases, get cases, SOA Layer, soa layer, WorkflowEngineSOA, workflowenginesoa, Workflow Engine SOA, workflow engine soa </keywords>
Contents |
getCases
Method from the WorkflowEngineSOA web service, used to consult pending cases in a Bizagi project from external applications. This document also applies to the method getCasesAsString.
Description
This method receives an XML with several filters that will be used to get only cases meeting those search criteria. The method getCases receives and returns an XmlDocument while getCasesAsString receives and returns an XML in string format.
Input Data
The expected XML must comply with this XSD schema (copy it from here):
Parameter 1 (XmlDocument or String Type)
BizAgiWSParam: Root node. All possible filters are included in here and are optional. If more than one search criterium is used, the result would be only cases complying with all the conditions.
domain: Search cases whose assigned users belong to this domain.
userName: Search cases whose assigned user is the one indicated here.
radNumber: Cases belonging to this creation number (case number).
applicationName: Cases belonging to the application with this name (enter the Name, not the display name).
categoryName: All open cases of this category (enter the Name, not the display name).
processName: Gets cases of this process (enter the Name not the display name).
idCase: The cases with this idCase (case identification number).
creationDate: Refers to date when a case was created.
expirationDate: Date when a case is scheduled to expire (according to the configured duration).
From: To be used as sub-node of either the creationDate or expirationDate; it allows a date range to be given. This will be the initial date for the search (the older one).
To: To be used as sub-node of either the creationDate or expirationDate; it allows a date range to be given. This will be the end date for the search (the more recent).
Note: When including dates in an XML, it is highly recommended to use the XML date format; this is YYYY-MM-DD. To also include the hour use YYYY-MM-DDT00:00:00. |
Example
To consult cases created from May 17 at 4 pm to May 21 at 4 pm, and with assigned user "Raulp" the request XML will be:
Output Data
The returned XML must comply with this XSD schema (copy it from here):
The response includes basic information of the cases (and process) matching the query. Here is the description of each data contained in the returned XML.
processes: Root node of the response, it contains a "process" node for each activity included in the result.
process: This element is included for each returned case.
processId: Identification number of the case (idCase).
processRadNumber: Alphanumeric value corresponding to the creation number of the case.
savedMessage: Reserved for future use.
Entities: Reserved for future use.
processCreationDate: Case creation date.
processSolutionDate: Case solution (closure) date.
processWorkflowClass: The information in this node is all about the process (process metadata) not about the particular case.
workflowClassId: Identification number (or key) of the process.
workflowClassName: Name of the process.
workflowClassDisplayName: Display name of the process.
workflowClassDescription: Process description.
workflowClassHelpText: Process help text.
workflowClassHelpURL: Help URL for the process.
workflowClassDisplayOrder: The order in which the process will be viewed in the web application.
workflowClassCreationDate: Creation date of the process.
workflowClassAllocationPrinciple: Reserved for future use.
workflowClassProcessType: Process type.
workflowClassDisplay: Indicates whether the process is visible or not.
workflowClassUseParentRadicationNumber: Indicates if a case of this process uses its own creation number or the same number as the parent process (if it is a subprocess).
workflowClassSupportScopes: Indicates if the process supports Bizagi "scopes"; which is an efficient method of data persistence.
processError: If the process of consulting cases is not successful, this element will contain information of the error.
errorCode: Code of the error that occurred, otherwise it will be empty.
errorMessage: Message of the error that occurred, otherwise it will be empty.
CurrentWorkItems: The set of activities available for the case.
workItem: This is a specific activity (an instance of a task) of the process that is active for the case.
workItemId: Identification number or key of the activity.
workItemState: Current state of the activity.
workItemEntryDate: Date and time when the case reached this activity.
workItemDuration: Is the estimated duration, in minutes, for this activity.
workItemEstimatedSolutionDate: Is the case’s estimated solution date.
task: Contains information about the task corresponding to the activity.
taskId: Identification number or key of the task.
taskName: Name of the task.
taskDisplayName: Display name of the task.
taskDescription: Task’s descriptive text.
taskHelpText: Task’s help text.
HelpUrl: URL with information of the activity.
taskEstimatedDuration: Is the estimated duration, in minutes, for the task.
taskType: Type of task.
taskCost: The estimated cost of the task. This value, like the estimated dates, is configured and determined by the designer of the process.
taskPriority: Fulfillment priority of the task.
taskTransactional: An indicator stating if a task is transactional.
taskCompensation: States if this is a compensation task.
taskTimerEventDuration: If this is a timer task, it will contain its duration in minutes.
AllowsReassign: A mark showing if this task may be reassigned to another user.
SendNotification: Indicates if an email must be sent to a user informing of the availability of the task.
SendAlarms: Indicates if an email must be sent to the assigned user informing that the task is at risk of being overdue.
ExtendedEstimatedDuration: Estimated extended time duration.
Form: Reserved for future use.
IsAsynchTask: Specifies if this is an asynchronous task or not. Usually used for interfaces.
NumberOfRetries: Applies for asynchronous tasks. Is the number of automatic retries for the task in case it fails (an exception is thrown).
RetryInterval: Applies for asynchronous tasks. Is the time (in minutes) between each retry.
ShowFeedback: Applies for asynchronous tasks. Indicates if the user will be informed when an error occurs.
TimeoutSeconds: Applies for asynchronous tasks. Time (in seconds) the asynchronous task will wait for the external system to respond.
Example
Here is the XML in response to the one sent as an example:
The response is only one case.
Go to SOA Layer <comments />