Tema anterior: ca_pam_getSOAPData(serviceURL, methodName, inlineText, soapVersion, stripXMLNamespacesFromResponse, callBack)Tema siguiente: Análisis de XML


Ejemplo: método SOAP

Este ejemplo utiliza el método del servicio Web getStartRequestForms de CA Process Automation para rellenar una tabla con todos los Formularios de solicitud de inicio de la Biblioteca. El método del servicio Web getStartRequestFormsweb devuelve todos los formularios de solicitud de inicio en una carpeta especificada.

Nota: Este método utiliza el método ca_pam_convertXMLToJSObject(xmlString, elementTagName), descrito más adelante en esta sección, para crear un objeto de JavaScript a partir de XML.

  1. Cree un formulario de solicitud de interacción y diséñelo tal y como muestra la ilustración siguiente:

    Método SOAP en un formulario

  2. Agregue los campos siguientes al formulario de solicitud de interacción:
    soapService

    Establezca este campo en la siguiente URL:

    http://hostname:portNumber/itpam/soap
    
    soapAction

    Establezca este campo de texto como getStartRequestForms.

    soapData

    Rellene esta área de texto con el código siguiente:

    <tns:getStartRequestForms xmlns:tns="http://www.ca.com/itpam">
     <tns:auth>
      <!--xsd:Choice Type-->
      <tns:token>token__</tns:token>
      <tns:user>pamadmin</tns:user>
      <tns:password>pamadmin</tns:password>
     </tns:auth>
     <tns:filter>
      <tns:lookUpPath isRecursive="true">/</tns:lookUpPath>
     </tns:filter>
    </tns:getStartRequestForms>
    
    retrieveSRF

    Establezca el atributo onclick de esta casilla de verificación como el valor ca_fd.js.retreiveSRFAndPopulateTable().

  3. Cree una tabla denominada srfs.
  4. Agregue los campos de texto de nombre y refPath como columnas a la tabla de srfs.
  5. Agregue el siguiente texto a la sección Script del formulario:
    { 
      retreiveSRFAndPopulateTable: function() 
        { 
           var callBack = new Object();
           callBack.onSuccess = function(result)
             {
                var srfResult = ca_pam_ convertXMLToJSObject (result,'startRequest');
                var tableArray = new Array();
                for( i=0;i<srfResult .length;i++)
                  {
                     var object = new Object();
                     object.name = srfResult [i]["name"];
                     object.refPath = srfResult [i]["refPath"];
                     tableArray[i] = object ;
                  }
                ca_pam_clearTableData('Form.srfs',0,ca_pam_getTableRowCount('Form.srfs')-1);
                ca_pam_setTableDataFromJSObject('Form.srfs',tableArray);
             }
           callBack.onFailure = function(caught)
             {
                alert(caught);
             }
           ca_pam_getSOAPData(ca_pam_getTextFieldValue('Form.soapService'),ca_pam_getTextFieldValue('Form.soapAction'),ca_pam_getTextFieldValue('Form.soapData'),'SOAP_1_1',true,callBack);
        }
    }
    
  6. Haga clic en Guardar.
  7. Para hacer que CA Process Automation verifique que la tabla de formularios de solicitud de inicio se rellene dinámicamente con datos, seleccione la casilla de verificación.

El script se ejecuta cuando se cambia el valor de la casilla de verificación. El script rellena la tabla de formularios de solicitud de inicio dinámicamente con los formularios de solicitud de inicio que se devuelven desde la llamada de SOAP El método getSOAPData se utiliza para hacer una consulta de SOAP para recuperar los datos y convertXMLToJSObject se utiliza para convertir la respuesta XML en un objeto de JavaScript. El objeto de JavaScript se puede utilizar para rellenar la tabla dinámicamente mediante el método ca_pam_setTableDataFromJSObject.