Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

...

Zu den technischen Hintergründen lesen Sie dazu bitte auch den Artikel "Schnittstellen in Java-Regeln".

 


Hinweis

Dieser Integrationsschritt kann erst durchgeführt werden, sobald die Vorbedingungen aus Abschnitt 3 erfüllt sind – d.h. sobald entsprechende Attribute in den genutzten Businessobjekten existieren.

...


Bei der Anbindung des SEPA-Nuclets sind Wrapper-Klassen für Kreditoren (Lieferanten, o.ä.), Debitoren (Kunden, o.ä.), Referenzen (Rechnungen, Belege, o.ä.) und Zahlungsreferenzen (Forderungen, Rechnungspositionen, o.ä.) anzupassen.

...

Sollten Sie das SEPA-Nuclet entweder nur für Lastschriften oder nur für Überweisungen verwenden wollen, dann müssen nur die jeweiligen Klassen für Ihren Anwendungsfall angepasst werden. Die restlichen Klassen können Sie ignorieren.

Wrapper-KlasseAnmerkungFunktionAnwendungsfall
CreditorReferenceWrapperneu ab v2.0.0Anbindung an genutzte Referenzobjekte (Eingangsrechnungen, Gutschriften,o.ä.)Überweisungen

CreditorWrapperneu ab v2.0.0Anbindung an verwendete Kreditoren, Lieferanten, o.ä.
CreditTransferReferenceWrapperneu ab v2.0.0Anbindung an verwendete Zahlungsreferenzobjekte (Forderungen, Rechnungspositionen, Buchungen, etc.)
DebitorReferenceWrapperneu ab v2.0.0, ersetzt ReferenceWrapperAnbindung an genutzte Referenzobjekte (Ausgangsrechnungen,o.ä.)Lastschriften
DebitorWrapper
 

Anbindung an verwendete Debitoren, Kunden, o.ä.
DirectDebitReferenceWrapperneu ab v2.0.0Anbindung an verwendete Zahlungsreferenzobjekte (Forderungen, Rechnungspositionen, Buchungen, etc.)
ReferenceWrapperobsolet ab v2.0.0, wird ersetzt durch DebitReferenceWrapperAnbindung an genutzte Referenzobjekte (Rechnungen,o.ä.)Lastschriften
PaymentReferenceWrapperobsolet ab v2.0.0, wird ersetzt durch DirectDebitReferenceWrapperAnbindung an verwendete Zahlungsreferenzobjekte (Forderungen, Rechnungspositionen, etc.)Lastschriften

Tabelle 4.8.1: Übersicht Nuclet-Schnittstellen
 


Info

Bitte beachten Sie, dass es in diesem Integrationsschritt nur darum geht, die Anbindung an die Attribute der tatsächlich genutzten Businessobjekte herzustellen.

Es ist von Ihnen an dieser Stelle im Normalfall keinerlei Prozesslogik zu implementieren.

...


4.8.1.1 CreditorReferenceWrapper

...

Das sind jene Objekte, die bei SEPA-Exporten als Referenz für Zahlungsanweisungen verwendet werden.

MethodeFunktionAnpassung optional?
CreditorReferenceWrapperZuordnung des tatsächlich genutzten Businessobjektesnein
   



getCreditorId()liefert die Datenbank-ID des Kreditorenja
getCreditTransferReference()

liefert das Identifizierungsmerkmal für Überweisungen (also z.B. die Rechnungsnummer)

ja
getReferenceDate()

liefert ein Referenzdatum (bspw. das Rechnungsdatum)

ja
getTotalAmount()

liefert den Gesamtbetrag einer Transaktion (bspw. den Rechnungsbetrag);

falls die Implementierung null zurückliefert, werden die Beträge aus den Einzelbeträgen ermittelt

(siehe unten: CreditTransferReferenceWrapper)

ja

Tabelle 4.8.1.1: Anpassungen in CreditorReferenceWrapper
 


Beispiele dazu sind in Kommentarblöcken angegeben; diese Beispiele sind bei der Integration also an das tatsächlich genutzte Businessobjekt (bzw. deren BusinessObject-Klasse) anzupassen.

Codeblock
languagejava
titleorg.nuclet.sepa.wrapper.CreditorReferenceWrapper
linenumberstrue
collapsetrue
package org.nuclet.sepa.wrapper;


