Zur Homepage www.HI-Tier.de Filter im HitBatch
Home Nach oben
Öffentlicher Bereich für Entwickler

 

Filter im HitBatch

In jedem [Set] wird im Normalfall ein Batch-Verarbeitungsschritt durchgeführt, d.h. Daten werden aufbereitet oder Abfragen zusammengestellt und per Protokollbefehl(e) an HIT gesendet, anschließend Antworten ausgewertet und schließlich in an gegebene Ausgabedateien weggeschrieben.

Neben diesen lassen sich auf lokale (CSV-)Dateien bestimmte Filter durchführen. Dazu wird der Parameter FilterArt mit einer speziellen numerischen Angabe versehen. Ohne Angabe ist die FilterArt=0.

FilterArt=   Beschreibung
0 NORM normaler HitBatch-Verarbeitungsschritt (Vorgabe)
1 COPY reines Kopieren der Datensätze aus der Inputdatei (InFile) in die Outputdatei (OuFile);

ggf. anwenden von Post-Output-Processing aus optionaler POP-Steuerdatei (PopFile)

2 FILTER klassischer Filter: kopiere nur Daten aus der Inputdatei (InFile) in die Outputdatei (OuFile), wenn die Daten auch in der Filterdatei (FilterFile) vorkommen, also "copy IN to OUT if exist in FILTER"
3 INVERS klassischer Filter (anders herum): kopiere nur Daten aus der Filterdatei (FilterFile) in die Outputdatei (OuFile), wenn die Daten auch in der Inputdatei (InFile) vorkommen, also "copy FILTER to OUT if exist in IN"
4 NEGATIV negativer Filter: kopiere nur Daten aus der Inputdatei (InFile) in die Outputdatei (OuFile), wenn die Daten nicht in der Filterdatei (FilterFile) vorkommen, also "copy IN to OUT if not exist in FILTER"
5 OR
(Oder)
kopiere Daten aus der Inputdatei (InFile) bzw. der Filterdatei (FilterFile) einmal in die Outputdatei (OuFile), wenn die Daten in einer oder beiden Dateien vorkommen

Die Dateien sollten gleich strukturiert sein. Wenn Daten beiden existieren, wird nur der Datensatz aus InFile in OuFile kopiert

6 OR-INV
(Oder, invers)
kopiere Daten aus der Inputdatei (InFile) bzw. der Filterdatei (FilterFile) einmal in die Outputdatei (OuFile), wenn die Daten in einer oder beiden Dateien vorkommen

Die Dateien sollten gleich strukturiert sein. Wenn Daten beiden existieren, wird nur der Datensatz aus FilterFile in OuFile kopiert

7 XOR
(Exklusiv Oder)
kopiere nur Daten aus der Inputdatei (InFile) bzw. der Filterdatei (FilterFile) in die Outputdatei (OuFile), wenn die Daten nur einmal vorkommen (entweder InFile oder FilterFile, nicht aber in beiden)
8 JOIN die beiden Tabellen verschneiden ("joinen"), also jeden Satz des InFile mit jedem Satz des FilterFile kombinieren und in Ausgabe übernehmen, falls Filter-Spalten übereinstimmen
9 JOIN-Left die beiden Tabellen "left outer joinen", also jeden Satz des InFile mit jedem Satz des FilterFile kombinieren und in Ausgabe übernehmen falls Filter-Spalte übereinstimmen oder in FilterFile nicht gefunden
10 JOIN-Right die beiden Tabellen "right outer joinen", also jeden Satz des InFile mit jedem Satz des FilterFile kombinieren und in Ausgabe übernehmen falls Filter-Spalte übereinstimmen oder in InFile nicht gefunden
11 JOIN-Full die beiden Tabellen "right and left outer joinen", also jeden Satz des InFile mit jedem Satz des FilterFile kombinieren und in Ausgabe übernehmen falls Filter-Spalte übereinstimmen oder nur in InFile oder nur in FilterFile gefunden
12 GROUP siehe Gruppierung unten
20 SORT reines Sortieren der Datensätze aus der Inputdatei (InFile) in die Outputdatei (OuFile); die Angaben zur Vergleichsspalte Flt_Col_In, FilterNumeric und FilterDistinct werden berücksichtigt

InFile und OuFile dürfen nicht identisch sein, damit "in place"-Sortierung funktioniert!

21 - 31   analog den Filtern 1 - 11, aber mit "in place"-Sortierung von InFile und FilterFile
 
90 SUBST-BNR In der Inputdatei (InFile) werden die in Flt_Col_In angegebenen Spalten ersetzt durch autoinkrementell erzeugte Betriebsnummern ersetzt, dessen Startwert und Form in FilterParms als <start-bnr>;<0|1> angegeben werden (0 steht für alphanumerische Form, 1 für die rein numerische), dann in die Outputdatei (OuFile) geschrieben. Die Übersetzungstabelle mit allen relevanten Metadaten wird in FilterFile gespeichert und bei der nächsten Verwendung auch wieder von dort gelesen. So lassen sich pseudo-anonyme Daten in den gegebenen Spalten erzeugen.
91 SUBST-LOM In der Inputdatei (InFile) werden die in Flt_Col_In angegebenen Spalten ersetzt durch autoinkrementell erzeugte Ohrmarkennummern ersetzt, dessen Startwert und Form in FilterParms als <start-lom>;<0|1> angegeben werden (0 steht für alphanumerische Form, 1 für die rein numerische), dann in die Outputdatei (OuFile) geschrieben. Die Übersetzungstabelle mit allen relevanten Metadaten wird in FilterFile gespeichert und bei der nächsten Verwendung auch wieder von dort gelesen. So lassen sich pseudo-anonyme Daten in den gegebenen Spalten erzeugen.
     
93 SPLIT die Inputdatei (InFile) wird beim Gruppenwechsel, definiert durch die Vergleichsspalten in Flt_Col_In, in jeweils neue Teildateien gesplittet. Der Name ergibt sich aus dem Namenstemplate im Parameter FilterFile, wobei mittels #[x] der Inhalt der Filterspalte referenziert werden kann, z.B.
FilterFile=outpath\Register #[1] #[3] - #[4].csv
 
 

 

Gruppierung

Wenn FilterArt=12, dann muss der Inhalt der bei FilterFile angegebenen Datei aus genau 3 Zeilen bestehen:

  1. Name der neuen Ausgabespalten
  2. Funktion, die auf die Werte innerhalb der Gruppe angewendet werden sollen.
    Folgende sind möglich:
    bulletFIRST: Nimmt den Wert der ersten Gruppenzeile
    bulletLAST; Nimmt den letzen
    bulletMIN: Nimm den kleinsten
    bulletMAX: Nimm den größten
    bulletCOUNT: Zähle Anzahl Zeilen in der Group
    bulletCOUNTR: Zähle Anzahl Werte (not null) in der Group
    bulletCOUNTD: Zähle Anzahl eindeutiger Werte (not null) in der Gruppe
    bulletSUM: Summiere
    bulletAVG: Bilde Durchschnitt
  3. Name der Spalte im InFile, die in Funktion verwendet werden soll

Beispiel:

BNR;Anzahl
First;Count
BNR15;LOM

 

 

 

Zurück zum Anfang

Stand: 04.10.2017 RP, HZ


© 1999-2015 Bay.StMELF, verantwortlich für die Durchführung sind die Stellen der Länder , fachliche Leitung ZDB: Frau Dr. Kaja.Kokott@hi-tier.de, Technik: Helmut.Hartmann@hi-tier.de
Seite zuletzt bearbeitet: 29. September 2016 15:38, Anbieterinformation siehe hier im Impressum.