Mudanças entre as edições de "TPHXML"
Linha 13: | Linha 13: | ||
===Procedimentos=== | ===Procedimentos=== | ||
+ | *'''NewPHXML''': Função que retorna o objeto criado; | ||
*'''Executar:''' Realiza a leitura do conteúdo e carrega o objeto. | *'''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. | *'''ValorTag(Nivel: Integer; TagInicio: String; Item: String): String''': Retorna o conteúdo da tag e item. | ||
*'''Free''': Libera o objeto da memória. | *'''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=== | ===Exemplo=== | ||
Linha 34: | Linha 39: | ||
ArqXML.Free; | ArqXML.Free; | ||
end; | end; | ||
+ | |||
+ | |||
+ | // O exemplo de gravação de XML | ||
+ | var XML:TPHXML; | ||
+ | begin | ||
+ | XML := NewPHXML; | ||
+ | try | ||
+ | XML.NovoXML('api-request'); | ||
+ | |||
+ | // Adiciona a seção de verificação | ||
+ | XML.AddOpenTag('verification'); | ||
+ | XML.AddTag('merchantId', '{{MerchantId}}'); | ||
+ | XML.AddCloseTag; | ||
+ | |||
+ | // Adiciona a seção de comando | ||
+ | XML.AddTag('command', 'add-payment-order'); | ||
+ | |||
+ | // Adiciona a seção de request | ||
+ | XML.AddOpenTag('request'); | ||
+ | // <Request> .... | ||
+ | XML.AddTag('referenceNum', '{{reference_num}}'); //CON(IDCONTRATO,VERSAOCONTRATO)DATAHORAGERACAO | ||
+ | XML.AddTag('userId', 'Flavis'); | ||
+ | // </Request> .... | ||
+ | XML.AddCloseTag; | ||
+ | |||
+ | Informacao(XML.GetXML); | ||
+ | finally | ||
+ | XML.Free; | ||
+ | end; |
Edição das 09h00min 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('api-request');
// Adiciona a seção de verificação XML.AddOpenTag('verification'); XML.AddTag('merchantId', 'Predefinição:MerchantId'); XML.AddCloseTag;
// Adiciona a seção de comando XML.AddTag('command', 'add-payment-order');
// Adiciona a seção de request XML.AddOpenTag('request'); // <Request> .... XML.AddTag('referenceNum', 'Predefinição:Reference num'); //CON(IDCONTRATO,VERSAOCONTRATO)DATAHORAGERACAO XML.AddTag('userId', 'Flavis'); // </Request> .... XML.AddCloseTag; Informacao(XML.GetXML); finally XML.Free; end;