Tópico anterior: Análise de XMLPróximo tópico: Criar um formulário simples com funções básicas


ca_pam_convertXMLToJSObject(xmlString, elementTagName)

Cria um objeto JavaScript a partir do XML.

Observação: se o elemento XML tiver reconhecimento de espaço para nome e tiver um prefixo de espaço para nome, use a notação de aspas para acessá-lo.

Parâmetros de entrada
xmlString (string)

Define a sequência de caracteres XML para converter em um objeto JavaScript.

elementTagName (string)

(Opcional) Retorna o elemento que tem o nome da tag especificada. Se o elementTagName não for fornecido, o método retornará o elemento raiz.

Valor de retorno

Retorna um valor de tipo Objeto.

Exemplo

Considere o seguinte XML a ser convertido em um objeto JavaScript:

<?xml version="1.0"?>
<catalog>
   <book id="bk101">
      <author>Gambardella, Matthew</author>
      <title>XML Developer”s Guide</title>
      <genre>Computer</genre>
      <price>44,95</price>
      <publish_date>2000-10-01</publish_date>
      <description>An in-depth look at creating applications 
      with XML.</description>
   </book>
</catalog>

Esse exemplo converte os dados XML acima em um objeto JavaScript.

Observação: se um elemento tiver um atributo e um elemento com o mesmo nome, acesse-o como uma matriz. Na matriz, o primeiro integrante (índice 0) é sempre o atributo e os elementos a seguir.

Exemplo

Considere o seguinte XML a ser convertido em um objeto JavaScript:

<?xml version="1.0"?>
<categories>
    <category name="Weather"> 
        <name part="1">Sunny</name>
        <name part="2">Rainy</name>
    </category>
    <category name="Climate"> 
        <name part="1">Wet</name>
        <name part="2">Dry</name>
    </category>
</categories>

Esse exemplo converte os dados XML acima em um objeto JavaScript.

Exemplo
<Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
	<Header/>
	<Body>
		<getStartRequestFormsResponse xmlns="http://www.ca.com/itpam">
			<startRequests>
				<startRequest name="RahulSrf" refPath="/Folder/">
					<description/>
				</startRequest>
				<startRequest name="Start Request Form" refPath="/RestSupport/">
					<description/>
				</startRequest>
			</startRequests>
		</getStartRequestFormsResponse>
	</Body>
</Envelope>

Esse exemplo mostra o uso do método ca_pam_convertXMLToJSObject(xmlString, elementTagName) com o parâmetro elementTagName.

O script a seguir recupera todos os elementos <startRequest> do XML:

var srfResult = ca_pam_convertXMLToJavaScriptObject(xmlString,'startRequest');

srfResult é uma matriz de todos os elementos startRequest.

Exemplo
<?xml version="1.0"?> 
<note _text="abc"> 
    <_text>Tove</_text> 
</note> 

Esse exemplo mostra um cenário no qual o XML apresenta _text como um elemento ou atributo. Nesse caso, o método cria uma matriz com o nome "_text".

O script a seguir acessa os valores:

var parsedXML= ca_pam_convertXMLToJavaScriptObject(xmlString); 
var textNode= parsedXML["_text"][0]; 
var attributeValue= parsedXML["_text"][1]; 
var childTextNodeValue= parsedXML["_text"][2]["_text"]; 

O script contém o resultado a seguir:

textNode=""; 

(...como não há valor escalar com o nó).

attributeValue="abc"; 
childTextNodeValue="Tove"

Também é possível localizar a função no conteúdo predefinido no CA Process Automation.

  1. Na página inicial, clique em Procurar conteúdo pronto.
  2. Navegue até a pasta Formulários de interação do usuário, 08 Preencher tabela SOAP WS: Preencher tabela de SOAP WS.