import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import org.nuclos.api.businessobject.BusinessObject;
import org.nuclos.api.businessobject.facade.Modifiable;
import org.nuclos.api.businessobject.facade.Stateful;

import org.nuclet.sepa.wrapper.AbstractCreditorReferenceWrapper;

// @replace!
// 
// import org.nuclet.businesstemplate.SupplierBilling;


/**
 * Abstract wrapper class for debitors (supplier billings, invoices, etc.)
 * 
 * @version 1.01
 * @date 3011.01.20152016
 * @nuclet org.nuclet.SEPA
 * @nucletversion 2.01.03
 * @sincenucletversion 1.0.0
 * @since 30.01.2015
 * 
 * @author frank.lehmann@nuclos.de
 * 
 */
public class CreditorReferenceWrapper extends AbstractCreditorReferenceWrapper
{         
    public CreditorReferenceWrapper(final Modifiable reference)
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // if (reference instanceof SupplierBilling) {
        //     this.businessObject = reference;
        // }
    }

    /**
     * Liefert die Datenbank-ID des Kreditoren
     * 
     */
    public Long getCreditorId()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((SupplierBilling)this.businessObject).getSupplierId();
        
        return null;
    }
    
    /**
     * Liefert das Identifizierungsmerkmal für Lastschriften (z.B. die Rechnungsnummer)
     * 
     */
    public String getCreditTransferReference()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // 
        // return ((SupplierBilling)this.businessObject).getBillingNumber();
        
        return null;
    }        
    
    /**
     * Liefert ein Referenzdatum (bspw. das Rechnungsdatum)
     * 
     */
    public Date getReferenceDate()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((SupplierBilling)this.businessObject).getBillingDate();
        
        return null;
    }
}
4.8.1.2 CreditorWrapper

Die Klasse CreditorWrapper dient als Nuclet-Schnittstelle zum tatsächlich genutzten Kreditoren-Businessobjekt.

Der Konstruktor der Klasse und die Methode getIso4217Code() sind mit anwendungsspezifischem Verhalten zu befüllen. Letztere Methode sollte den ISO-4217-Währungscode (siehe dazu Wikipedia) des Währunsobjektes zurückliefern.

MethodeFunktionAnpassung optional?
CreditorWrapperZuordnung des tatsächlich genutzten Businessobjektesnein
 

 

 
getBic()liefert die BIC des Debitoren, d.h. das Geschäftskennzeichen der Bank des Debitoren (BIC = Business Identifier Code, früher: Bank Identifier Code)nein
getIban()liefert die IBAN des Debitoren, d.h. die internationale Bankkontonummer (IBAN = International Bank Account Number)nein
getName()liefert den Namen des Debitorennein

...

    
    
    /**
     * Liefert den Gesamtbetrag (bspw. den Rechnungsbetrag)
     * 
     * @note Falls die Implementierung *null* zurückliefert, werden die Beträge aus den
     * Einzelbeträgen ermittelt (d.h. aus den CreditTransferReferenceWrapper-Objekten)
     */
    public BigDecimal getTotalAmount() {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((SupplierBilling)this.businessObject).getTotalAmountGross();
        
        return BigDecimal.ZERO;
    }
    
}
4.8.1.2

...

CreditorWrapper

Die Klasse CreditorWrapper dient als Nuclet-Schnittstelle zum tatsächlich genutzten Kreditoren-Businessobjekt.

Der Konstruktor der Klasse und die Methode getIso4217Code() sind mit anwendungsspezifischem Verhalten zu befüllen. Letztere Methode sollte den ISO-4217-Währungscode (siehe dazu Wikipedia) des Währunsobjektes zurückliefern.

MethodeFunktionAnpassung optional?
CreditorWrapperZuordnung des tatsächlich genutzten Businessobjektesnein



getBic()liefert die BIC des Debitoren, d.h. das Geschäftskennzeichen der Bank des Debitoren (BIC = Business Identifier Code, früher: Bank Identifier Code)nein
getIban()liefert die IBAN des Debitoren, d.h. die internationale Bankkontonummer (IBAN = International Bank Account Number)nein
getName()liefert den Namen des Debitorennein

Tabelle 4.8.1.2: Anpassungen in CreditorWrapper

 

Beispiele dazu sind in Kommentarblöcken angegeben; diese Beispiele sind bei der Integration also an die tatsächlich genutzte Währungsbusinessobjekt (bzw. deren BusinessObject-Klasse) anzupassen.

