La API para completar asignaciones permite completar una asignación pendiente existente. Finaliza una tarea con todas las opciones seleccionables aprobadas, rechazadas o completadas. Esta API utiliza el método POST para completar una asignación pendiente existente.
Información general de la API
A continuación, se ofrece información general sobre la API para iniciar procesos:
-
Finaliza una tarea con todas las opciones seleccionables, por ejemplo, aprobadas, rechazadas o completadas. Mientras se completa la tarea, también se pueden proporcionar comentarios con las siguientes opciones:
-
Por id. de tarea.
-
Proporcionando el processID y el nombre de la tarea. En caso de que se encuentren varias tareas pendientes para el nombre de tarea en cuestión, se completará cualquiera de ellas.
-
-
La API admite la propiedad de la tarea de del proceso de workflow «Exigir revisión», lo que significa que una tarea no puede completarse si su documento correspondiente aún no se ha revisado.
-
Una tarea no se puede establecer para que se revise desde las API.
-
Para «Procesos de workflow de Excel», se puede proporcionar un archivo de Excel actualizado.
-
La API admite la propiedad «AllowReplacement» de la tarea de proceso de workflow. Por ejemplo, si esta propiedad es true, solo se aceptará el archivo de Excel; de lo contrario, la API generará un error.
-
El archivo de Excel debe pertenecer a la solución de procesos, biblioteca y aplicación de esta tarea.
-
-
Para el proceso de workflow de formularios, pueden proporcionarse datos de formulario.
-
Los datos de formulario deben tener el formato JSON. Asimismo, en el caso de los campos de formulario no repetitivos, la API actualizará únicamente los campos proporcionados en el formulario (si no se proporciona ningún campo, se conservará su valor existente en el formulario) y si se proporcionan datos de tabla de repetición en JSON, los datos de tabla del formulario existentes se sobrescribirán por completo con los nuevos datos.
-
Las reglas de campo, las reglas de vista, etc., no se activarán al actualizar los datos de los campos de formulario, por lo que el sistema que llama debe asegurarse de enviar datos válidos del formulario.
-
No se admiten datos de formulario en formato XML.
-
-
Esta API no admite datos adjuntos ni documentos auxiliares.
-
Comprobación en aprobación no se aplica a la API de acceso digital. El usuario puede completar la tarea desde la API de acceso digital sin validar las credenciales. Se recomienda establecer la propiedad “Comprobación en aprobación” en False para el caso de uso de la API o deshabilitar el acceso a la API de tales soluciones.
Cuerpo de solicitud y respuesta
Esta API se utiliza para completar una asignación pendiente existente con el siguiente formato de solicitud y respuesta:
Contrato de datos de solicitud:
Nombre | Tipo | Restricción | Descripción |
---|---|---|---|
AssignmentId | guid | - | Id. de la asignación por completar. Se debe proporcionar AssignmentId o tanto AssignmentName como ProcessId. |
FileContent | byte[] | - | Necesario para la tarea de proceso de workflow de Excel. Incluye un archivo de datos de Excel que se actualiza con la finalización de la tarea. |
Decisión | cadena | Obligatorio | Estado de la decisión del usuario que puede ser: Rechazado, Aprobado o Completado. |
Nota | cadena | - | Comentarios de la asignación. |
TeamspaceId | guid | - | Id. de la aplicación. |
ProcessId | guid | - |
Id. del proceso de la tarea. Se debe proporcionar AssignmentName con esta propiedad. Se debe proporcionar AssignmentId o tanto AssignmentName como ProcessId. |
AssignmentName | cadena | - |
Nombre de la tarea. Se debe proporcionar ProcessId con esta propiedad. Se debe proporcionar AssignmentId o tanto AssignmentName como ProcessId. |
Formfields | JSON | - | Datos de formulario en formato JSON. |
Contrato de datos de respuesta:
Nombre | Tipo | Restricción | Descripción |
---|---|---|---|
status | Boolean (booleano) | True (para operación correcta), False (en caso de error). |
Ejemplo de solicitud y respuesta
Los siguientes ejemplos muestran el uso de la API.
Ejemplo 1
Ruta: http://cha-en-vstwp418:8090/svr/api/v1/Processextn/CompleteAssignment
Carga útil de solicitud
{ "FileContent" : null, "Decision": "Approved", "Note": "Completed through PE", "AssignmentId": "07b25c54-d862-4270-af32-4654b321b3d7", "Formfields": { "my:myFields": { "my:field_1": "test_new1", "my:field_2": "test_new2", "my:Repeating_Table_2": { "my:Repeating_Content": { "my:field_3": "R1_activity", "my:field_4": "R2_activity" } } } } }
Carga útil de respuesta
-
Cuando la acción de tarea (por ejemplo, completar, aprobar o rechazar) se completa correctamente:
True
-
Para una tarea ya completada:
[{"ErrorCode":"Task Process Already Completed","Message":"Task Process Already Completed","errorPrameters":[]}]
-
Cuando no se encuentra el id. de la asignación en cuestión:
[{"ErrorCode":"InvalidAssignment_AssignmentReassigned","Message":"Invalid assignment id: 2ffdba51-2f93-4502-b07e-02972ec8d1fa","errorPrameters":[]}]
Ejemplo 2
Ruta: http://cha-en-vstwp418:8090/svr/api/v1/Processextn/CompleteAssignment
Carga útil de solicitud
{ "FileContent" : null, "Decision": "Approved", "Note": "Completed through PE", "ProcessId": "07b25c54-d862-4270-af32-4654b321b3d7", "AssignmentName": "Activity 3", "Formfields": { "my:myFields": { "my:field_1": "test_new1", "my:field_2": "test_new2", "my:Repeating_Table_2": { "my:Repeating_Content": { "my:field_3": "R1_activity", "my:field_4": "R2_activity" } } } } }
Ejemplo de error en caso de que el usuario haga por error una llamada GET en lugar de una llamada POST:
{ "Message": "The requested resource does not support http method 'GET'." }
Ejemplo de error en caso de que el id. de la asignación sea incorrecto:
[{"ErrorCode":"InvalidAssignment_AssignmentReassigned","Message":"Invalid assignment id: 07b25c54-d862-4270-af32-4654b321b3d7","errorPrameters":[]}]