Report für Textfile

Hallo Ich möchte für eine Datenübergabe diverse Felder des Sales Headers in eine Textdatei schreiben. Diese sollte kommagetrennt sein. In die gleiche Zeile anschliessend müssten noch alle Artikelnummern, welche auf diesem Auftrag sind. Ist dies mit einem vertrettbarem Aufwand möglich? Gruss Jörg

Ja.

Sorry, war nur’n Scherz, obige Antwort war nicht wirklich hilfreich [:D] Nun, ich kann mir folgende Möglichkeit vorstellen: Ein Report mit DataItem “Sales Header” mit nachgeordnetem DataIItem “Sales Line”. Das “handling” der Exportdatei geschieht manuell (Erstellen/Öffnen in OnPreReport, Zeilen schreiben in “Sales Line - OnAfterGetRecord”, Datei schließem OnPostReport) In Jeder SalesLine wird das Ende der Zeile gesucht und die nächste Artikelnummer angefügt; bei einem neuen Auftrag wird eine neue Zeile erzeugt Wichtig ist hier, die Eigenschaft TEXTMODE = FALSE gesetzt ist und der Zeilenumbruch “manuell” erzeugt wird … OBJECT Report 66666 Test { OBJECT-PROPERTIES { Date=07.11.05; Time=[ 9:59:47]; Modified=Yes; Version List=; } PROPERTIES { ProcessingOnly=Yes; OnPreReport=BEGIN CR := 13; LF := 10; ExportFile.WRITEMODE(TRUE); ExportFile.TEXTMODE(FALSE); ExportFile.QUERYREPLACE(TRUE); ExportFile.CREATE(ExportFilename); ExportFile.WRITE('Order No.,Order Date,Posting Date,Sell-to Cust.No,Bill-to Cust.No,Item No.'); END; OnPostReport=BEGIN ExportFile.WRITE(FORMAT(CR) + FORMAT(LF)); ExportFile.CLOSE; END; } DATAITEMS { { PROPERTIES { DataItemTable=Table36; DataItemTableView=SORTING(Document Type,No.) WHERE(Document Type=CONST(Order)); PrintOnlyIfDetail=Yes; OnAfterGetRecord=BEGIN ExportFile.WRITE(FORMAT(CR) + FORMAT(LF)); ExportFile.WRITE( FORMAT("No.") + ',' + FORMAT("Order Date") + ',' + FORMAT("Posting Date") + ',' + FORMAT("Sell-to Customer No.") + ',' + FORMAT("Bill-to Customer No.")); END; ReqFilterFields=No.; } SECTIONS { { PROPERTIES { SectionType=Body; SectionWidth=12000; SectionHeight=846; } CONTROLS { } } } } { PROPERTIES { DataItemIndent=1; DataItemTable=Table37; DataItemTableView=SORTING(Document Type,Type,No.,Variant Code,Drop Shipment,Location Code,Shipment Date) WHERE(Type=CONST(Item), No.=FILTER(<>'')); OnAfterGetRecord=BEGIN ExportFile.WRITE(',' + FORMAT("No.")); END; DataItemLink=Document Type=FIELD(Document Type), Document No.=FIELD(No.); } SECTIONS { { PROPERTIES { SectionType=Body; SectionWidth=12000; SectionHeight=846; } CONTROLS { } } } } } REQUESTFORM { PROPERTIES { Width=9020; Height=3410; } CONTROLS { { 1000000000;TextBox;3410 ;0 ;5610 ;440 ;CaptionML=ENU=Filename; SourceExpr=ExportFilename; OnAssistEdit=BEGIN CmDlg32.FileName := ExportFilename; CmDlg32.ShowSave; ExportFilename := CmDlg32.FileName; END; } { 1000000001;Label ;0 ;0 ;3300 ;440 ;ParentControl=1000000000 } } } CODE { VAR CmDlg32@1000000004 : OCX "{F9043C85-F6F2-101A-A3C9-08002B2F49FB}:'Microsoft Common Dialog Control, version 6.0'"; ExportFilename@1000000000 : Text[250]; ExportFile@1000000001 : File; CR@1000000002 : Char; LF@1000000003 : Char; BEGIN END. } }