Codeblock
languagejava
titleorg.nuclet.sepa.wrapper.CreditorWrapper
linenumberstrue
collapsetrue
package org.nuclet.sepa.wrapper;


import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

...

Beispiele dazu sind in Kommentarblöcken angegeben; diese Beispiele sind bei der Integration also an die tatsächlich genutzte Währungsbusinessobjekt (bzw. deren BusinessObject-Klasse) anzupassen.

Codeblock
languagejava
titleorg.nuclet.sepa.wrapper.CreditorWrapper
linenumberstrue
collapsetrue
package org.nuclet.sepa.wrapper;


import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import org.nuclos.api.businessobject.BusinessObject;
import org.nuclos.api.businessobject.facade.Modifiable;
import org.nuclos.api.businessobject.facade.Stateful;

import org.nuclet.sepa.wrapper.AbstractCreditorWrapper;

// @replace!
// 
// import org.nuclet.businesstemplate.Supplier;


/**
 * Wrapper implementation for creditors 
 * 
 * @version 1.0
 * @date 30.01.2015
 * @nuclet org.nuclet.SEPA
 * @nucletversion 2.0.0
 * @sincenucletversion 2.0.0
 * @since 30.01.2015
 * 
 * @author frank.lehmann@nuclos.de
 * 
 */
public class CreditorWrapper extends AbstractCreditorWrapper
{
 public CreditorWrapper(final Modifiable reference)
 {
 // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
 //
 // Beispiel:
 //
 // if (reference instanceof Supplier) {
 // this.businessObject = reference;
 // }
 }
 
 
 /**
 * Liefert den Namen des Debitors
 * 
 */
 public String getName()
 {
 // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
 //
 // Beispiel:
 //
 // return ((Supplier)this.businessObject).getName();
 
 return null;
 }
 
 
 
 
 /**
 * Liefert den BIC für SEPA-Zahlungen
 * 
 */
 public String getBic()
 {
 // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
 //
 // Beispiel:
 //
 // return ((Supplier)this.businessObject).getBic();
 
 return null;
 } 

 /**
 * Liefert den IBAN für SEPA-Zahlungen
 * 
 */
 public String getIban()
 {
 // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
 //
 // Beispiel:
 //
 // return ((Supplier)this.businessObject).getIban();
 
 return null;
 } 

}

...

Mit Zahlungsreferenzen sind jene Objekte gemeint, :

MethodeFunktionAnpassung optional?
CreditTransferReferenceWrapper()Zuordnung des tatsächlich genutzten Businessobjektesnein
   



getAmount()

liefert den zu zahlenden Betrag;

wird genutzt, wenn die Methode getTotalAmount() aus dem übergeordneten

CreditorReferenceWrapper null zurückliefert

nein
getReferenceId()liefert die Datenbank-ID des übergeordneten Referenzobjektes (siehe 4.7.1.2)nein
   



setSEPAExportDate()

setzt das Export-Datum nach erfolgtem SEPA-Export

nein
setSEPAPaymentInformationId()setzt die SEPA-Zahlungsinformation nach erfolgtem SEPA-Exportnein

Tabelle 4.8.1.3: Anpassungen in CreditTransferReferenceWrapper 


 Beispiele dazu sind in Kommentarblöcken angegeben; diese Beispiele sind bei der Integration also an das tatsächlich genutzte Businessobjekt (bzw. deren BusinessObject-Klasse) anzupassen.

Codeblock
languagejava
titleorg.nuclet.sepa.wrapper.PaymentReferenceWrapperCreditTransferReferenceWrapper
linenumberstrue
collapsetrue
package org.nuclet.sepa.wrapper;


import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import org.nuclos.api.businessobject.BusinessObject;
import org.nuclos.api.businessobject.facade.Modifiable;
import org.nuclos.api.businessobject.facade.Stateful;

import org.nuclet.sepa.wrapper.AbstractPaymentReferenceWrapper;

// @replace!
// 
// import org.nuclet.businesstemplate.SupplierBillingPosition;


/**
 * Wrapper implementation for SEPA credit transfer references (invoices, due payments, etc.)
 * 
 * @version 1.0
 * @date 30.01.2015
 * @nuclet org.nuclet.SEPA
 * @nucletversion 2.0.0
 * @sincenucletversion 2.0.0
 * @since 30.01.2015
 * 
 * @author frank.lehmann@nuclos.de
 * 
 */
