Argomento precedente: ca_pam_getSOAPData(serviceURL, methodName, inlineText, soapVersion, stripXMLNamespacesFromResponse, callBack)Argomento successivo: Analisi XML


Esempio: metodo SOAP

Questo esempio utilizza il metodo di servizio Web getStartRequestForms di CA Process Automation per compilare una tabella con tutti i Moduli di richiesta di avvio nella libreria. Il metodo di servizio Web getStartRequestForms restituisce tutti i Moduli di richiesta di avvio in una cartella specificata.

Nota: per la creazione di oggetti JavaScript da XML, questo metodo utilizza il metodo ca_pam_convertXMLToJSObject(xmlString, elementTagName), descritto più avanti.

  1. Creare un modulo di richiesta interazione e progettarlo nel modo seguente:

    Metodo SOAP in un modulo

  2. Aggiungere i campi seguenti al modulo di richiesta interazione:
    soapService

    Impostare questo campo sull'URL seguente:

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

    Impostare questo campo su getStartRequestForms.

    soapData

    Compilare questa area di testo con il codice seguente:

    <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

    Impostare l'attributo onClick di questa casella di controllo sul valore ca_fd.js.retreiveSRFAndPopulateTable() value.

  3. Creare una tabella denominata srfs.
  4. Aggiungere i nomi e i campi di testo refPath sotto forma di colonne della tabella srfs.
  5. Aggiungere il seguente testo nella sezione Script del modulo:
    { 
      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] oggetto di =;
                  }
                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. Fare clic su Salva.
  7. Se si desidera che CA Process Automation verifichi la popolazione dinamica dei dati nella tabella srfs, selezionare la casella di controllo.

Lo script viene eseguito alla modifica del valore della casella di controllo. Lo script popola in modo dinamico la tabella srfs con i Moduli di richiesta di avvio restituiti dalla chiamata SOAP. Il metodo getSOAPData viene utilizzato per eseguire una query SOAP al fine di recuperare i dati, mentre il metodo convertXMLToJSObject viene utilizzato per convertire il file XML di risposta in un oggetto JavaScript. È possibile quindi utilizzare l'oggetto JavaScript per compilare in modo dinamico la tabella mediante il metodo ca_pam_setTableDataFromJSObject.