| 
 
 
 |  | 
Hinweise
	  | POP ("Post-Processing") Befehlsfolgen
    sind Makro-Befehle mit der die Ausgaben des HitBatch-Clients aufbereitet werden
    können. |  
			  | Sie dienen insbesondere zur Filterung und Umformatierung von CSV-Dateien. |  
			  | Das Programm wird nur noch als Bestandteil des HitBatch-Client ausgeliefert und installiert. |  
			  | Das selbstständige Java-Programm HitPop wird nicht 
	weiter gepflegt |  
			  | Weitere Hinweise siehe analog HitBatch-Client. |  
			 
Versionshistorie
  
    | Version | 
    Verfügbare Funktionen & Neuigkeiten  | 
   
  
    | 29.08.2024 | 
    Neuer Befehl POP_C2DROP | 
   
  
    | 24.05.2021 | 
    Neu: Befehl POP_HDROP - Details 
	siehe unten  | 
   
	
    | 22.05.2021 | 
    Lockfile=- für explizit kein Lockfile | 
   
  
    | 12.05.2021 | 
    Neu: Befehl LAND - Details 
	siehe unten  | 
   
  
    | 02.03.2021 | 
    Neu: Befehl ALTER, ALTERT, ALTERA, ALTERX - Details 
	siehe unten  | 
   
  
    | 05.08.2020 | 
    Neu: Befehl POP_COPY, POP_KREIS, POP_KREIX,
	POP_KREIY - Details 
	siehe unten  | 
   
  
    | 04.06.2020 | 
    Neu: Befehl POP_QUOTE, POP_UNQUOT, POP_3PUNKT - Details 
	siehe unten  | 
   
  
    | 21.12.2016 | 
    Neu: Befehl APPEND zum Aneinanderhängen von Werten 
	verschiedener Spalten 
	Neu: Befehl RENAME zum Umbenennen von Spalten | 
   
  
    | 01.02.2016 | 
    Neu: Befehl POP_LINE_NR zum Generieren von Zeilennummern | 
   
	
    | 18.01.2016 | 
    Neu: Befehl POP_REG_ANT zum variabel Gruppieren von 
	Bestandsregisterzeilen nach Alter, Geschlecht und Kalbung | 
   
	
    | 11.01.2016 | 
    Neu: Befehl zum Formatieren von Dezimalzahlen POP_KOMMA 
	und POP_PROZENT | 
   
	
    | 28.12.2015 | 
    Neu: Befehl zum Hinzufügen von Spalten APP_COLS | 
   
	
    | 20.11.2015 | 
    Neu: Befehl zum Rechnen ADD, SUB, MUL, 
	DIV und zum Vergleich LT, 
	LE, 
	EQ, 
	GE, 
	GT | 
   
	
    | 22.10.2015 | 
    Neu: Befehl REORDER ; bei allen Befehlen mit als 
	Spaltenparameter <c> sind jetzt auch Spaltennamen möglich | 
   
	
    | 29.09.2015 | 
    Neu: Befehl ADD_COL, ADD_VAL, SUB_COL, 
	SUB_VAL, POP_PIN, 
	FUNC_COM  | 
   
  
    | 14.04.2014 | 
    Erweiterungen im Befehl POP_CXDROP | 
   
  
    | 27.12.2012 | 
    Erweiterungen im Befehl POP_CEXCL | 
   
  
    | 04.07.2003 | 
    Erste Version zum Output Post Processing
     | 
   
   
Beschreibung
Allgemeine Hinweise zum HIT-POST-PROCESSING
Damit die Ausgabe in die OUT-Files flexibler angepasst werden kann, um z.B. den Output direkt in Excel-gerechtes CSV zu wandeln (Dezimalpunkt-Problematik)
oder um Timestamps als Input in einem späteren Step nutzen zu können, werden Befehle zum "POST-PROCESSING" eingeführt. 
Es kann eine beliebige Anzahl von Befehlen nacheinander angegeben werden. Ab 
Version 5 kann das vorangestellte POP_ weggelassen werden, d.h. ein
POP_TSTAMP und TSTAMP führen die selbe Aktion durch. 
Alle Befehle werden in der gegebener Folge abgearbeitet. Der jeweils nächste Befehl arbeitet auf die schon veränderten Inhalte
und ggf. veränderten Strukturen (wenn z.B. eine Spalte ausgeschlossen wird, müssen die nachfolgenden Befehle das berücksichtigen). 
Ziel ist es, bestimmte Zeilen oder ganze Spalten zu verwerfen oder die Zeilen oder einzelne Spalten gezielt zu verändern. 
Seit Ende 2015 darf man als große Vereinfachung die Spalten mit Namen statt 
Positions-Nummer angeben. Je nach Kontext müssen  
Aufrufsyntax
		Für das Testprogramm: 