public class CreditTransferReferenceWrapper extends AbstractCreditTransferReferenceWrapper
{
    public CreditTransferReferenceWrapper(final Modifiable reference)
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // if (reference instanceof SupplierBillingPosition) {
        //     this.businessObject = reference;
        // }
    }
    
    /**
     * Liefert die Datenbank-ID des übergeordneten Referenzobjektes
     * (also bspw. die ID der Rechnung, falls es sich bei den Zahlungsreferenzen um
     * Rechnungspositionen handelt) 
     * 
     */
    public Long getReferenceId()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((SupplierBillingPosition)this.businessObject).getClientBillingId();
        
        return null;
    }
    
    /**
     * Liefert den Zahlungsbetrag
     * 
     */
    public BigDecimal getAmount()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((SupplierBillingPosition)this.businessObject).getAmount();
        
        return null;
    }        
    
    public void setSEPATransactionId(final Long lngSEPATransactionId)
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // ((SupplierBillingPosition)this.businessObject).setSEPATransactionId(lngSEPATransactionId);
    }
    
    public void setSEPAExportDate(final Date datSEPAExportDate)
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // ((SupplierBillingPosition)this.businessObject).setSEPAExportDate(datSEPAExportDate);
    }

}

...

Das sind jene Objekte, die bei SEPA-Exporten als Referenz für Zahlungsanweisungen verwendet werden.

MethodeFunktionAnpassung optional?
DebitorReferenceWrapperZuordnung des tatsächlich genutzten Businessobjektesnein
   



getDebitorId()liefert die Datenbank-ID des Debitorenja
getDirectDebitReference()

liefert das Identifizierungsmerkmal für Lastschriften (also z.B. die Rechnungsnummer)

ja
getReferenceDate()

liefert ein Referenzdatum (bspw. das Rechnungsdatum)

ja
getTotalAmount()

liefert den Gesamtbetrag einer Transaktion (bspw. den Rechnungsbetrag);

falls die Implementierung null zurückliefert, werden die Beträge aus den Einzelbeträgen ermittelt

(siehe unten: DirectDebitReferenceWrapper)
ja

Tabelle 4.8.1.4: Anpassungen in DebitorReferenceWrapper
 


Beispiele dazu sind in Kommentarblöcken angegeben; diese Beispiele sind bei der Integration also an das tatsächlich genutzte Businessobjekt (bzw. deren BusinessObject-Klasse) anzupassen.

Codeblock
languagejava
titleorg.nuclet.sepa.wrapper.ReferenceWrapperDebitorReferenceWrapper
linenumberstrue
collapsetrue
package org.nuclet.sepa.wrapper;


import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import org.nuclos.api.businessobject.BusinessObject;
import org.nuclos.api.businessobject.facade.Modifiable;
import org.nuclos.api.businessobject.facade.Stateful;

import org.nuclet.sepa.wrapper.AbstractDebitorReferenceWrapper;

// @replace!
// 
// import org.nuclet.businesstemplate.ClientBilling;


/**
 * Abstract wrapper class for debitors (client billings, invoices, etc.)
 * 
 * @note replaces the original class ReferenceWrapper
 * 
 * @version 2.01
 * @date 3011.01.20152016
 * @nuclet org.nuclet.SEPA
 * @nucletversion 2.01.03
 * @sincenucletversion 2.0.0
 * @since 30.01.2015
 * 
 * @author frank.lehmann@nuclos.de
 * 
 */
public class DebitorReferenceWrapper extends AbstractDebitorReferenceWrapper
{         
    public DebitorReferenceWrapper(final Modifiable reference)
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // if (reference instanceof ClientBilling) {
        //     this.businessObject = reference;
        // }
    }

    /**
     * Liefert die Datenbank-ID des Debitoren
     * 
     */
    public Long getDebitorId()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((ClientBilling)this.businessObject).getClientId();
        
        return null;
    }
    
    /**
     * Liefert das Identifizierungsmerkmal für Lastschriften (z.B. die Rechnungsnummer)
     * 
     */
    public String getDirectDebitReference()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // 
        // return ((ClientBilling)this.businessObject).getBillingNumber();
        
        return null;
    }        
    
    /**
     * Liefert ein Referenzdatum (bspw. das Rechnungsdatum)
     * 
     */
    public Date getReferenceDate()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((ClientBilling)this.businessObject).getBillingDate();
        
        return null;
    }
}
4.8.1.5 DebitorWrapper

