Saltar al contenido principal
Para crear un método GET para Cases:
  1. 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).
  2. 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.
  3. En la pestaña Methods, expanda el método GET.
  4. Haga clic en la pestaña Response y cree dos condiciones de respuesta:

pxIsInternalError

  • Condición: When
  • Nombre de la condición When: pxIsInternalError
  • Tipo de contenido: application/json
  • Código de estado: Param.StatusCode
  

Respuesta correcta

  • Condición: Predeterminado
  • Tipo de contenido: application/json
  • Código de estado: Param.StatusCode
  • Name: etag; Asignar desde: Clipboard; Clave de asignación: Param.eTag
  • Name: cache-control; Asignar desde: Constant; Clave de asignación: “no-cache
  • Description: Response
  • Asignar desde: Clipboard
  • Clave de asignación: Param.Response
Después de configurar el método, debe crear una nueva actividad llamada GetCases:
  1. En la pestaña Parameters, cree tres variables:
    • result de tipo String
    • currentCaseId de tipo String
    • tempResult de tipo String
  2. En la pestaña Steps, complete los siguientes pasos:
    1. 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.
    2. 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.
    3. 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.
    4. Convierta el resultado obtenido en el paso anterior en una cadena y escríbalo en la variable Param.tempResult.
    5. 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.
    6. Compruebe si tempResult está vacío. Si no lo está, agregue el valor de tempResult al resultado principal (es decir, Param.result + Param.tempResult).
    7. Cree la respuesta final ”[“+Param.result+”]” y escríbala en la variable Param.Response.
Para crear una actividad GetCaseDetails:
  1. En la pestaña Parameters, cree tres variables:
    • caseID de tipo String
    • fileName de tipo String
    • listFileName de tipo String
  2. Abra la pestaña Pages & Classes y agregue una página llamada Case de la clase Work-.
  3. En la pestaña Steps, complete los siguientes pasos:
    1. En el campo Method, escriba Obj-Open-By-Handle. En el campo Step page, agregue Case. En el parámetro InstanceHandle, escriba Param.caseID.
    2. 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, .
    3. 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.