Welcome Guest, you are in: Anmelden

CP Wiki

RSS RSS

Navigation



  1. Administration

Suche im wiki
»

Zweck

Mit Hilfe der Klasse TAdapterXMLWriter können Daten als XML zusammengestellt werden. Dabei sorgt die Klasse das die XML Vereinbarungen eingehalten werden und die Daten normiert werden. Die Ausgabe Datei wird immer mittels UTF8 Codierung gespeichert.



Beispiel

Folgendes Beispiel soll die Funktionsweise der TAdapterXMLWriter Klasse verdeutlichen.

procedure ButtonTestSepa_OnClick(Sender: Integer); var aWriter : TAdapterXMLWriter; begin aWriter := TAdapterXMLWriter.Create; try // Optional: Encoding einstellen, entweder encUTF8 für UTF-8 (Multibyte) oder encISO88591 für ISO-8859-1 (Single Byte) aWriter.Encoding := encISO88591; aWriter.WriteStartDocument; aWriter.WriteStartElement('APC:PaymentsContainer'); aWriter.WriteAttributeString('xmlns:APC', 'APC:STUZZA:payments:container:003'); aWriter.WriteAttributeString('xmlns', 'APC:STUZZA:payments:ISO:pain:001:001:02:austrian:001'); aWriter.WriteAttributeString('xmlns:xsi', 'http://www.w3.org/2001/XMLSchema-instance'); aWriter.WriteAttributeString('xsi:schemaLocation', 'APC:STUZZA:payments:container:003 APC:STUZZA:payments:container:003'); //APC:CntnrInf aWriter.WriteStartElement('APC:CntnrInf'); aWriter.WriteStringElement('APC:CntnrId', '08012912121201'); aWriter.WriteStringElement('APC:SndgPty', 'HermannMeier'); aWriter.WriteStringElement('APC:RcvPty', 'ATOBERBANK'); aWriter.WriteEndElement(); //APC:CntnrInf //APC:Msgs aWriter.WriteStartElement('APC:Msgs'); //APC:Crdts aWriter.WriteStartElement('APC:Crdts'); //pain.001.001.02 aWriter.WriteStartElement('pain.001.001.02'); //GrpHdr aWriter.WriteStartElement('GrpHdr'); aWriter.WriteStringElement('MsgId', 'C-001-BH3'); aWriter.WriteStringElement('CreDtTm', formatDateTime_SEPA(now)); aWriter.WriteIntElement('NbOfTxs', 2); aWriter.WriteDoubleElement('CtrlSum', 111.64); aWriter.WriteEndElement(); //GrpHdr aWriter.WriteEndElement(); //pain.001.001.02 aWriter.WriteEndElement(); //APC:Crdts aWriter.WriteEndElement(); //APC:Msgs aWriter.WriteEndElement(); //APC:PaymentsContainer aWriter.SaveToFile('c:\test.xml'); finally aWriter.Free; end; end;

function formatDateTime_SEPA(const aDateTime: TDateTime): string; begin result := FormatDateTime('yyyy-mm-dd', aDateTime) + 'T' + FormatDateTime('hh:nn:ss', aDateTime); end;

ScrewTurn Wiki version 3.0.1.400. Some of the icons created by FamFamFam.