Die Klasse DebitorWrapper dient als Nuclet-Schnittstelle zum tatsächlich genutzten Debitoren-Businessobjekt.

Der Konstruktor der Klasse und die Methode getIso4217Code() sind mit anwendungsspezifischem Verhalten zu befüllen. Letztere Methode sollte den ISO-4217-Währungscode (siehe dazu Wikipedia) des Währunsobjektes zurückliefern.


    
    /**
     * Liefert den Gesamtbetrag (bspw. den Rechnungsbetrag)
     * 
     * @note Falls die Implementierung *null* zurückliefert, werden die Beträge aus den
     * Einzelbeträgen ermittelt (d.h. aus den DirectDebitReferenceWrapper-Objekten)
     */
    public BigDecimal getTotalAmount() {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((ClientBilling)this.businessObject).getTotalAmountGross();
        
        return BigDecimal.ZERO;
    }
}
4.8.1.5 DebitorWrapper

Die Klasse DebitorWrapper dient als Nuclet-Schnittstelle zum tatsächlich genutzten Debitoren-Businessobjekt.

Der Konstruktor der Klasse und die Methode getIso4217Code() sind mit anwendungsspezifischem Verhalten zu befüllen. Letztere Methode sollte den ISO-4217-Währungscode (siehe dazu Wikipedia) des Währunsobjektes zurückliefern.

MethodeFunktionAnpassung optional?
DebitorWrapperZuordnung des tatsächlich genutzten Businessobjektesnein



getBic()liefert die BIC des Debitoren, d.h. das Geschäftskennzeichen der Bank des Debitoren (BIC = Business Identifier Code, früher: Bank Identifier Code)nein
getDateOfSEPAMandateSignature()liefert das Datum, an dem das SEPA-Mandat vom Debitoren ausgestellt/unterzeichnet wurdenein
getHasSEPAMandateChanged()liefert
MethodeFunktionAnpassung optional?DebitorWrapperZuordnung des tatsächlich genutzten Businessobjektesnein 

 

 getBic()liefert die BIC des Debitoren, d.h. das Geschäftskennzeichen der Bank des Debitoren (BIC = Business Identifier Code, früher: Bank Identifier Code)neingetDateOfSEPAMandateSignature()liefert das Datum, an dem das SEPA-Mandat vom Debitoren ausgestellt/unterzeichnet wurdeneingetHasSEPAMandateChanged()liefert Informationen darüber, ob sich das SEPA-Mandat des Debitoren verändert hat (d.h. ob die Bankverbindung geändert wurde)neingetIban()liefert die IBAN des Debitoren, d.h. die internationale Bankkontonummer (IBAN = International Bank Account Number)neingetIsNewDebitorAgent()liefert Informationen darüber, ob der Debitor seit dem letzten SEPA-Exort das Kreditinstitut gewechselt hatneingetName()liefert den Namen des DebitorenneingetOriginalDebitorAccount()liefert die letzte IBAN des Debitoren, falls sich diese seit dem letzten SEPA-Export geändet haben sollteneingetSEPAMandateIdentification()liefert die SEPA-Mandatskennung des DebitorenneingetSEPASequenceTypeId()liefert die SEPA-Laufzeit für den Debitoren (ist die SEPA-Lastschrift erstmals, einmalig oder wiederkehrend?)nein   setHasSEPAMandateChanged()setzt
Informationen darüber, ob sich das SEPA-Mandat des Debitoren verändert hat (d.h. ob die Bankverbindung geändert wurde)nein
getIban()liefert die IBAN des Debitoren, d.h. die internationale Bankkontonummer (IBAN = International Bank Account Number)nein
setIsNewDebitorAgent
getIsNewDebitorAgent()
setzt
liefert Informationen darüber, ob der Debitor seit dem letzten SEPA-Exort das Kreditinstitut gewechselt hatnein
getName()liefert den Namen des Debitorennein
setOriginalDebitorAccount
getOriginalDebitorAccount()
setzt
liefert die letzte IBAN des Debitoren, falls sich diese seit dem letzten SEPA-Export geändet haben solltenein
getSEPAMandateIdentification()liefert die SEPA-Mandatskennung des Debitorennein
setSEPASequenceTypeId
getSEPASequenceTypeId()
setzt
liefert die SEPA-Laufzeit für den Debitoren (ist die SEPA-Lastschrift erstmals, einmalig oder wiederkehrend?)nein

Tabelle 4.8.1.5: Anpassungen in DebitorWrapper

 

Beispiele dazu sind in Kommentarblöcken angegeben; diese Beispiele sind bei der Integration also an die tatsächlich genutzte Währungsbusinessobjekt (bzw. deren BusinessObject-Klasse) anzupassen.




setHasSEPAMandateChanged()setzt Informationen darüber, ob sich das SEPA-Mandat des Debitoren verändert hat (d.h. ob die Bankverbindung geändert wurde)nein
setIsNewDebitorAgent()setzt Informationen darüber, ob der Debitor seit dem letzten SEPA-Exort das Kreditinstitut gewechselt hatnein
setOriginalDebitorAccount()setzt die letzte IBAN des Debitoren, falls sich diese seit dem letzten SEPA-Export geändet haben solltenein
setSEPASequenceTypeId()setzt die SEPA-Laufzeit für den Debitoren (ist die SEPA-Lastschrift erstmals, einmalig oder wiederkehrend?)nein

Tabelle 4.8.1.5: Anpassungen in DebitorWrapper


Beispiele dazu sind in Kommentarblöcken angegeben; diese Beispiele sind bei der Integration also an die tatsächlich genutzte Währungsbusinessobjekt (bzw. deren BusinessObject-Klasse) anzupassen.

Codeblock
languagejava
titleorg.nuclet.sepa.wrapper.DebitorWrapper
linenumberstrue
collapsetrue
package org.nuclet.sepa.wrapper;


import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import org.nuclos.api.businessobject.BusinessObject;
import org.nuclos.api.businessobject.facade.Modifiable;
import org.nuclos.api.businessobject.facade.Stateful;

// @replace!
// 
// import org.nuclet.businesstemplate.Client;


/**
 * Wrapper implementation for debitors 
 * 
 * @version 1.0
 * @date 21.03.2014
 * @nuclet org.nuclet.SEPA
 * @nucletversion 1.0.0
 * @sincenucletversion 1.0.0
 * @since 21.03.2014
 * 
 * @author frank.lehmann@nuclos.de
 * 
 */
