Klasse Datensatz

java.lang.Object
gdv.xport.satz.Satz
gdv.xport.satz.Datensatz
Alle implementierten Schnittstellen:
Cloneable
Bekannte direkte Unterklassen:
SatzXml

public class Datensatz extends Satz
Datensatz ist von Satz abgeleitet, enthaelt aber zusaetzlich noch die Sparte.
Seit:
12.10.2009
Autor:
oliver
  • Konstruktordetails

    • Datensatz

      public Datensatz()
      Default-Konstruktor (wird zur Registrierung bei der SatzFactory benoetigt).

      Anm.: In SatzRegistry.getSatz(SatzTyp) wird der Default-Constructor per Reflection aufgerufen. Daher kann er nicht einfach entfernt werden.

      Seit:
      0.6
    • Datensatz

      public Datensatz(int satzart)
      Instantiiert einen neuen Datensatz mit 1 Teildatensatz.
      Der Teildatensatz besteht nur aus 8 Feldern:
      • Satzart
      • VU_NUMMER
      • BUENDELUNGSKENNZEICHEN
      • SPARTE
      • VERSICHEURUNGSSCHEINNUMMER
      • FOLGENUMMER
      • VERMITTLER
      • SATZNUMMER

      Anm.: Dieser Constructor wird noch von SatzFactory.register(Class, int) verwendet.

      Parameter:
      satzart - z.B. 100
    • Datensatz

      public Datensatz(SatzTyp satzTyp)
      Instantiiert einen neuen Datensatz mit 1 Teildatensatz.
      Der Teildatensatz besteht nur aus 8 oder 9 Feldern:
      • Satzart
      • VU_NUMMER
      • BUENDELUNGSKENNZEICHEN
      • SPARTE
      • VERSICHEURUNGSSCHEINNUMMER
      • FOLGENUMMER
      • VERMITTLER
      • ART ("0220.580.X") oder WAGNISART (bei "0220.010.X")
      • SATZNUMMER
      Das Feld 4 (Sparte) im Teildatensatz wird nur bei den vordefinierten GDV-Spartensaetzen belegt.
      Parameter:
      satzTyp - z.B. "0210.040" (Vertragsspezifischer Teil, Haftpflicht)
      Seit:
      5.0
    • Datensatz

      protected Datensatz(SatzTyp satzTyp, Config cfg)
    • Datensatz

      public Datensatz(SatzTyp satzTyp, int n)
      Instantiiert einen neuen Datensatz. Die Teildatensaetze bestehen nur aus 8 oder 9 Feldern:
      • Satzart
      • VU_NUMMER
      • BUENDELUNGSKENNZEICHEN
      • SPARTE
      • VERSICHEURUNGSSCHEINNUMMER
      • FOLGENUMMER
      • VERMITTLER
      • ART ("0220.580.X") oder WAGNISART (bei "0220.010.X")
      • SATZNUMMER
      Das Feld 4 (Sparte) im Teildatensatz wird nur bei vordefinierten Spartensaetzen belegt.
      Parameter:
      satzTyp - z.B. "0100" (Adressteil) oder "0220.110" (Glas)
      n - Anzahl der Teildatensaetze
      Seit:
      5.0
    • Datensatz

      protected Datensatz(SatzTyp satzTyp, int n, Config cfg)
    • Datensatz

      public Datensatz(Datensatz other)
      Dies ist der Copy-Constructor, mit dem man einen bestehenden Datensatz kopieren kann.
      Parameter:
      other - der originale Datensatz
  • Methodendetails

    • setUpTeildatensaetze

      protected void setUpTeildatensaetze()
      Kann von Unterklassen verwendet werden, um die Teildatensaetze aufzusetzen.
    • setUpTeildatensatz

      protected void setUpTeildatensatz(Teildatensatz tds)
      Hiermit kann ein einzelner Teildatensatz aufgesetzt werden.

      Wenn alle Datensaetze nur noch ueber Enums (Soplets) initialisiert werden, duerfte die Inialisierung hier hinfaellig sein.

      Parameter:
      tds - der (leere) Teildatensatz
      Seit:
      0.4
    • setUpTeildatensatz

      protected static void setUpTeildatensatz(Teildatensatz tds, NumFeld sparte)
    • addFiller

      public void addFiller()
      Beschreibung aus Klasse kopiert: Satz
      Fuellt fuer alle leeren Stellen ein entsprechendes Fuellfeld auf.
      Setzt außer Kraft:
      addFiller in Klasse Satz
    • init

      public void init(SatzTyp satztyp)
      Dient dazu, um mit den Informationen des Satztyps Sparte und andere Felder vorzubelegen.
      Parameter:
      satztyp - SatzTyp, z.B. "0220.010.13.1"
      Seit:
      5.1
    • setSparte

      public void setSparte(int x)
      Setzt die Sparte.
      Parameter:
      x - z.B. 70 (Rechtsschutz)
    • setSparte

      public void setSparte(String x)
      Setzt die Sparte. Der uebergebene String kann dabei auch die Art der Sparte enthalten.
      Parameter:
      x - z.B. "580.01" fuer Sparte 580, Art 01
    • getSparte

      public int getSparte()
      Gets the sparte.
      Setzt außer Kraft:
      getSparte in Klasse Satz
      Gibt zurück:
      die Sparte als int
    • getArt

      public int getArt()
      Manche Satzarten wie Bausparen haben eine Element fuer die Untersparte, im Feld Wagnisart oder Art abgespeichert. Dies ist z.B. fuer Satz 220.580.1 (Bausparen) der Fall.
      Gibt zurück:
      0 oder Untersparte / Art
    • hasArt

      public boolean hasArt()
      Wenn der Datensatz ein Element fuer eine Untersparte hat, wird 'true' zurueckgegeben. Dies ist z.B. fuer Satz 220.580.1 (Bausparen) der Fall.
      Gibt zurück:
      true, falls der Datensatz eine Untersparte hat.
    • hasSparte

      public boolean hasSparte()
      Ueberprueft, ob der Datensatz ueberhaupt eine Sparte gesetzt hat.
      Setzt außer Kraft:
      hasSparte in Klasse Satz
      Gibt zurück:
      true, if successful
      Seit:
      0.6
    • getSparteFeld

      public NumFeld getSparteFeld()
      Gets the sparte feld.
      Gibt zurück:
      die Sparte als Feld
    • hasSatzartNummer

      public boolean hasSatzartNummer()
      Wenn der Datensatz ein Element fuer eine Untersparte hat, wird 'true' zurueckgegeben. Dies ist z.B. fuer Satz 220.580.1 (Bausparen) der Fall.
      Gibt zurück:
      true, falls der Datensatz eine Untersparte hat.
    • setVuNummer

      public void setVuNummer(String s)
      Sets the vu nummer.
      Parameter:
      s - VU-Nummer (max. 5 Stellen)
    • getVuNummer

      public String getVuNummer()
      Gets the vu nummer.
      Gibt zurück:
      die VU-Nummer
    • hasVuNummer

      public boolean hasVuNummer()
      Nicht jeder Datensatz hat eine VU-Nummer. So kommt sie in Satzart 0291.550 nicht vor.
      Gibt zurück:
      true, if VU-Nummer vorhanden ist
      Seit:
      5.2
    • setVersicherungsscheinNummer

      public void setVersicherungsscheinNummer(String nr)
      Sets the versicherungsschein nummer.
      Parameter:
      nr - die Versicherungsschein-Nummer
      Seit:
      0.3
    • getVersicherungsscheinNummer

      public String getVersicherungsscheinNummer()
      Gets the versicherungsschein nummer.
      Gibt zurück:
      die Versicherungsschein-Nummer
      Seit:
      0.3
    • setFolgenummer

      public void setFolgenummer(int nr)
      Hiermit kann die Folgenummer gesetzt werden.
      Parameter:
      nr - man sollte hier bei 1 anfangen mit zaehlen
      Seit:
      0.3
    • getFolgenummer

      public int getFolgenummer()
      Gets the folgenummer.
      Gibt zurück:
      die Folgenummer
      Seit:
      0.3
    • readKrankenFolgeNr

      @Deprecated public static int readKrankenFolgeNr(PushbackLineNumberReader reader) throws IOException
      Veraltet.
      wurde nach Importer.readKrankenFolgeNr() verschoben (TODO: wird mit v8 entfennt)
      Liest 49 Bytes, um die Folge-Nr. in Satzart 220, Sparte 20 (Kranken) zu bestimmen und stellt die Bytes anschliessend wieder zurueck in den Reader.
      Parameter:
      reader - muss mind. einen Pushback-Puffer von 14 Zeichen bereitstellen
      Gibt zurück:
      Folge-Nr
      Löst aus:
      IOException - falls was schief gegangen ist
    • readBausparenArt

      @Deprecated public static int readBausparenArt(PushbackLineNumberReader reader) throws IOException
      Veraltet.
      wurde nach Importer.readBausparenArt() verschoben
      Liest 45 Bytes, um die Bauspar-Art in Satzart 220, Sparte 580 (Bausparen) zu bestimmen und stellt die Bytes anschliessend wieder zurueck in den Reader.
      Parameter:
      reader - muss mind. einen Pushback-Puffer von 14 Zeichen bereitstellen
      Gibt zurück:
      Folge-Nr
      Löst aus:
      IOException - falls was schief gegangen ist
    • readWagnisart

      @Deprecated public static WagnisartLeben readWagnisart(PushbackReader reader) throws IOException
      Veraltet.
      wurde nach Importer.readWagnisart() verschoben
      Liest 1 Byte, um die Wagnisart zu bestimmen und stellt das Byte anschliessend wieder zurueck in den Reader.
      Parameter:
      reader - muss mind. einen Pushback-Puffer von 60 Zeichen bereitstellen
      Gibt zurück:
      Wagnisart
      Löst aus:
      IOException - falls was schief gegangen ist
    • matchesNextTeildatensatz

      protected boolean matchesNextTeildatensatz(PushbackLineNumberReader reader, char[] lastFeld1To7, Character satznummer) throws IOException
      Prüfe ob die kommende Zeile ein Teildatensatz der letzten ist. Dazu werden (normalerweise) die ersten 7 Felder abgeglichen. Leider fuehrt dieses Verfahren nicht immer zum Erfolg, sodass wir uns in bestimmten Situationen doch den ganzen naechsten Teildatensatz anschauen muessen.
      Setzt außer Kraft:
      matchesNextTeildatensatz in Klasse Satz
      Parameter:
      reader - ein Reader
      lastFeld1To7 - Feld1..7 als Char-Array (42 Zeichen) der letzten Zeile oder null für ersten Teildatensatz
      satznummer - die Satznummer
      Gibt zurück:
      true, falls ein Teildatensatz, false falls nicht, d.h. neuer Datensatz.
      Löst aus:
      IOException - bei I/O-Fehlern
      Seit:
      0.5.1
      Siehe auch: