Home delphi berlin 10.1 IXMLDOCUMENT root node prefix
Reply: 0

delphi berlin 10.1 IXMLDOCUMENT root node prefix

user3231
1#
user3231 Published in April 26, 2018, 5:17 pm

i am trying to create XML in delphi berlin 10.1 and i need to obtain a file like this:

<?xml version="1.0" encoding="UTF-8"?>
<p:FatturaElettronica versione="FPA12" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:p="http://ivaservizi.agenziaentrate.gov.it/docs/xsd/fatture/v1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ivaservizi.agenziaentrate.gov.it/docs/xsd/fatture/v1.2 http://www.fatturapa.gov.it/export/fatturazione/sdi/fatturapa/v1.2/Schema_del_file_xml_FatturaPA_versione_1.2.xsd">
  <FatturaElettronicaHeader>
    <DatiTrasmissione>
      <IdTrasmittente>
        <IdPaese>IT</IdPaese>
        <IdCodice>01234567890</IdCodice>
      </IdTrasmittente>
      <ProgressivoInvio>00001</ProgressivoInvio>
      <FormatoTrasmissione>FPA12</FormatoTrasmissione>
      <CodiceDestinatario>AAAAAA</CodiceDestinatario>
    </DatiTrasmissione>
...

and i wrote this procedure

    procedure Tfattura2_new_form.Button1Click(Sender: TObject);
    Var
      XML : IXMLDOCUMENT;
      RootNode, CurNode, header[...]: IXMLNODE;
    begin
      XML := NewXMLDocument;
      XML.Encoding := 'utf-8';
      XML.Options := [doNodeAutoIndent]; 
      RootNode := XML.AddChild('FatturaElettronica');
      RootNode.Attributes['versione']:='FPA12';
      RootNode.DeclareNamespace('ds','http://www.w3.org/2000/09/xmldsig#');
      RootNode.DeclareNamespace('p','http://ivaservizi.agenziaentrate.gov.it/docs/xsd/fatture/v1.2');
      RootNode.DeclareNamespace('xsi','http://www.w3.org/2001/XMLSchema-instance');
   [...]

      header := RootNode.AddChild('FatturaElettronicaHeader');
      DatiTrasmissione := header.AddChild('DatiTrasmissione');

      IdTrasmittente :=  DatiTrasmissione.AddChild('IdTrasmittente');
          [...]
    XMl.SaveToFile('C:\file.xml');
end;

now the problemi is that i need to have prefix p in root node (p:FatturaElettronica... ) but if I don't know how: if i set

RootNode := XML.AddChild('p:FatturaElettronica');

in xml file i have prefix p: in every tag

<?xml version="1.0" encoding="utf-8"?>
<p:FatturaElettronica versione="FPA12" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:p="http://ivaservizi.agenziaentrate.gov.it/docs/xsd/fatture/v1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ivaservizi.agenziaentrate.gov.it/docs/xsd/fatture/v1.2 http://www.fatturapa.gov.it/export/fatturazione/sdi/fatturapa/v1.2/Schema_del_file_xml_FatturaPA_versione_1.2.xsd">
  <p:FatturaElettronicaHeader>
    <p:DatiTrasmissione>
      <p:IdTrasmittente>
        <p:IdPaese>IT</p:IdPaese>
        <p:IdCodice>03444630135</p:IdCodice>
      </p:IdTrasmittente>
      <p:ProgressivoInvio>23</p:ProgressivoInvio>
      <p:FormatoTrasmissione>FPR12</p:FormatoTrasmissione>
      <p:CodiceDestinatario>0000000</p:CodiceDestinatario>
    </p:DatiTrasmissione>

how i can fix it? Thankyou.

You need to login account before you can post.

About| Privacy statement| Terms of Service| Advertising| Contact us| Help| Sitemap|
Processed in 0.329127 second(s) , Gzip On .

© 2016 Powered by mzan.com design MATCHINFO