Nachfolgend beschreibe ich eine Möglichkeit wie man alle Langtexte eines Artikels zeilengenau als Spalten in eine Datei exportieren kann.
Beispiel:
Die Langtexte(LT00 bis LT04) des Artikels sollen zeilenweise als Splaten in eine CSV-Datei exportiert werden.
Die erste Zeile der CSV-Datei:
Artikel19Prozent;Hierbei handelt es sich um einen Artikel mit 19% MwSt.;LT01_Z1;LT02_Z1;;
……
Einen Export dieser Art kann man bspw. über eine Artikelauswertung erreichen, in der pro Artikel
alle Texte zeilenweise in eine MEMTAB geschreiben werden und diese dann mittels DRUCK_BLOCK[] in die Datei zeilen- und spaltengenau geschrieben werden.
Algorithmus:
Im Ausdruck pro Artikel wird die MEMTAB arttxt gelöscht und wieder aufgebaut.
Struktur:
numerischer PK(Zeilennummer)
5 Textfelder für die Artikeltexte LT00 bis LT04
(bspw. über die Rahmen 11, 72 bis 75 im Artikelstamm)
Die Artikelnummer wird in der MEMTAB nicht benötigt, weil diese artikelspezifisch ist und bei jedem Artikel neu aufgebaut wird.
Weiterhin finden im PA-Block notwendige Initialisierungen statt.
Die Textblöcke LA00 bis LA04 (Langtextzeile Währung 00 bis Währung 04) werden nacheinander ausgegeben.
Um die Texte den richtigen Zeilen zuzuordnen wird pro Textblock eine eigene IV für die Zeilennummer hochgezählt.
Die jeweilgen Texte(über SPP_TEXTZ) werden dann in die MEMTAB arttxt mit der entsprechenden Zeilennummer geschrieben.
Im Fuß pro Artikel(FUPA) wird die Zeilenanzahl der MEMTAB arttxt ermittelt(IV6) und entsprechend oft der Block FREI01 mittels DRUCK_BLOCK[FREI01!IV6] aufgerufen.
In dem Block FREI01 wird über AKT_ZZEILE die jeweilige Durchlaufnummer bestimmt, um mit dieser die Textspalten der Zeile aus der MEMTAB zu ermitteln.
Diese werden dann in die Datei beginnend mit der Artikelnummer per Semikolon getrennt ausgegeben.
Dadurch stehen alle Textspalten eines Artikels zeilengenau in der Datei.
Auswertung fmtfaaus.700:
Ergebnis der Auswertung:
