public class Basislastschrift
extends java.lang.Object
Beispiel für die Erstellung einer SEPA-Basislastschrift-Datei:
Basislastschrift bl = new Basislastschrift();
bl.setKomprimiert(true);
bl.setMessageID("123"); // Z. B. Buchungslaufnummer
bl.setBIC("WELADED1WDB");
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, 2013);
cal.set(Calendar.MONTH, 04);
cal.set(Calendar.DAY_OF_MONTH, 15);
bl.setFaelligskeitsdatum(cal.getTime());
bl.setIBAN("DE61478535200001861889");
bl.setName("Fa. SEPA GmbH und Co. Testenhausen");
bl.setGlaeubigerID("DE98ZZZ09999999999");
Zahler z1 = new Zahler();
z1.setBetrag(new BigDecimal("100.00"));
z1.setBic("DORTDE33XXX");
z1.setIban("DE15440501990001052500");
cal.set(Calendar.MONTH, 1);
cal.set(Calendar.DAY_OF_MONTH, 22);
z1.setMandatdatum(cal.getTime());
z1.setMandatid("4711");
z1.setName("Meier und Co.");
z1.setVerwendungszweck("Beitrag 2013");
bl.add(z1);
Zahler z11 = new Zahler();
z11.setBetrag(new BigDecimal("100.00"));
z11.setBic("DORTDE33XXX");
z11.setIban("DE15440501990001052500");
cal.set(Calendar.MONTH, 1);
cal.set(Calendar.DAY_OF_MONTH, 22);
z11.setMandatdatum(cal.getTime());
z11.setMandatid("4711");
z11.setName("Meier und Co.");
z11.setVerwendungszweck("Zusatzbetrag 2013");
bl.add(z11);
Zahler z2 = new Zahler();
z2.setBetrag(new BigDecimal("50.00"));
z2.setBic("WELADED1HER");
z2.setIban("DE36450514850000000034");
cal.set(Calendar.YEAR, 2001);
z2.setMandatdatum(cal.getTime());
z2.setMandatid("0815");
z2.setName("Fritz Mueller");
z2.setVerwendungszweck("Beitrag 2013");
bl.add(z2);
bl.write(new File("test.xml"));
Basislastschrift bl = new Basislastschrift();
bl.read(new File("test.xml"));
// jetzt können über die get-Methoden alle Werte abgefragt werden
Modifier and Type | Field and Description |
---|---|
private java.lang.String |
anzahlbuchungen
Anzahl Buchungen (read-only)
|
private java.lang.String |
bic
BIC des Auftraggebers
|
private java.util.Date |
creationdatetime
Datum und Uhrzeit der Erzeugung der Datei
|
private java.lang.String |
glaeubigerid
Gläubiger ID
|
private java.lang.String |
iban
IBAN des Auftraggebers
|
private boolean |
komprimiert
Komprimiert.
|
private java.math.BigDecimal |
kontrollsumme
Kontrollsumme
|
private java.lang.String |
messageID
Message-ID für die Prüfung auf Doppeleinreichung
|
private java.lang.String |
name
Name des Auftraggebers
|
private java.util.ArrayList<Zahler> |
zahlerarray
Array von Zahlern
|
private java.util.HashMap<java.lang.String,Zahler> |
zahlermap
Map der Zahler
|
Constructor and Description |
---|
Basislastschrift() |
Modifier and Type | Method and Description |
---|---|
void |
add(Zahler zahler)
Für jede Buchung wird ein Zahler-Object übergeben
|
java.lang.String |
getAnzahlBuchungen()
Anzahl der Buchungen.
|
java.lang.String |
getBIC() |
java.util.Date |
getCreationDateTime()
Datum der Erzeugung der Datei.
|
private CustomerDirectDebitInitiationV02 |
getCustumerDirectDebitInitiationV02() |
private DirectDebitTransactionInformationSDD |
getDirectDebitTransactionInformationSDD(Zahler z) |
java.lang.String |
getGlaeubigerID() |
private GroupHeaderSDD |
getGroupHeader() |
java.lang.String |
getIBAN() |
java.math.BigDecimal |
getKontrollsumme()
Kontrollsumme aller Buchungen.
|
java.lang.String |
getMessageID() |
java.lang.String |
getName() |
private PaymentInstructionInformationSDD |
getPaymentInstructionInformationSDD(SequenceType1Code sequence) |
private PaymentTypeInformationSDD |
getPaymentTypeInformationSDD(SequenceType1Code sequence) |
private static javax.xml.datatype.XMLGregorianCalendar |
getYYYMMDD(java.util.Date date) |
private static javax.xml.datatype.XMLGregorianCalendar |
getYYYMMDDHHMMSS(java.util.Date date) |
java.util.ArrayList<Zahler> |
getZahler()
Gibt die Zahler nach dem Einlesen zurück.
|
void |
read(java.io.File file)
SEPA-Datei einlesen.
|
(package private) void |
setAnzahlBuchungen(java.lang.String anzahlbuchungen) |
void |
setBIC(java.lang.String bic)
BIC.
|
(package private) void |
setCreationDateTime(java.util.Date creationdatetime)
Datum der Erzeugung der Datei.
|
void |
setGlaeubigerID(java.lang.String glaeubigerid)
Gläubiger-ID
|
void |
setIBAN(java.lang.String iban)
IBAN.
|
void |
setKomprimiert(boolean komprimiert)
Komprimiert.
|
(package private) void |
setKontrollsumme(java.math.BigDecimal kontrollsumme)
Wird nur intern beim einlesen einer Datei genutzt.
|
void |
setMessageID(java.lang.String messageid)
Message-ID.
|
void |
setName(java.lang.String name)
Name des Zahlungspflichtigen.
|
void |
write(java.io.File file)
Schreibt die SEPA-Datei.
|
private java.lang.String messageID
private java.lang.String bic
private java.lang.String iban
private java.lang.String name
private java.lang.String glaeubigerid
private java.util.ArrayList<Zahler> zahlerarray
private java.util.HashMap<java.lang.String,Zahler> zahlermap
private java.math.BigDecimal kontrollsumme
private boolean komprimiert
private java.lang.String anzahlbuchungen
private java.util.Date creationdatetime
public void add(Zahler zahler) throws SEPAException
SEPAException
public void write(java.io.File file) throws javax.xml.datatype.DatatypeConfigurationException, SEPAException, javax.xml.bind.JAXBException
javax.xml.datatype.DatatypeConfigurationException
SEPAException
javax.xml.bind.JAXBException
public void read(java.io.File file) throws javax.xml.bind.JAXBException, SEPAException
javax.xml.bind.JAXBException
SEPAException
private CustomerDirectDebitInitiationV02 getCustumerDirectDebitInitiationV02() throws javax.xml.datatype.DatatypeConfigurationException, SEPAException
javax.xml.datatype.DatatypeConfigurationException
SEPAException
private GroupHeaderSDD getGroupHeader() throws javax.xml.datatype.DatatypeConfigurationException, SEPAException
javax.xml.datatype.DatatypeConfigurationException
SEPAException
private PaymentInstructionInformationSDD getPaymentInstructionInformationSDD(SequenceType1Code sequence) throws SEPAException, javax.xml.datatype.DatatypeConfigurationException
SEPAException
javax.xml.datatype.DatatypeConfigurationException
private static javax.xml.datatype.XMLGregorianCalendar getYYYMMDD(java.util.Date date) throws javax.xml.datatype.DatatypeConfigurationException
javax.xml.datatype.DatatypeConfigurationException
private static javax.xml.datatype.XMLGregorianCalendar getYYYMMDDHHMMSS(java.util.Date date) throws javax.xml.datatype.DatatypeConfigurationException
javax.xml.datatype.DatatypeConfigurationException
private DirectDebitTransactionInformationSDD getDirectDebitTransactionInformationSDD(Zahler z) throws javax.xml.datatype.DatatypeConfigurationException, SEPAException
javax.xml.datatype.DatatypeConfigurationException
SEPAException
private PaymentTypeInformationSDD getPaymentTypeInformationSDD(SequenceType1Code sequence)
public void setMessageID(java.lang.String messageid) throws SEPAException
SEPAException
public java.lang.String getMessageID() throws SEPAException
SEPAException
public void setBIC(java.lang.String bic) throws SEPAException
SEPAException
public java.lang.String getBIC() throws SEPAException
SEPAException
public void setIBAN(java.lang.String iban) throws SEPAException
SEPAException
public java.lang.String getIBAN() throws SEPAException
SEPAException
public void setName(java.lang.String name) throws SEPAException
SEPAException
public java.lang.String getName() throws SEPAException
SEPAException
public void setGlaeubigerID(java.lang.String glaeubigerid) throws SEPAException
SEPAException
public java.lang.String getGlaeubigerID() throws SEPAException
SEPAException
public void setKomprimiert(boolean komprimiert) throws SEPAException
komprimiert
- true: Zahlungen mit gleicher Mandanten-ID werden zusammengefasst,
false: keine Zusammenfassung.SEPAException
void setKontrollsumme(java.math.BigDecimal kontrollsumme)
public java.math.BigDecimal getKontrollsumme()
public java.lang.String getAnzahlBuchungen()
void setAnzahlBuchungen(java.lang.String anzahlbuchungen)
public java.util.Date getCreationDateTime()
void setCreationDateTime(java.util.Date creationdatetime)
public java.util.ArrayList<Zahler> getZahler()