Mudanças entre as edições de "TPHXML"
(→Exemplo) |
|||
Linha 46: | Linha 46: | ||
XML := NewPHXML; | XML := NewPHXML; | ||
try | try | ||
− | XML.NovoXML(' | + | XML.NovoXML('TagPrincipal'); |
− | |||
// Adiciona a seção de verificação | // Adiciona a seção de verificação | ||
− | XML.AddOpenTag(' | + | XML.AddOpenTag('CampoID'); |
− | XML.AddTag(' | + | XML.AddTag('ID', 'ID'); |
XML.AddCloseTag; | XML.AddCloseTag; | ||
− | |||
// Adiciona a seção de comando | // Adiciona a seção de comando | ||
− | XML.AddTag(' | + | XML.AddTag('Nome', 'Teste'); |
− | |||
// Adiciona a seção de request | // Adiciona a seção de request | ||
− | XML.AddOpenTag(' | + | XML.AddOpenTag('SubItem'); |
− | // < | + | // <SubItem> .... |
− | XML.AddTag(' | + | XML.AddTag('Sequencia', '1'); |
− | XML.AddTag(' | + | XML.AddTag('Nome', 'Teste1'); |
− | // </ | + | // </SubItem> .... |
XML.AddCloseTag; | XML.AddCloseTag; | ||
Edição das 09h02min de 22 de novembro de 2023
O objeto TPHXML pode ser utilizado para realizar a leitura de conteúdos em formato XML.
Propriedades
Nome | Tipo | Descrição |
---|---|---|
Arquivo | String | Conteúdo do XML. |
Procedimentos
- NewPHXML: Função que retorna o objeto criado;
- Executar: Realiza a leitura do conteúdo e carrega o objeto.
- ValorTag(Nivel: Integer; TagInicio: String; Item: String): String: Retorna o conteúdo da tag e item.
- Free: Libera o objeto da memória.
- GetTag(const NomeTag: string): string: Retorna o conteúdo da Tag.
- NovoXML(const TagPrincipal: string): Inicia o XML com a Tag principal passada por parâmetro.
- AddOpenTag(const ATagName: string): Inicia uma Tag que não há valor e há Tags dentro da Tag Informada.
- AddTag(const ATagName, ATagValue: string): Adiciona uma nova tag com o nome e o valor informado.
- AddCloseTag: Realiza o fechamento da ultima Tag aberta </>.
- GetXML: Retorna o XML construído em forma de texto.
Exemplo
// O exemplo de leitura de códigos de produtos de XML de NF-e ArqXML := NewPHXML; try ArqXML.Arquivo := XMLString; // String com o conteúdo XML ArqXML.Executar; while ArqXML.ValorTag(1, 'det', , I + 1, 'cProd') <> EmptyStr do begin V_CodProduto := ArqXML.ValorTag(1, 'det', , I + 1, 'cProd'); I := I + 1; end; finally ArqXML.Free; end;
// O exemplo de gravação de XML var XML:TPHXML; begin XML := NewPHXML; try XML.NovoXML('TagPrincipal'); // Adiciona a seção de verificação XML.AddOpenTag('CampoID'); XML.AddTag('ID', 'ID'); XML.AddCloseTag; // Adiciona a seção de comando XML.AddTag('Nome', 'Teste'); // Adiciona a seção de request XML.AddOpenTag('SubItem'); // <SubItem> .... XML.AddTag('Sequencia', '1'); XML.AddTag('Nome', 'Teste1'); // </SubItem> .... XML.AddCloseTag; Informacao(XML.GetXML); finally XML.Free; end;