globe with meridians Language: Deutsch · English

hammer and wrench 4.8.1 SEPA: Nuclet interfaces

Adapt the Nuclet-independent wrapper classes (creditors, debtors, references, payment references) to the business objects actually used in the target Nuclet.

HOW-TO INTEGRATORS UPDATED: JUL 2026 APPLIES TO NUCLOS 4.2026.X

On this page

Machine-translated – under review

This page was machine-translated from German as a first draft and is currently under review. The authoritative source remains the German original (see the language switch above).

The aim of this step is to connect the business object actually used in the target Nuclet to the Java code of the SEPA Nuclet. To this end, the approach of using Nuclet-independent wrapper classes is followed – instead of the business object classes generated for the business objects.

For the technical background, please also read the article "Interfaces in Java rules".

This integration step can only be carried out once the prerequisites from section 3 are met – i.e. as soon as corresponding attributes exist in the business objects used.

When connecting the SEPA Nuclet, wrapper classes must be adjusted for creditors (suppliers, etc.), debtors (customers, etc.), references (invoices, documents, etc.) and payment references (receivables, invoice line items, etc.).

The following overview lists all wrapper classes grouped by use case. All classes are located in the Java package org.nuclet.sepa.wrapper.

If you want to use the SEPA Nuclet either only for direct debits or only for credit transfers, then only the respective classes for your use case need to be adjusted. You can ignore the remaining classes.

Wrapper classNoteFunctionUse case
CreditorReferenceWrappernew from v2.0.0connection to the reference objects used (incoming invoices, credit notes, etc.)Credit transfers

CreditorWrappernew from v2.0.0connection to the creditors, suppliers, etc. used
CreditTransferReferenceWrappernew from v2.0.0connection to the payment reference objects used (receivables, invoice line items, postings, etc.)
DebitorReferenceWrappernew from v2.0.0, replaces ReferenceWrapperconnection to the reference objects used (outgoing invoices, etc.)Direct debits
DebitorWrapper
connection to the debtors, customers, etc. used
DirectDebitReferenceWrappernew from v2.0.0connection to the payment reference objects used (receivables, invoice line items, postings, etc.)
ReferenceWrapperobsolete from v2.0.0, replaced by DebitReferenceWrapperconnection to the reference objects used (invoices, etc.)Direct debits
PaymentReferenceWrapperobsolete from v2.0.0, replaced by DirectDebitReferenceWrapperconnection to the payment reference objects used (receivables, invoice line items, etc.)Direct debits

Table 4.8.1: Overview of Nuclet interfaces

Please note that this integration step is only about establishing the connection to the attributes of the actually used business objects.

You normally do not have to implement any process logic at this point.

4.8.1.1 CreditorReferenceWrapper

The ReferenceWrapper class serves as the Nuclet interface for actually used reference objects (invoices, receivables, documents, etc.).

These are the objects that are used as a reference for payment instructions in SEPA exports.

MethodFunctionAdjustment optional?
CreditorReferenceWrapperAssignment of the actually used business objectno



getCreditorId()returns the database ID of the creditoryes
getCreditTransferReference()

returns the identification feature for credit transfers (e.g. the invoice number)

yes
getReferenceDate()

returns a reference date (e.g. the invoice date)

yes
getTotalAmount()

returns the total amount of a transaction (e.g. the invoice amount);

if the implementation null returns, the amounts are determined from the individual amounts

(see below: CreditTransferReferenceWrapper)

yes

Table 4.8.1.1: Adjustments in CreditorReferenceWrapper

Examples are given in comment blocks; these examples must therefore be adapted, during integration, to the actually used business object (or its BusinessObject class).

