Usina BRAdvPL Guia
Entrar
← Todos os tópicos
GUIA PRÁTICOEm revisão

Leitura e geração de XML

TXmlManager():New(); Parse(cXml); Save2String()

Analisa e serializa XML com TXmlManager.

Leitura e geração de XMLAdvPL
01 · VISÃO GERAL

Visão geral

TXmlManager representa uma árvore XML e permite percorrê-la e serializá-la. Parse devolve lógico: somente após sucesso se deve consultar a árvore; Error fornece o diagnóstico de falha. Save2String gera XML da árvore atual, sem prometer igualdade byte a byte com a entrada. A documentação marca XmlParser como obsoleto e recomenda TXmlManager. O exemplo comunitário em TLPP trata Parse e consulta um nó com XPath; adaptamos apenas a criação e a verificação de erro para um exemplo mínimo em AdvPL. (Fontes: refs. 1–5.)

02 · SINTAXE

Sintaxe

TXmlManager():New(); Parse(cXml); Save2String()
03 · EXEMPLO PRÁTICO

Exemplo comentado

#Include "Protheus.ch"

User Function Ed506()
    Local oXml := TXmlManager():New()
    Local cXml := "<item><code>ED01</code></item>"
    // Verificar o parse antes de usar a arvore.
    If oXml:Parse(cXml)
        ConOut(oXml:Save2String())
    Else
        ConOut(oXml:Error())
    EndIf
    FreeObj(oXml)
Return Nil
Resultado esperado

Em caso de sucesso, imprime XML contendo item/code com ED01. Em revisão: exemplo editorial não compilado nem executado em Protheus. Conferir includes, release, RDD e contexto antes de homologar.

BOAS PRÁTICAS
  • Definir encoding, escapar conteúdo dinâmico e limitar tamanho de entrada. Parse não substitui validação de esquema ou regras do negócio. Liberar o objeto também no tratamento de falhas.
  • Em revisão: exemplo editorial não compilado nem executado em Protheus. Conferir includes, release, RDD e contexto antes de homologar.

Conteúdos relacionados

REFERÊNCIAS
  1. TOTVS. Classe+TXmlManager. TDN. Consulta em 2026-10-27.
  2. TOTVS. TXmlManager%3AParse. TDN. Consulta em 2026-10-27.
  3. TOTVS. TXmlManager%3ASave2String. TDN. Consulta em 2026-10-27.
  4. TOTVS. XmlParser. TDN. Consulta em 2026-10-27.
  5. Atilio/Terminal de Informação. Exemplo TLPP video0223; commit 7d275a7. Consulta em 2026-10-27.
Situação
Em revisão
Página criada em
Última revisão em
Idioma original
Português
Revisão
Usina.BR
0 comentário(s) aprovado(s)

Comentários

Ainda não há comentários aprovados.

Entre com Google ou Microsoft para comentar.

Powered by Usina Docs · Alpha