public class DebitorWrapper extends AbstractDebitorWrapper
{
    public DebitorWrapper(final Modifiable reference)
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // if (reference instanceof Client) {
        //    this.businessObject = reference;
        // }
    }
    
    
    /**
     * Liefert den Namen des Debitors
     * 
     */
    public String getName()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((Client)this.businessObject).getName();
        
        return null;
    }
    
    
    /**
     * Liefert die SEPA-Mandatskennung
     */
    public String getSEPAMandateIdentification()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((Client)this.businessObject).getSEPAMandateIdentification();
        
        return null;
    }
               
    /**
     * Liefert das Ausstellungsdatum des SEPA-Mandats
     */
    public Date getDateOfSEPAMandateSignature()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((Client)this.businessObject).getDateOfSEPAMandateSignature();
        
        return null;
    }
    
    /**
     * Liefert Informationen darüber, ob sich das SEPA-Mandat auf Debitorenseite 
     * geändert hat
     */
    public Boolean getHasSEPAMandateChanged()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((Client)this.businessObject).getHasSEPAMandateChanged();
        
        return null;
    }
    
    /**
     * Setzt die Informationen darüber, ob sich das SEPA-Mandat auf Debitorenseite 
     * geändert hat
     */
    public void setHasSEPAMandateChanged(final Boolean blnHasSEPAMandateChanged)
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // ((Client)this.businessObject).setHasSEPAMandateChanged(blnHasSEPAMandateChanged);
    }
    
    /**
     * Liefert Informationen darüber, ob sich das Kreditinstitut auf Debitorenseite
     * gewechselt wurde
     */
    public Boolean getIsNewDebitorAgent(
Codeblock
languagejava
titleorg.nuclet.sepa.wrapper.DebitorWrapper
linenumberstrue
collapsetrue
package org.nuclet.sepa.wrapper;


import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import org.nuclos.api.businessobject.BusinessObject;
import org.nuclos.api.businessobject.facade.Modifiable;
import org.nuclos.api.businessobject.facade.Stateful;

// @replace!
// 
// import org.nuclet.businesstemplate.Client;


/**
 * Wrapper implementation for debitors 
 * 
 * @version 1.0
 * @date 21.03.2014
 * @nuclet org.nuclet.SEPA
 * @nucletversion 1.0.0
 * @sincenucletversion 1.0.0
 * @since 21.03.2014
 * 
 * @author frank.lehmann@nuclos.de
 * 
 */
public class DebitorWrapper extends AbstractDebitorWrapper
{
    public DebitorWrapper(final Modifiable reference)
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // if (reference instanceof Client) {//
        //    return ((Client)this.businessObject = reference;
).getIsNewDebitorAgent();
        
    // }
   return }null;
    }
    
    /**
     * Liefert den Namen des Debitors Setzt die Informationen darüber, ob sich das Kreditinstitut auf Debitorenseite
     * gewechselt wurde
     */
    public Stringvoid getNamesetIsNewDebitorAgent(final Boolean blnIsNewDebitorAgent)
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((Client)this.businessObject).getName();
        
        return null).setIsNewDebitorAgent(blnIsNewDebitorAgent);
    }
    
    
    /**
     * Liefert die Datenbank-ID der SEPA-MandatskennungLaufzeit
     * 
     */
    public StringLong getSEPAMandateIdentificationgetSEPASequenceTypeId()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((Client)this.businessObject).getSEPAMandateIdentificationgetSEPASequenceTypeId();
        
        return null;
    }
    
    /**
     * Setzt 
die Datenbank-ID   /**der SEPA-Laufzeit
     * Liefert das Ausstellungsdatum des SEPA-Mandats
     */
    public Datevoid getDateOfSEPAMandateSignaturesetSEPASequenceTypeId(final Long lngSEPASequenceTypeId)
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((Client)this.businessObject).getDateOfSEPAMandateSignaturesetSEPASequenceTypeId(lngSEPASequenceTypeId);
        
       }

 return null;
    }
    
    /**
     * Liefert Informationenden darüber, ob sich dasBIC für SEPA-Mandat auf Debitorenseite Zahlungen
     * geändert hat
     */
    public BooleanString getHasSEPAMandateChangedgetBic()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((Client)this.businessObject).getHasSEPAMandateChangedgetBic();
        
        return null;
    }
    

    /**
     * SetztLiefert dieden Informationen darüber, ob sich dasIBAN für SEPA-Mandat auf Debitorenseite Zahlungen
     * geändert hat
     */
    public voidString setHasSEPAMandateChangedgetIban(final Boolean blnHasSEPAMandateChanged)
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((Client)this.businessObject).setHasSEPAMandateChanged(blnHasSEPAMandateChanged)getIban();
        
        return null;
    }
    
    /**
     * Liefert Informationendie darüber,alte obIBAN sich das Kreditinstitut auf Debitorenseitebei SEPA-Mandatsänderungen
     * gewechselt wurde
     */
    public BooleanString getIsNewDebitorAgentgetOriginalDebitorAccount()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((Client)this.businessObject).getIsNewDebitorAgentgetOriginalDebitorAccount();
        
        return null;
    }
    
    /**
     * Setzt die Informationenalte darüber,IBAN ob sich das Kreditinstitut auf Debitorenseitebei SEPA-Mandatsänderungen
     * gewechselt wurde
     */
    public void setIsNewDebitorAgentsetOriginalDebitorAccount(final BooleanString blnIsNewDebitorAgentstrOriginalDebitorAccount)
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
  @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!// Beispiel:
        //
        // Beispiel:
        //
        // ((Client)this.businessObject).setIsNewDebitorAgent(blnIsNewDebitorAgent);
    }
 
    /**
     * Liefert die Datenbank-ID der SEPA-Laufzeit
     * 
     */
    public Long getSEPASequenceTypeId()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((Client)this.businessObject).getSEPASequenceTypeId();
        
        return null;
    }
    
    /**
     * Setzt die Datenbank-ID der SEPA-Laufzeit
     * 
     */
    public void setSEPASequenceTypeId(final Long lngSEPASequenceTypeId)
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // ((Client)this.businessObject).setSEPASequenceTypeId(lngSEPASequenceTypeId);
    }

          
    /**
     * Liefert den BIC für SEPA-Zahlungen
     * 
     */
    public String getBic()
    {
        ((Client)this.businessObject).setOriginalDebitorAccount(strOriginalDebitorAccount);
    }
    

}