org.nuclet.sepa.wrapper.CreditorReferenceWrapper
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.1
 * @date 11.01.2016
 * @nuclet org.nuclet.SEPA
 * @nucletversion 2.1.3
 * @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;
    }    
    
    /**
     * 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

The CreditorWrapper class serves as the Nuclet interface to the actually used creditor business object.

The constructor of the class and the getIso4217Code() method must be filled with application-specific behaviour. The latter method should return the ISO 4217 currency code (see Wikipedia) of the currency object.

MethodFunctionAdjustment optional?
CreditorWrapperAssignment of the actually used business objectno


getBic()returns the debtor's BIC, i.e. the business identifier of the debtor's bank (BIC = Business Identifier Code, formerly: Bank Identifier Code)no
getIban()returns the debtor's IBAN, i.e. the international bank account number (IBAN = International Bank Account Number)no
getName()returns the name of the debtorno

Table 4.8.1.2: Adjustments in CreditorWrapper

 

Examples are given in comment blocks; these examples must therefore be adapted, during integration, to the actually used currency business object (or its BusinessObject class).

org.nuclet.sepa.wrapper.CreditorWrapper
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;
 } 

}
4.8.1.3 CreditTransferReferenceWrapper

The CreditTransferReferenceWrapper class serves as the Nuclet interface to the actually used business object for payment references.

By payment references we mean those objects:

MethodFunctionAdjustment optional?
CreditTransferReferenceWrapper()Assignment of the actually used business objectno



getAmount()

returns the amount to be paid;

is used when the getTotalAmount() method from the parent

CreditorReferenceWrapper null returns

no
getReferenceId()returns the database ID of the parent reference object (see 4.7.1.2)no



setSEPAExportDate()

sets the export date after a completed SEPA export

no
setSEPAPaymentInformationId()sets the SEPA payment information after a completed SEPA exportno

Table 4.8.1.3: Adjustments in CreditTransferReferenceWrapper

 Examples are given in comment blocks; these examples must therefore be adapted, during integration, to the actually used business object (or its BusinessObject class).

org.nuclet.sepa.wrapper.CreditTransferReferenceWrapper
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);
    }

}
4.8.1.4 DebitorReferenceWrapper

The ReferenceWrapper class serves as the Nuclet interface for actually used reference objects (invoices, receivables, documents, etc.).

These are the objects that are used as a reference for payment instructions in SEPA exports.

MethodFunctionAdjustment optional?
DebitorReferenceWrapperAssignment of the actually used business objectno



getDebitorId()returns the database ID of the debtoryes
getDirectDebitReference()

returns the identification feature for direct debits (e.g. the invoice number)

yes
getReferenceDate()

returns a reference date (e.g. the invoice date)

yes
getTotalAmount()

returns the total amount of a transaction (e.g. the invoice amount);

if the implementation null returns, the amounts are determined from the individual amounts

(see below: DirectDebitReferenceWrapper)
yes

Table 4.8.1.4: Adjustments in DebitorReferenceWrapper

Examples are given in comment blocks; these examples must therefore be adapted, during integration, to the actually used business object (or its BusinessObject class).

org.nuclet.sepa.wrapper.DebitorReferenceWrapper
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.1
 * @date 11.01.2016
 * @nuclet org.nuclet.SEPA
 * @nucletversion 2.1.3
 * @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;
    }
    
    /**
     * 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

The DebitorWrapper class serves as the Nuclet interface to the actually used debtor business object.

The constructor of the class and the getIso4217Code() method must be filled with application-specific behaviour. The latter method should return the ISO 4217 currency code (see Wikipedia) of the currency object.

MethodFunctionAdjustment optional?
DebitorWrapperAssignment of the actually used business objectno


getBic()returns the debtor's BIC, i.e. the business identifier of the debtor's bank (BIC = Business Identifier Code, formerly: Bank Identifier Code)no
getDateOfSEPAMandateSignature()returns the date on which the SEPA mandate was issued/signed by the debtorno
getHasSEPAMandateChanged()returns information on whether the debtor's SEPA mandate has changed (i.e. whether the bank details have changed)no
getIban()returns the debtor's IBAN, i.e. the international bank account number (IBAN = International Bank Account Number)no
getIsNewDebitorAgent()returns information on whether the debtor has changed bank since the last SEPA exportno
getName()returns the name of the debtorno
getOriginalDebitorAccount()returns the debtor's previous IBAN, in case it has changed since the last SEPA exportno
getSEPAMandateIdentification()returns the debtor's SEPA mandate identificationno
getSEPASequenceTypeId()returns the SEPA sequence type for the debtor (is the SEPA direct debit first, one-off or recurring?)no



setHasSEPAMandateChanged()sets information on whether the debtor's SEPA mandate has changed (i.e. whether the bank details have changed)no
setIsNewDebitorAgent()sets information on whether the debtor has changed bank since the last SEPA exportno
setOriginalDebitorAccount()sets the debtor's previous IBAN, in case it has changed since the last SEPA exportno
setSEPASequenceTypeId()sets the SEPA sequence type for the debtor (is the SEPA direct debit first, one-off or recurring?)no

Table 4.8.1.5: Adjustments in DebitorWrapper

Examples are given in comment blocks; these examples must therefore be adapted, during integration, to the actually used currency business object (or its BusinessObject class).

org.nuclet.sepa.wrapper.DebitorWrapper
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()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((Client)this.businessObject).getIsNewDebitorAgent();
        
        return null;
    }
    
    /**
     * Setzt die Informationen darüber, ob sich das Kreditinstitut auf Debitorenseite
     * gewechselt wurde
     */
    public void setIsNewDebitorAgent(final Boolean blnIsNewDebitorAgent)
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // 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()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((Client)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 ((Client)this.businessObject).getIban();
        
        return null;
    }
    
    /**
     * Liefert die alte IBAN bei SEPA-Mandatsänderungen
     * 
     */
    public String getOriginalDebitorAccount()
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // return ((Client)this.businessObject).getOriginalDebitorAccount();
        
        return null;
    }
    
    /**
     * Setzt die alte IBAN bei SEPA-Mandatsänderungen
     * 
     */
    public void setOriginalDebitorAccount(final String strOriginalDebitorAccount)
    {
        // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
        //
        // Beispiel:
        //
        // ((Client)this.businessObject).setOriginalDebitorAccount(strOriginalDebitorAccount);
    }
    

}
4.8.1.6 DirectDebitReferenceWrapper

