- Cree un nuevo servicio REST (haga clic en Records → Integration Resources, haga clic con el botón derecho en Service Package y, a continuación, haga clic en el comando Create en el menú contextual).
- En el formulario que se abre, especifique Cases como nombre del servicio, customapi como nombre del paquete, v2 como versión del paquete y cases como nombre de la URI template, y haga clic en Create and open. Nota: Después de crear el servicio, asegúrese de que la URL del método de servicio sea la siguiente: https://Server_Name/prweb/PRRestService/customapi/v2/cases.
- En la pestaña Methods, expanda el método GET.
- Haga clic en la pestaña Response y cree dos condiciones de respuesta:
pxIsInternalError |
| ||
Respuesta correcta |
|
|
|
- En la pestaña Parameters, cree tres variables:
- result de tipo String
- currentCaseId de tipo String
- tempResult de tipo String
- En la pestaña Steps, complete los siguientes pasos:
- Obtenga una lista de todos los casos disponibles para el usuario actual. Para ello, llame a Call pzGetCasesByFilter y seleccione la opción Pass current parameter page. pzGetCasesByFilter escribirá todos los casos en myStepPage.
- Cree un paso con un método Property-Set que devuelva los casos de myStepPage en un bucle. Para ello, agregue un bucle y, en este bucle, seleccione For each element in value list y especifique la propiedad myStepPage.cases. En los parámetros del método, establezca la variable Param.currentCaseID en myStepCase.cases(<CURRENT>).ID.
- Cree un paso para obtener los detalles del caso. Para ello, escriba Call GetCaseDetails en la pestaña Method y luego escriba myStepPage.cases(<CURRENT>) en Step Page. Establezca el parámetro caseID en Param.currentCaseID. Nota: Más abajo se proporcionan instrucciones para crear una actividad GetCaseDetails.
- Convierta el resultado obtenido en el paso anterior en una cadena y escríbalo en la variable Param.tempResult.
- Para generar una cadena JSON válida, agregue una coma al parámetro Param.result (es decir, Param.result + “,”). En el campo When, agregue las dos condiciones siguientes:
- Si @IsParamBlank(tools,“result”) es true, Skip Step; si el parámetro es false, Continue Whens.
- Si @IsParamBlank(tools,“tempResult”) es true, Skip Step; si el parámetro es false, Continue Whens.
- Compruebe si tempResult está vacío. Si no lo está, agregue el valor de tempResult al resultado principal (es decir, Param.result + Param.tempResult).
- Cree la respuesta final ”[“+Param.result+”]” y escríbala en la variable Param.Response.
- En la pestaña Parameters, cree tres variables:
- caseID de tipo String
- fileName de tipo String
- listFileName de tipo String
- Abra la pestaña Pages & Classes y agregue una página llamada Case de la clase Work-.
- En la pestaña Steps, complete los siguientes pasos:
- En el campo Method, escriba Obj-Open-By-Handle. En el campo Step page, agregue Case. En el parámetro InstanceHandle, escriba Param.caseID.
- Cree una nueva propiedad .atachments y rellénela con la lista Case.pyAttachments. Para crear una propiedad attachment, haga clic en el icono de destino de la derecha y, a continuación, haga clic en Create and open en el formulario Create Property. Después, seleccione Page List como tipo de propiedad y escriba Link-Attachment en el campo Page definition, .
- Rellene la página con valores de contenido. En el campo Method, escriba Page-Copy; en el campo CopyFrom, escriba Case; y en el campo CopyInfo, escriba .content.
