public class DtausDateiWriter
extends java.lang.Object
Mit dem DtausDateiWriter können DTAUS-Dateien mit einer oder mehreren
logischen Dateien erzeugt werden.
Beispiel für die Erstellung einer DTAUS-Datei:
Zunächst ist eine OutputStream (z. B. FileOutputStream) zu instanziieren:
FileOutputStream fos = new FileOutputStream("dtaus");
Anschließend wird ein DtausDateiWriter instanziiert, dem der
Outputstream im Konstruktor übergeben wird:
DtausDateiWriter dtausDateiWriter = new DtausDateiWriter(fos);
Jetzt wird der ASatz gefüllt und geschrieben:
dtausDateiWriter.setAGutschriftLastschrift("GK");
dtausDateiWriter.setABLZBank(40050060);
dtausDateiWriter.setAKundenname("Donald Duck GmbH und Co");
dtausDateiWriter.setAKonto(123456);
dtausDateiWriter.writeASatz();
Ab hier werden die eigentlichen Zahlungssätze erstellt:
dtausDateiWriter.setCBLZEndbeguenstigt(10020030);
dtausDateiWriter.setCKonto(444444);
dtausDateiWriter.setCTextschluessel(CSatz.TS_UEBERWEISUNGSGUTSCHRIFT);
dtausDateiWriter.setCInterneKundennummer(1);
dtausDateiWriter.setCBetragInEuro(1000);
dtausDateiWriter.setCName("Donald Duck");
dtausDateiWriter.addCVerwendungszweck("bekannt");
dtausDateiWriter.writeCSatz();
dtausDateiWriter.setCBLZEndbeguenstigt(80077711);
dtausDateiWriter.setCKonto(666);
dtausDateiWriter.setCTextschluessel(CSatz.TS_UEBERWEISUNGSGUTSCHRIFT);
dtausDateiWriter.setCInterneKundennummer(2);
dtausDateiWriter.setCBetragInEuro(1000);
dtausDateiWriter.setCName("Micky Maus");
dtausDateiWriter.addCVerwendungszweck("la li lu");
dtausDateiWriter.addCVerwendungszweck("nur der Mann im Mond ");
dtausDateiWriter.addCVerwendungszweck("schaut zu ");
dtausDateiWriter.addCVerwendungszweck("wenn die kleinen Kinder");
dtausDateiWriter.addCVerwendungszweck("schlafen");
dtausDateiWriter.writeCSatz();
E-Satz schreiben = Ende einer logischen Datei.
dtausDateiWriter.writeESatz();
Gegebenenfalls kann eine weitere logische Datei durch die folgenden Aufrufe
erstellt werden:
dtausDateiWriter.open();
dtausDateiWriter.setA.....
dtausDateiWriter.writeASatz();
:
:
dtausDateiWriter.writeCSatz();
dtausDateiWriter.writeCSatz();
dtausDateiWriter.writeASatz();
dtausDateiWriter.close;
System.out.println("DTAUS-Datei erstellt!");
Modifier and Type | Field and Description |
---|---|
private ASatz |
asatz |
private CSatz |
csatz |
private java.io.DataOutputStream |
dos |
private ESatz |
esatz |
Constructor and Description |
---|
DtausDateiWriter(java.io.OutputStream os) |
Modifier and Type | Method and Description |
---|---|
void |
addCVerwendungszweck(java.lang.String value)
Maximal 13 mal pro Buchungssatz aufrufbar
|
void |
close()
Die Close-Methode ist nach der Ausgabe des E-Satzes der letzten/einzigen
logischen Datei erforderlich.
|
long |
getABLZBank() |
long |
getAKonto() |
java.lang.String |
getAKundenname() |
long |
getAnzahlSaetze() |
double |
getCBetragInEuro() |
long |
getCBLZEndbeguenstigt() |
long |
getCKonto() |
java.math.BigInteger |
getSummeBankleitzahlen() |
java.math.BigInteger |
getSummeBetraege() |
java.math.BigDecimal |
getSummeBetraegeDecimal() |
java.math.BigInteger |
getSummeKontonummern() |
void |
open()
Die Open-Methode wird durch den Konstruktor aufgerufen.
|
void |
setAAusfuehrungsdatum(java.util.Date aAusfuehrungsdatum)
Feld A11b - Ausführungsdatum Angabe freigestellt.
|
void |
setABLZBank(long aBLZBank)
Feld A4 - Bankleitzahl der Bank, bei der die Diskette eingereicht wird
Gültige Werte: Siehe Verzeichnis der Bankleitzahlen Standardwert: 0
|
void |
setADatum(java.util.Date aDatum)
Feld A7 - Datum Standardwert: Tagesdatum
|
void |
setADatum(java.lang.String aDatum)
Feld A7 - Datum Format: TTMMJJ Standardwert: Tagesdatum
|
void |
setAGutschriftLastschrift(java.lang.String aGutschriftLastschrift) |
void |
setAKonto(long aKonto)
Feld A9 - Kontonummer des Auftraggebers Standardwert: 0
|
void |
setAKundenname(java.lang.String aKundenname)
Feld A6 - Name des Auftraggebers.
|
void |
setCBetragInCent(long cBetragInCent)
Feld C12 - Betrag in Euro, wenn Auftragswährung in den Feldern A12 und C17a
= "1"; sonst Nullen
|
void |
setCBetragInEuro(double value) |
void |
setCBLZEndbeguenstigt(long value)
Feld C4 - Bankleitzahl endbegünstigtes Institut
|
void |
setCBLZErstbeteiligtesInstitut(long value)
Feld C3 - Bankleitzahl erstbeteiligtes Kreditinstitut, freigestellt
|
void |
setCInterneKundennummer(long value) |
void |
setCKonto(long cKonto)
Feld C5 - Kontonummer des Überweisungsempfängers/Zahlungspflichtigen
|
void |
setCName(java.lang.String value)
Feld C14a - Name des Überweisungsempfängers/Zahlungspflichtigen.
|
void |
setCName2(java.lang.String value)
Name des Überweisungsempfängers/Zahlungspflichtigen -Teil 2-, max. 27
Stellen.
|
void |
setCTextschluessel(int value)
Feld C7 - Textschlüssel - Kennzeichnung der Zahlungsart "51000"
Überweisungs-Gutschrift "53000" Überweisung Lohn/Gehalt/Rente "5400J"
Vermögenswirksame Leistung (VL) ohne Sparzulage "5400J" Vermögenswirksame
Leistung (VL) mit Sparzulage "56000" Überweisung öffentlicher Kassen Die im
Textschlüssel mit J bezeichnete Stelle, wird bei Übernahme in eine Zahlung
automatisch mit der jeweils aktuellen Jahresendziffer (7, wenn 97) ersetzt.
|
void |
writeASatz() |
java.lang.String |
writeCSatz() |
void |
writeESatz() |
private java.io.DataOutputStream dos
private ASatz asatz
private CSatz csatz
private ESatz esatz
public void open()
public void close() throws java.io.IOException
java.io.IOException
public void setAGutschriftLastschrift(java.lang.String aGutschriftLastschrift) throws DtausException
DtausException
public void setABLZBank(long aBLZBank)
public long getABLZBank()
public void setAKundenname(java.lang.String aKundenname) throws DtausException
DtausException
public java.lang.String getAKundenname()
public void setADatum(java.lang.String aDatum)
public void setADatum(java.util.Date aDatum)
public void setAKonto(long aKonto)
public long getAKonto()
public void setAAusfuehrungsdatum(java.util.Date aAusfuehrungsdatum)
public void setCBLZErstbeteiligtesInstitut(long value) throws DtausException
DtausException
public void setCBLZEndbeguenstigt(long value) throws DtausException
DtausException
public long getCBLZEndbeguenstigt()
public void setCKonto(long cKonto) throws DtausException
DtausException
public long getCKonto()
public void setCTextschluessel(int value) throws DtausException
DtausException
public void setCBetragInCent(long cBetragInCent) throws DtausException
DtausException
public void setCBetragInEuro(double value) throws DtausException
DtausException
public double getCBetragInEuro()
public void setCName(java.lang.String value) throws DtausException
DtausException
public void setCName2(java.lang.String value) throws DtausException
DtausException
public void setCInterneKundennummer(long value) throws DtausException
DtausException
public void addCVerwendungszweck(java.lang.String value) throws DtausException
DtausException
public void writeASatz() throws java.lang.Exception
java.lang.Exception
public java.lang.String writeCSatz() throws java.io.IOException, DtausException
java.io.IOException
DtausException
public void writeESatz() throws java.io.IOException
java.io.IOException
public long getAnzahlSaetze()
public java.math.BigInteger getSummeKontonummern()
public java.math.BigInteger getSummeBankleitzahlen()
public java.math.BigInteger getSummeBetraege()
public java.math.BigDecimal getSummeBetraegeDecimal()