Lade...
 

CX_ASCII_FILE::ReformatRecord

CX_ASCII_FILE::ReformatRecord

Beschreibung:

Mit dieser Funktion wird ein mit SetRecordFormat definierte Satzformat  geändert. Unter dem Satzformat ist dabei nicht der komplette Aufbau eines Satzes, sondern nur die Definition der Felder, die für die aktuell anstehende Verarbeitung benötigt werden, zu verstehen. 

Code-Beispiel:
[ 0 48 ] 48 TRUE file Call(SetRecordFormat) ::::::::::::::::::::::::::::::::::::::::::: // Record type 6 file Call(GetFieldFromBuffer) -> recordType recordType case "A": [ 0 18 19 8 27 5 32 2 34 14 ] TRUE file Call(ReformatRecord) "L": [ 0 18 19 6 25 5 30 2 32 16 ] TRUE file Call(ReformatRecord) "M": continue endCase

Der Zahlen-Vektor kann sowohl Längenangaben, als auch Positionsangaben, enthalten. Wird in dem Wahrheitswert TRUE übergeben, so besteht der Vektor aus Paaren, die sich jeweils aus einer Position und einer Längenangabe zusammensetzen. Dabei können u.U. Leerräume entstehen, falls eine Position um mehr als eine Stelle von der Position, die sich aus der Summe der vorhergehenden Position und deren Längenangabe zusammensetzt, entfernt ist. Ein Beispiel hierfür ist weiter unten aufgeführt. Wird hingegen FALSE übergeben, so besteht der Vektor nur aus Längenangaben, was auch zur Folge hat, dass keine Leerräume mehr entstehen können.

Stack
Stack Position Objekttyp Kurzbeschreibung
Stack(IN) Top CX_ASCII_FILE  Datei
  Top-1 INTEGER Wahrheitswert, der anzeigt, ob in dem Vektor auch Positionen enthalten sind
    VECTOR<INTEGER> die Feldlängen (und evt. Positionen)
Stack(OUT) Top  -  -
Funktionsaufruf: Call(ReformatRecord)