2.1 Export Teilestamm mit Eingang Teil von/bis
// ------------
// Definitionen
// ------------
String(strTeilenummer,strOut,strBez,strMB);
String(strTSS,strTSSMWI,strTSS_Start,strTSS_Stop);
Long(lLockMode,lHandle,lRcDbs);
IpsSetItemParams("EXPORT",6);
AssignString(strTSS,"Teilestamm");
AssignString(strTSSMWI,"TssMwi");
BufCreateBuffer(strTSS,6,0,0);
BufCreateBuffer(strTSSMWI,27,0,0);
AssignString(strTSS_Start," ");
AssignString(strTSS_Stop,"499900000000000");
// ------------------
// Exportdatei öffnen
// ------------------
BufSetFieldFromString(strTSS,3,strTSS_Start);
FileOpen("D:\TEILE.OUT","w",lHandle);
// -----------------
// Ersten Satz lesen
// -----------------
String(strOut,strBez,strTeilenummer);
BufSelectBuffer(strTSS,1,lRcDbs,0);
do:
// ----------------------------------------
// Schleife über alle Sätze mit Endeabfrage
// ----------------------------------------
BufQueryStringFromField(strTSS,3,strTeilenummer);
if ( strTeilenummer > strTSS_Stop )
Jump(leave);
// -------------------------------------------
// Exportsatz füllen, dazu auch MWI-Satz lesen
// -------------------------------------------
BufQueryStringFromField(strTSS,4,strBez);
AssignString(strOut,strTeilenummer);
AppendString(strOut,"|");
AppendString(strOut,strBez);
AppendString(strOut,"|");
BufSelectLookupRecord(strTSS,strTSSMWI,1,1,lRcDbs,0);
if ( lRcDbs == 0)
{
BufQueryStringFromField(strTSSMWI,22,strMB);
AppendString(strOut,strMB);
AppendString(strOut,"|");
}
AppendLF(strOut);
// --------------------
// Exportsatz schreiben
// --------------------
FileWrite(lHandle,strOut);
// -------------
// Nächster Satz
// -------------
BufFetchNext(strTSS,1,lRcDbs);
if ( lRcDbs == 17 )
Jump(leave);
if (lRcDbs == 0)
Jump(do);
leave:
FileClose(lHandle);