The CreditTransferReferenceWrapper class serves as the Nuclet interface to the actually used business object for payment references.

By payment references we mean those objects:

MethodFunctionAdjustment optional?
DirectDebitReferenceWrapper()Assignment of the actually used business objectno



getAmount()

returns the amount to be paid;

is used when the getTotalAmount() method from the parent

DebitorReferenceWrapper null returns

no
getReferenceId()returns the database ID of the parent reference object (see 4.7.1.2)no



setSEPAExportDate()

sets the export date after a completed SEPA export

no
setSEPAPaymentInformationId()sets the SEPA payment information after a completed SEPA exportno

Table 4.8.1.3: Adjustments in DirectDebitReferenceWrapper

 Examples are given in comment blocks; these examples must therefore be adapted, during integration, to the actually used business object (or its BusinessObject class).

org.nuclet.sepa.wrapper.DirectDebitReferenceWrapper
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) {
 // 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 ((ClientBillingPosition)this.businessObject).getClientBillingId();
 
 return null;
 }
 
 /**
 * Liefert den Zahlungsbetrag
 * 
 */
 public BigDecimal getAmount()
 {
 // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
 //
 // Beispiel:
 //
 // return ((ClientBillingPosition)this.businessObject).getAmount();
 
 return null;
 } 
 
 public void setSEPATransactionId(final Long lngSEPATransactionId)
 {
 // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
 //
 // Beispiel:
 //
 // ((ClientBillingPosition)this.businessObject).setSEPATransactionId(lngSEPATransactionId);
 }
 
 public void setSEPAExportDate(final Date datSEPAExportDate)
 {
 // @replace! Bitte bei Nuclet-Integration mit eigenem Code ersetzen!
 //
 // Beispiel:
 //
 // ((ClientBillingPosition)this.businessObject).setSEPAExportDate(datSEPAExportDate);
 }

}

Related pages

open book Nuclet: SEPA


SEPA Nuclet data sheet

Open →

open book Interfaces


All integrations

Open →

  • Keine Stichwörter