java -cp "HitBatch.jar;HitUpros.jar" HitBatch.HitPop HitPop.ini 
		In der Parameterdatei sowohl für das Testprogramm als auch für den 
		HitBatch: 
[SET-1]
...
POPFILE=dateiname.pop
OUTFILE=dateiname.out
... 
Ablauf
  - Holt die Namen von Input-, Output-, Log- und POP-Befehls-Datei aus der INI-Datei.
 
  -         Lies dann alle Zeile der Inputdatei und schreibt sie unter Ausführung der POP-Befehle in die Outputdatei.
 
  -         Als Input eignen sich Outputdateien aus dem HitBatch.
 
  -         Wenn sich eine Befehlsfolge als geeignet für die Nachbearbeitung einer HitBatch-Outputdatei erwiesen hat,        kann die entsprechende POP-Datei auch direkt im HitBatch verwendet werden.
 
 
  
    | POP_CLEAR | 
    Befehlsstapel löschen, entferne alle POP-Befehle
      aus der Befehlsliste - clear | 
   
  
    | POP_RDROP <val>[;1] | 
    Verwerfe Output-Row wenn irgendwo in der Zeile der Wert <val> vorkommt, 
	ggf. 1:FORCE - dann wirkt es auch auf Headline - row drop | 
   
	
    | POP_FRDROP <val>[;1] | 
    Verwerfe Output-Row wenn die komplette Zeile gleich dem Wert <val> 
	ist, ggf. 1:FORCE - dann wirkt es auch auf Headline - full row drop | 
   
  
    | POP_HDROP | 
    Verwerfe Überschriftzeile - head-row drop | 
   
  
    | POP_RKEEP <val>[;1] | 
    Behalte Output-Row nur wenn irgendwo in der Zeile der Wert <val> vorkommt, 
	ggf. 1:FORCE - dann wirkt es auch auf Headline - row keep | 
   
  
    | POP_CDROP <c>;<val> | 
    Verwerfe Output-Row wenn Spalte <c> (1..n) den Wert <val> hat 
	- column drop | 
   
  
    | POP_CKEEP <c>;<val> | 
    Behalte Output-Row nur wenn Spalte <c> (1..n) den Wert <val> hat 
	- column keep | 
   
  
    | POP_CXDROP <c>;<cmp>;<val1>[;<val2>] | 
    Verwerfe Output-Row wenn Spalte <c> (1..n) verglichen mittels 
	Vergleichs-Operator <cmp> mit Wert <val1> wahr ist. Operatoren sind: "=" / "EQ" 
	/ "!=" / "NE" /">" / "GT" / ">=" / "GE" / "<" / "LT" / "<=" / "LE" / "BW" / "NB" 
	Bei Operatoren BW (between) und NB (not between) wird eine weiterer Vergleichswert (val2) benötigt. | 
   
  
    | POP_C2DROP <c>;<cmp>;<c1>|<[v1]>[;<c2>|<[v2]>] | 
    Verwerfe Output-Row analog POP_CXDROP - aber Vergleichswerte in Brackets [] oder als Spaltennummer oder Spaltenname 
	(HitBatch ab 29.08.2024) | 
   
  
    | POP_RCHNG <old>;<new> | 
    Change Old-String <old> to New-String <new> für die ganze
      Zeile, unabhängig von Spalten | 
   
  
    | POP_CCHNG <c>;<o>;<n> | 
    Change in Spalte <c> Old-String <o> to New-String <n> | 
   
  
    | POP_RENAME <c>;<n> | 
    Rename Spalte <c> to New-Name <n> | 
   
  
    | POP_TSTAMP <c>;<patt> | 
    Formatiere wenn Timestamp in Spalte <c> gemäß Format <patt>, z.B. 
	yyyy-MM-dd-hh.MM.ss.ffffff | 
   
  
    | POP_DATE <c>;<patt> | 
    Formatiere wenn Datum    
      in Spalte <c> gemäß Format <patt>, z.B. dd.MM.yyyy | 
   
  
    | POP_TIME <c>;<patt> | 
    Formatiere wenn Zeit     
      in Spalte <c> gemäß Format <patt>, z.B. hh:MM | 
   
  
    | POP_NUM 
      <c>;<patt>|<NK> | 
    Formatiere wenn Numerisch in Spalte <c> gemäß Format <patt>, z.B.
      ##0,00 oder Anzahl Nachkommastellen <NK> | 
   
  
    | POP_KOMMA <c>;<patt>|<NK> | 
    Formatiert Zahl in Spalte <c> gemäß Format <patt>, z.B. ##0,00 oder in 
	deutschem Standardformat mit Tausenderpunkten und Dezimal-Komma und 
	gewünschten Nachkommastellen-Zahl (NK) | 
   
	
    | POP_PROZENT <c>;<patt>|<NK> | 
    Formatiert Zahl in Spalte <c> als Prozent ( /100 %) gemäß Format <patt>, 
	z.B. ##0,00 oder mit Tausenderpunkten und Dezimal-Komma und gewünschten 
	Nachkommastellen-Zahl (NK) | 
   
  
    | POP_UCASE <c>;<[q]> | 
    Formatiere String    in
      Spalte <c> uppercase, optional Angabe einer anderen Spalte als 
	Quelle | 
   
  
    | POP_LCASE <c>;<[q]> | 
    Formatiere String    in
      Spalte <c> lowercase, optional Angabe einer anderen Spalte als 
	Quelle | 
   
  
    | POP_LOM <c>;<[q]> | 
    Formatiere String    in
      Spalte <c> als Alpha-Ohrmarke, optional Angabe einer anderen Spalte 
	als Quelle | 
   
  
    | POP_BNR <c>;<[q]> | 
    Formatiere String in
      Spalte <c> als Alpha-Betriebsnummer, optional Angabe einer anderen 
	Spalte als Quelle | 
   
  
    | POP_CEXCL <c1>[;<c2>[;...]] | 
    Schließe die Spalte <c1> oder mehrere Spalten generell von der 
	Ausgabe aus. 
	Mehrere Spalten können als Auflistung mit Semikolon, ggf. auch mit einem 
	Minus als Bis-Zeichen angegeben werden, also z.B.  "POP_CEXCL 1;3;5"
	oder "POP_CEXCL 1;-;5;7;9;12;-;20" | 
   
  
    | POP_CONST <c>;<konst> | 
    Ersetze Inhalt in Spalte <c> durch Konstante <konst> | 
   
  
    | ADD_COL <c1>;<c2>;<c3> | 
    Addiere Wert aus Spalte <c2> mit Wert aus Spalce <c3> und setze ihn in 
	Spalte <c1>; 
	es können Zahl mit Zahl, Datum mit Zahl oder Datum mit Datum verrechnet 
	werden | 
   
  
    | COPY <c1>;<c2> | 
    Kopiere Wert aus Spalte <c2> und setze ihn in Spalte 
	<c1> | 
   
  
    | ADD_VAL <c1>;<c2>;<val> | 
    Addiere Wert aus Spalte <c2> mit Konstante <val> und setze ihn in Spalte 
	<c1>; 
	es können Zahl mit Zahl, Datum mit Zahl oder Datum mit Datum verrechnet 
	werden | 
   
  
    | SUB_COL <c1>;<c2>;<c3> | 
    Subtrahiere Wert aus Spalte <c2> mit Wert aus Spalce <c3> und setze ihn in 
	Spalte <c1>; 
	es können Zahl mit Zahl, Datum mit Zahl oder Datum mit Datum verrechnet 
	werden | 
   
  
    | SUB_VAL <c1>;<c2>;<val> | 
    Subtrahiere Wert aus Spalte <c2> mit Konstante <val> und setze ihn in Spalte 
	<c1>; 
	es können Zahl mit Zahl, Datum mit Zahl oder Datum mit Datum verrechnet 
	werden | 
   
  
    | ADD <c1>;<c2>|<[v2]>;<c3>|<[v3]>;[NK] | 
    Addiere zu Wert aus Spalte <c2> oder Konstante v2 (in eckiger 
	Klammer) den Wert aus Spalte <c3> oder Konstante <v3> und setze ihn in Spalte 
	<c1>;NK - Nachkommastellen (default 2) 
	es können Zahl mit Zahl, Datum mit Zahl oder Datum mit Datum verrechnet 
	werden | 
   
  
    | SUB <c1>;<c2>|<[v2]>;<c3>|<[v3]>;[NK] | 
    Subtrahiere von Wert aus Spalte <c2> oder Konstante v2 (in eckiger 
	Klammer) den Wert aus Spalte <c3> oder Konstante <v3> und setze ihn in Spalte 
	<c1>;NK - Nachkommastellen (default 2) 
	es können Zahl mit Zahl, Datum mit Zahl oder Datum mit Datum verrechnet 
	werden | 
   
  
    | MULT <c1>;<c2>|<[v2]>;<c3>|<[v3]>;[NK] | 
    Multipliziere Wert aus Spalte <c2> oder Konstante v2 (in eckiger 
	Klammer) mit Wert aus Spalte <c3> oder Konstante <v3> und setze ihn in 
	Spalte <c1>;NK - Nachkommastellen (default 2) 
	es können Zahl mit Zahl, Datum mit Zahl oder Datum mit Datum verrechnet 
	werden | 
   
  
    | DIV <c1>;<c2>|<[v2]>;<c3>|<[v3]>;[NK] | 
    Dividiere Wert aus Spalte <c2> oder Konstante v2 (in eckiger Klammer) 
	durch Wert aus Spalte <c3> oder Konstante <v3> und setze ihn in Spalte <c1>;NK 
	- Nachkommastellen (default 2) 
	es können Zahl mit Zahl, Datum mit Zahl oder Datum mit Datum verrechnet 
	werden | 
   
  
    | APPEND <c1>;<c2>|<[v2]>;<c3>|<[v3]>; 
	.... | 
    Aneinanderhängen der Wert aus Spalte <c2> oder Konstante v2 (in eckiger 
	Klammer) mit Wert aus Spalte <c3> - <...> oder Konstante <v3> und setze ihn in Spalte 
	<c1>; 
	es können Zahl mit Zahl, Datum mit Zahl oder Datum mit Datum verrechnet 
	werden | 
   
  
    | PIN <c>;<k>;<l> | 
    Generiere PIN mit Komplexität <k> und Länge <l> und setze sie in Spalte 
	<c> | 
   
  
    | FUNC_COM <c> | 
    Komprimiere Newline-Funktion durch Verschmelzen mit Führungszeile, 
	erkenntlich an "*) s.u." in der durch <c> angegebenen Spalte (es werden so 
	aus zwei Zeilen eine) | 
   
  
    | REORDER [<c>;...] | 
    Gibt die Spalten <c>;... in der gegebenen Reihenfolge aus. Werden 
	Spalten nicht angegeben, werden sie ignoriert. | 
   
  
    | LT <c1>;<c2>|<[v2]>;<c3>|<[v3]>;<c4>|<[v4]>;<c5>|<[v5]> | 
    Prüfe, ob die Bedingung "kleiner als" (LT, "less than") erfüllt 
	ist. 
	Vergleiche Wert aus Spalte <c2> oder Konstante [v2] (in eckiger Klammer) mit 
	Wert aus Spalte <c3> oder Konstante [v3]. 
	Wenn erfüllt, setze den Wert aus Spalte <c4> oder die Konstante [v4] in die 
	Spalte <c1>; 
	andernfalls wenn damit FALSE also "falsch" nehme der Wert aus Spalte <c5> 
	bzw. Konstante [v5]. 
	Es können Zahl mit Zahl, Datum mit Datum oder String mit String verrechnet 
	werden | 
   
  
    | LE <c1>;<c2>|<[v2]>;<c3>|<[v3]>;<c4>|<[v4]>;<c5>|<[v5]> | 
    Prüfe analog LT, ob die Bedingung "kleiner gleich" (LE, "less 
	equal") ist | 
   
  
    | EQ <c1>;<c2>|<[v2]>;<c3>|<[v3]>;<c4>|<[v4]>;<c5>|<[v5]> | 
    Prüfe analog LT, ob die Bedingung "gleich" (EQ, "equal") ist | 
   
  
    | GE <c1>;<c2>|<[v2]>;<c3>|<[v3]>;<c4>|<[v4]>;<c5>|<[v5]> | 
    Prüfe analog LT, ob die Bedingung "größer gleich" (GE, "greater 
	equal") ist | 
   
  
    | GT  <c1>;<c2>|<[v2]>;<c3>|<[v3]>;<c4>|<[v4]>;<c5>|<[v5]> | 
    Prüfe analog LT, ob die Bedingung "größer als" (GT, "greater 
	than") ist | 
   
  
    | APP_COLS <c>[;<c2>;...] | 
    Hängt die Spaltennamen <c>;... in der gegebenen Reihenfolge an. Bereits 
	existierende Spaltennamen sind nicht zulässig. | 
   
  
    | POP_REG_ANT .... | 
    Funktion ähnliche GVE im Register, zur Ermittlung der Anteile in 
	Register-Zeile mit folgenden Parametern:
		- Name oder Nummer der Ausgabe-Spalte
 
		- Einheit T (Tag) / M (Monat) /J (Jahr) als Konstante: [T] oder [M] 
		oder [J] oder Wert: T oder M oder J
 
		- Intervall-Untergrenze als Konstante [0] ... [N] oder Wert 0 ... N
 
		- Untergrenze E (einschließlich) / A (ausschließlich) als Konstante: 
		[E] oder [A] oder Wert: E oder A
 
		- Intervall-Obergrenze als Konstante [0] ... [N] oder Wert 0 ... N
 
		- Obergrenze E (einschließlich) / A (ausschließlich) als Konstante: 
		[E] oder [A] oder Wert: E oder A
 
		- Datum "Register-Von" als Spaltenname oder Spaltennummer mit Datum 
		Register-Beginn oder als Konstante i.d.F. [TT.MM.JJJJ], z.B: 
		[01.01.2015]
 
		- Datum "Register-Bis" als Spaltenname oder Spaltennummer mit Datum 
		Register-Ende oder als Konstante i.d.F. [TT.MM.JJJJ], z.B: [31.12.2015]
 
		- Datum "DAT_EIN" als Spaltenname oder Spaltennummer mit Datum des 
		Tierzugangs oder als Konstante i.d.F. [TT.MM.JJJJ]
 
		- Datum "DAT_AUS" als Spaltenname oder Spaltennummer mit Datum des 
		Tierabgangs oder als Konstante i.d.F. [TT.MM.JJJJ]
 
		- Datum "GEB_DATR" als Spaltenname oder Spaltennummer mit Datum der 
		Geburt (ggf. als Konstante)
 
		- Geschlecht-Soll M oder 1 (männlich) / W oder 2 (weiblich) / 0 der 
		<leer> (nicht prüfen) als Konstante [M] ... [0] oder Wert M,1,W,2,0
 
		- Geschlecht-Ist "GESCHL_R" als Spaltenname oder Spaltennummer mit 
		Angabe zum Geschlecht (ggf. als Konstante)
 
		- Kalbung-Soll N oder 0 (nein) / K oder J oder 1 (ja) / <leer> (nicht 
		prüfen) als Konstante [N] ... [0] oder Wert N,0,K,1,
 
		- Datum "EKALBDAT" als Spaltenname oder Spaltennummer mit Datum der 
		ersten Kalbung (ggf. als Konstante)
 
	 
	Beispiel siehe unten  | 
   
  
    | POP_LINE_NR <c>;<[x]> | 
    Generiere Zeilennummer 1..n ggf. mit Offset <x> und setze sie in Spalte 
	<c> | 
   
	
    | POP_QUOTE <c>;<[q]> | 
    Formatiere Spalte <c> als String mit doppelten Hochkommas, 
	optional Angabe einer anderen Spalte als Quelle | 
   
	
    | POP_UNQUOT <c>;<[q]> | 
    Formatiere Spalte <c> mittels Entfernen der doppelten Hochkommas, 
	optional Angabe einer anderen Spalte als Quelle | 
   
	
    | POP_3PUNKT <c>;<[q]> | 
    Formatiere Spalte <c> mit 3 Punkten der Form 276.000.912.345.678, 
	optional Angabe einer anderen Spalte als Quelle | 
   
  
    | POP_LAND <c>;<[q]> | 
    Formatiere Spalte <c> als Land, optional Angabe einer anderen 
	Spalte als Quelle | 
   
  
    | POP_KREIS <c>;<[f]>;<[q]> | 
    Formatiere Spalte <c> als Kreis, ggf. mit Format <f> - analog 
	$BNRKREIS, optional 
	Angabe einer anderen Spalte als Quelle | 
   
  
    | POP_KREIX <c>;<[f]>;<[q]> | 
    Formatiere Spalte <c> als Kreis, ggf. mit Format <f> - analog 
	$BNRKREIX, optional 
	Angabe einer anderen Spalte als Quelle | 
   
  
    | POP_KREIY <c>;<[f]>;<[q]> | 
    Formatiere Spalte <c> als Kreis, ggf. mit Format <f> - analog 
	$BNRKREIY, optional 
	Angabe einer anderen Spalte als Quelle | 
   
  
    | ALTER <c1>;<c2>|<[v2]>;<c3>|<[v3]> | 
    Alter in Monaten und Tagen. Ermittle Alter bzw. Datumsdifferenz, 
	Obergrenze z.B. Todesalter ist Wert oder Konstante aus Spalte <c2>, 
	Untergrenze z.B. Geburtsdatum ist Wert oder Konstante <c3l> und setze 
	Ergebnis in Spalte 
	<c1>; 
	Formatiere Ausgabe in der Form "m.tt" - z.B. "24.08" | 
   
  
    | ALTERT <c1>;<c2>|<[v2]>;<c3>|<[v3]>  | 
    Alter in Tagen, Syntax analog ALTER, Formatiere Ausgabe in der Form "t" 
	- z.B. "365" | 
   
  
    | ALTERA <c1>;<c2>|<[v2]>;<c3>|<[v3]> | 
    Alter in Textform, Syntax analog ALTER, Formatiere Ausgabe in der Form 
	"x Mon. x Tg." - z.B. "24 Mo. 3 Tg." | 
   
  
    | ALTERX <c1>;<c2>|<[v2]>;<c3>|<[v3]> | 
    Alter in Monaten und Bruchteilen, Syntax analog ALTER, Formatiere 
	Ausgabe in der Form "x.xxxxx" - z.B. "24.00037" | 
   
  
    |   | 
      | 
   
 
Beispiele
; Werfe alle Zeilen weg die den String "Exception" enthalten
POP_RDROP Exception
; Ersetze in der ganzen Zeile das Vorkommen von "%--" (als NULL-Indikator) durch den Leerstring ""  
POP_RCHNG %--;
; Erstze in Spalte 1 den Dezimalpunkt "." durch eine Komma ","
POP_CCHNG 1;.;,
; Verwerfe Zeile wenn 2. Spalte größer gleich 100.000 ist
POP_CXDROP 2;>=;100000
; Formatieren in Spalte 2 vorkommende Timestamps wie es Excel auch als Date-Time-Value akzeptiert
; Mikrosekunden werden dabei ignoriert, könnten mit ".SSSSSS" aber einbezogen werden.
POP_TSTAMP 2;dd.MM.yyyy hh.MM.ss
; Formatieren in Spalte 3 vorkommende Datumswerte wie es Excel auch als Date-Value akzeptiert
POP_DATE 3;dd.MM.yyyy
; Formatieren in Spalte 4 vorkommende Zeitwerte wie es Excel auch als Time-Value akzeptiert
POP_TIME 4;hh.MM.ss
; Formatieren in Spalte 5 vorkommende Zahlenwerte wie es Excel auch als Number-Value akzeptiert, mit
; zwei Nachkommastellen (gerundet)
; Der Punkt deutet nur die Stelle des Dezimaltrenners an, dieser ist je nach LOCALE-Einstellung
; unterschiedlich, in Deutsch ein Komma.
POP_NUM 5;##0.00
; Formatieren in Spalte 6 vorkommende Strings als Uppercase
POP_UCASE 6
; Formatieren in Spalte 7 vorkommende Strings als Lowercase
POP_LCASE 7
; Es können auch mehrer Befehle auf eine Spalte angewendet werden
POP_CCHNG 8;ä;Ä
POP_CCHNG 8;Ä;AE
POP_CCHNG 8;ü;Ü
POP_CCHNG 8;Ü;UE
POP_CCHNG 8;ö;Ö
POP_CCHNG 8;Ö;OE
POP_CCHNG 8;ß;SS
POP_UCASE 8
; Formatiere ...
POP_KOMMA GVE_KUH;[3]
POP_KOMMA BNR15;0
POP_PROZENT ANT_TOD;[2]
; Spalten anhängen, Register-Anteile berechnen und formatieren
APP_COLS W0;W1;W2;W3;W4_8;W8_20;W20_X
REG_ANT W0;T; 0;E; 7;A;DAT_VON;DAT_BIS;DAT_EIN;DAT_AUS;GEB_DATR
REG_ANT W1;T; 7;E;14;A;DAT_VON;DAT_BIS;DAT_EIN;DAT_AUS;GEB_DATR
REG_ANT W2;T;14;E;21;A;DAT_VON;DAT_BIS;DAT_EIN;DAT_AUS;GEB_DATR
REG_ANT W3;T;21;E;28;A;DAT_VON;DAT_BIS;DAT_EIN;DAT_AUS;GEB_DATR
REG_ANT W4_8;T;28;E;56;A;DAT_VON;DAT_BIS;DAT_EIN;DAT_AUS;GEB_DATR
REG_ANT W8_20;T;56;E;140;A;DAT_VON;DAT_BIS;DAT_EIN;DAT_AUS;GEB_DATR
REG_ANT W20_X;T;140;E;9999999;E;DAT_VON;DAT_BIS;DAT_EIN;DAT_AUS;GEB_DATR
POP_PROZENT W0;3
POP_PROZENT W1;3
POP_PROZENT W2;3
POP_PROZENT W3;3
POP_PROZENT W4_8;3
POP_PROZENT W8_20;3
POP_PROZENT W20_X;3
 
Spezielle Hinweise zu Formatierungspattern
Date/Time Format Syntax
To specify the time format use a time pattern string. In this pattern, all ASCII letters are reserved as pattern letters,  
which are defined as the following: 
Symbol   Meaning                 Presentation        Example
 ------   -------                 ------------        -------
 G        era designator          (Text)              AD
 y        year                    (Number)            1996
 M        month in year           (Text & Number)     July & 07
 d        day in month            (Number)            10
 h        hour in am/pm (1~12)    (Number)            12
 H        hour in day (0~23)      (Number)            0
 m        minute in hour          (Number)            30
 s        second in minute        (Number)            55
 S        millisecond             (Number)            978
 E        day in week             (Text)              Tuesday
 D        day in year             (Number)            189
 F        day of week in month    (Number)            2 (2nd Wed in July)
 w        week in year            (Number)            27
 W        week in month           (Number)            2
 a        am/pm marker            (Text)              PM
 k        hour in day (1~24)      (Number)            24
 K        hour in am/pm (0~11)    (Number)            0
 z        time zone               (Text)              Pacific Standard Time
 '        escape for text
 ''        single quote                              '
 
The count of pattern letters determine the format. 
(Text): 4 or more pattern letters--use full form,
        < 4--use short or abbreviated form if one exists. 
(Number): the minimum number of digits. 
          Shorter numbers are zero-padded to this amount. 
          Year is handled specially; that is, if the count of 'y' is 2,
          the Year will be truncated to 2 digits. 
(Text & Number): 3 or over, use text, otherwise use number. 
Any characters in the pattern that are not in the ranges of ['a'..'z']
and ['A'..'Z'] will be treated as quoted text. 
For instance, characters like ':', '.', ' ', '#' and '@' will appear in the
resulting time text even they are not embraced within single quotes. 
A pattern containing any invalid pattern letter will result in a thrown
exception during formatting or parsing. 
Examples: 
 Format Pattern                         Result US Locale                        German locale
 --------------                         ----------------                        --------------
 "yyyy.MM.dd G 'at' hh:mm:ss z"    ->>  1996.07.10 AD at 15:08:56 PDT           1958.12.31 n. Chr. at 01:02:03 GMT+01:00
 "EEE, MMM d, ''yy"                ->>  Wed, July 10, '96                       Mi, Dez 31, '58
 "h:mm a"                          ->>  12:08 PM                                1:02 AM
 "hh 'o''clock' a, zzzz"           ->>  12 o'clock PM, Pacific Daylight Time    01 o'clock AM, GMT+01:00
 "K:mm a, z"                       ->>  0:00 PM, PST
 "yyyyy.MMMMM.dd GGG hh:mm aaa"    ->>  1996.July.10 AD 12:08 PM
Number Format Syntax
Symbol  Meaning
 0      a digit
 #      a digit, zero shows as absent
 .      placeholder for decimal separator
 ,      placeholder for grouping separator.
 ;      separates formats.
 -      default negative prefix.
 %      divide by 100 and show as percentage
 X      any other characters can be used in the prefix or suffix
 '      used to quote special characters in a prefix or suffix.
Examples:
 Format Pattern		Result
 ###,###.000		->> 1.234,450   
Zurück zum Anfang  |