4.8.1.6 DirectDebitReferenceWrapper

Die Klasse CreditTransferReferenceWrapper dient als Nuclet-Schnittstelle zum tatsächlich genutzten Businessobjekt für Zahlungsreferenzen.

Mit Zahlungsreferenzen sind jene Objekte gemeint, :

MethodeFunktionAnpassung optional?
DirectDebitReferenceWrapper()Zuordnung des tatsächlich genutzten Businessobjektesnein



getAmount()

liefert den zu zahlenden Betrag;

wird genutzt, wenn die Methode getTotalAmount() aus dem übergeordneten

DebitorReferenceWrapper null zurückliefert

nein
getReferenceId()liefert die Datenbank-ID des übergeordneten Referenzobjektes (siehe 4.7.1.2)nein



setSEPAExportDate()

setzt das Export-Datum nach erfolgtem SEPA-Export

nein
setSEPAPaymentInformationId()setzt die SEPA-Zahlungsinformation nach erfolgtem SEPA-Exportnein

Tabelle 4.8.1.3: Anpassungen in DirectDebitReferenceWrapper


 Beispiele dazu sind in Kommentarblöcken angegeben; diese Beispiele sind bei der Integration also an das tatsächlich genutzte Businessobjekt (bzw. deren BusinessObject-Klasse) anzupassen.

Codeblock
languagejava
titleorg.nuclet.sepa.wrapper.DirectDebitReferenceWrapper
linenumberstrue
collapsetrue
package org.nuclet.sepa.wrapper;


import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import org.nuclos.api.businessobject.BusinessObject;
import org.nuclos.api.businessobject.facade.Modifiable;
import org.nuclos.api.businessobject.facade.Stateful;

import org.nuclet.sepa.wrapper.AbstractDirectDebitReferenceWrapper;

// @replace!
// 
// import org.nuclet.businesstemplate.ClientBillingPosition;


/**
 * Wrapper implementation for SEPA direct debit references (invoices, due payments, etc.)
 * 
 * @note replaces the original class AbstractPaymentReferenceWrapper
 * 
 * @version 1.0
 * @date 30.01.2015
 * @nuclet org.nuclet.SEPA
 * @nucletversion 2.0.0
 * @sincenucletversion 2.0.0
 * @since 30.01.2015
 * 
 * @author frank.lehmann@nuclos.de
 * 
 */
public class DirectDebitReferenceWrapper extends AbstractDirectDebitReferenceWrapper
{
 public DirectDebitReferenceWrapper(final Modifiable reference)
 {
 // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
 // if (reference instanceof ClientBillingPosition)  {
 // return ((Client)this.businessObject).getBic();
        
        return null = reference;
 // }
 }
 }
 /**
 * Liefert 

die Datenbank-ID des übergeordneten /**Referenzobjektes
 * (also bspw. die *ID Liefertder denRechnung, IBANfalls für SEPA-Zahlungen
    es sich bei den Zahlungsreferenzen um
 * 
Rechnungspositionen handelt) 
 * 
 */
    public StringLong getIbangetReferenceId()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        //
 // Beispiel:
        //
        // return ((ClientClientBillingPosition)this.businessObject).getIbangetClientBillingId();
        
        return null;
    }
    
    /**
     * Liefert die alte IBAN bei SEPA-Mandatsänderungen
    den Zahlungsbetrag
 * 
     */
    public StringBigDecimal getOriginalDebitorAccountgetAmount()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        Code ersetzen!
 //
        // Beispiel:
        //
        // return ((ClientClientBillingPosition)this.businessObject).getOriginalDebitorAccountgetAmount();
        
        return null;
    }
    
    /**
 public void setSEPATransactionId(final Long * Setzt die alte IBANlngSEPATransactionId)
 {
 // @replace! Bitte bei SEPANuclet-Mandatsänderungen
Integration mit eigenem Code  * ersetzen!
 //
     */
   // Beispiel:
 //
 // ((ClientBillingPosition)this.businessObject).setSEPATransactionId(lngSEPATransactionId);
 }
 
 public void setOriginalDebitorAccountsetSEPAExportDate(final StringDate strOriginalDebitorAccountdatSEPAExportDate)
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // ((ClientClientBillingPosition)this.businessObject).setOriginalDebitorAccountsetSEPAExportDate(strOriginalDebitorAccountdatSEPAExportDate);
    }
    

}

 

 

 

 

 

...