Hallo Franco,
so sollte es gehen
PHP-Code:
ctl-opt dftactgrp(*no);
//------------------------------------------------------------------//
// //
// Parsen XML-DATEN - CCSID DER XML-DATEI MUSS 1208 SEIN //
// //
//----------------- //
// R.Ross 11.2019 * //
//------------------------------------------------------------------//
// XML-Array - Root //
//------------------------------------------------------------------//
dcl-ds Orders qualified;
Head likeds(Head);
end-ds;
//------------------------------------------------------------------//
// Template Head //
//------------------------------------------------------------------//
dcl-ds Head template qualified;
VersionNumber likeds(VersionNumber);
TechnicalReceiver char(20);
TechnicalSender char(20);
OrderNumber char(20);
Nad likeds(Nad) dim(04);
Cnt_Nad int(10);
Line likeds(Line) dim(05);
Cnt_Line int(10);
end-ds;
dcl-ds VersionNumber template qualified;
VersionName char(20);
VersionNo char(20);
end-ds;
//------------------------------------------------------------------//
// Template Nad //
//------------------------------------------------------------------//
dcl-ds Nad template qualified;
FlagOfParty char(02);
AdressGLN char(20);
end-ds;
//------------------------------------------------------------------//
// Template Line - Enthält die Produkte //
//------------------------------------------------------------------//
dcl-ds Line template qualified;
LineItemNumber char(03);
ProductNumber char(10);
Opt likeds(Opt) dim(100);
Cnt_Opt int(10);
end-ds;
//------------------------------------------------------------------//
// Template Options //
//------------------------------------------------------------------//
dcl-ds Opt template qualified;
FeatureLineNumber char(01);
FeatureNumber char(01);
FeatureDescription char(20);
OptionNumber char(01);
OptionDescription char(20);
end-ds;
//------------------------------------------------------------------//
// Processing //
//------------------------------------------------------------------//
main();
*inlr = *on;
//------------------------------------------------------------------//
// Main //
//------------------------------------------------------------------//
dcl-proc Main;
dcl-s LocOptions varchar(128); // XML-Options
dcl-s LocFile varchar(128); // File
dcl-s LocInd uns(10); // Index
dcl-s LocInd2 uns(10); // Index
dcl-s ItemNumber like(Line.LineItemNumber);
dcl-s ProductNumber like(Line.ProductNumber);
dcl-s FeatureDescription like(Opt.FeatureDescription);
LocFile = '/Home/Import/xml/20191031_221735_1TJW5S_2.xml';
LocOptions = 'doc=file case=any allowextra=yes +
countprefix=cnt_ datasubf=data';
clear Orders; // Init XML-Struktur
xml-into Orders %xml(LocFile:LocOptions);
for LocInd = 1 to Orders.Head.Cnt_Line; // Loop Produkte
ItemNumber = Orders.Head.Line(LocInd).LineItemNumber;
ProductNumber = Orders.Head.Line(LocInd).ProductNumber;
for LocInd2 = 1 to Orders.Head.Line(LocInd).Cnt_Opt;
FeatureDescription =
Orders.Head.Line(LocInd).Opt(LocInd2).FeatureDescription;
endfor;
endfor;
end-proc;
//------------------------------------------------------------------//
Bookmarks