Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.
  • Übertrag der Belege und Stornos von PerformX in Abacus Debitorenbuchhaltung

  • Grundlage für den Übertrag von Kundenbelegen und Stornos an Abacus

  • Es werden keine Rechnungsbelege (PDF) übertragen

  • Details zur Schnittstelle von Abacus

Beschreibung Belege

Quelle

PerformX Belege/Belegarten

Ziel

Abacus Belege/Belegpositionen

Notwendige Abacus-Schnittstelle

AbaConnect Debitorenbuchhaltung

Abacus Schnittstellenversion

debi/document_2024.00

Beschreibung Bedingung für den Übertrag

  1. Abacus Mandant im Geschaeftbereich muss gleich sein wie der Wert "Mandantennummer" in den Parameters der Verbindungseinstellung

  2. Das Feld "

AbacusNummer
  1. AbacusNummer” muss leer sein (das ist meistens dieselbe Nummer wie die BelegNummer, diese wird jedoch automatisch beim ersten erfolgreichen Beleg-Uebertrag durch die Schnittstelle abgefuellt. Wenn dieses Feld leer ist, dann ist der Beleg noch nicht in Abacus Debi)

  2. BelegStatusValue == 1 bedeutet "

Definitiv
  1. Fixiert". 0 ware "Entwurf" und 2 waere "Verbucht". Es werde nur die Definitiven Belege uebtragen. Nach erfolgreicher Uebertragung wird dieser Status in dieser Zuordnungsdefinition auf "Verbucht" gesetzt.

  2. BelegArt.KurzZeichen != 'ST' bedeutet, dass Stornobelege ausgefiltert werden.

  3. BelegDatum wird wahlweise etwas eingeschraenkt. Dies spielt vorallem eine Rolle wenn die Abacus Anbindung zu einem anderen Zeitpunkt als PerformX stattfindet. Man kann damit entscheiden, dass nur Belege ab einem bestimmten Schnitttag in Frage kommen.

  4. Das BelegDatum ist fueher als das auf dem Geschaeftsbereich eingestellte ‘spaeteste Belegdatum’. Mit dieser Einstellung kann verhindert werden, dass Belege, die in fernerer Zukunft liegen, verfrueht in die Abacus Debi uebertragen werden.

Spezifikation Standard-Schnittstelle

Technische Basiskonfiguration

...

Basis Mapping

...

Beleg

Beschreibung/Notizen

Übertrag
. Rechnungen und Gutschriften in Abacus Debitorenbuchhaltung

Quellfilterbeschrieb

. Abacus Mandant im Geschäftbereich muss gleich sein wie der Wert "Mandantennummer" in den Parameters der Verbindungseinstellung
. UND Das Feld "AbacusNummer muss leer sein (wenn dieses Feld leer ist, dann ist der Beleg noch nicht in Abacus Debi)
. UND BelegStatusValue == 1 bedeutet "Fixiert". 0 bedeutet "Entwurf" und 2 bedeutet "Verbucht". Es werden nur die fixierten Belege übertragen. Nach erfolgreicher Übertragung wird dieser Status in dieser Zuordnungsdefinition auf "Verbucht" gesetzt
. UND BelegDatum wird wahlweise eingeschränkt. Dies spielt vor allem eine Rolle wenn die Abacus Anbindung zu einem anderen Zeitpunkt als PerformX stattfindet. Man kann damit entscheiden, dass nur Belege ab einem bestimmten Schnitttag in Frage kommen
. UND der Debitorenbeleg hat ein Datum kleiner/gleich voreingestelltes Maximaldatum des Geschaeftsbereiches

Allgemeine Funktion dieser Zuordnungsdefinition
. Nachdem ein Beleg in Abacus übertragen wurde, wird der BelegStatusValue auf "Verbucht" gesetzt und die BelegNummer ins Feld AbacusNummer geschrieben
. Die Schnittstelle füllt weitere Synchronisationswerte ein

Quell Objekt

Beleg

Ziel Objekt

debi/document_2024.00

Synchronisation

Update oder Insert

Verwendeter Index

-

Vergabe Identifikation/Nummer

Mapping

Interne Synchronisationsfelder

Quellfilter

GeschaeftsBereich.AbacusMandant == Parameters("Mandantennummer") && ?AbacusNummer && BelegStatusValue == 1 && BelegArt.KurzZeichen != 'ST' && BelegDatum >= CreateDate(2024, 01, 01) && BelegDatum <= GeschaeftsBereich.BelegDatumMaximum

Zuordnungsdefinition

Belege

Synchronisationsrichtung

Feldzuordnungsart

Quellfeld

Zielfeld

Beschreibung/Notizen

Quelle -> Ziel

Formel

DebitorAdresse.Nummer

Document.CustomerNumber

Quelle -> Ziel

Formel

Nummer

Document.Number

Quelle -> Ziel

Formel

'CHF'

Document.Currency

Fix

Fixer Wert für CHF

Quelle -> Ziel

1:1

Belegart.CodeAbacus

Document.DocumentCode

Quelle -> Ziel

Formel

HinweisKunde

Document.Reference

Quelle -> Ziel

1:1

BelegDatum

Document.GeneralLedgerDate

Fibu

Datum ist das gleiche wie Debi Datum

-Datum wird analog Debi-Datum gesetzt

Quelle -> Ziel

1:1

TotalInklMwst

Document.Amount

Quelle -> Ziel

1:1

TotalInklMwst

Document.KeyAmount

Quelle -> Ziel

1:1

BelegDatum

Document.AccountReceivableDate

Dispo-Datum wird analog Debi-Datum gesetzt

Quelle -> Ziel

1:1

BelegDatum

Document.DispositionDate

Quelle -> Ziel

Formel

Geschaeftsbereich.AbacusGeschaeftsbereich

Document.Division

Quelle -> Ziel

1:1

Geschaeftsbereich.AbacusMahnbereich

Document.GroupNumber1

Optional: Pro PerformX-Geschäftsbereich die Freie Beleggruppennummer1 auf dem Beleg übertragen (Filterung OP-Listen etc.). Derselbe Wert

wie

wird im Mahnbereich

wird

verwendet.

Quelle -> Ziel

Formel

DebitorAdresse.ForderungsKonto.Nummer ?? Geschaeftsbereich.AbacusForderungskonto

Document.CollectiveAccount

Wenn Debitor eine Firma ist, das kann es sein, dass auf dem Debitor ein abweichendes Forderungskonto definiert ist

Optionales Forderungskonto für eine Firma (z.B. für nahestehende Firmen). Wenn das Feld DebitorAdresse.ForderungsKonto.Nummer

nicht

leer ist, dann wird

dieses Konto in die Abacus Debi uebertragen

das Sammelkonto gemäss Geschäftsbereich übertragen (Document.CollectiveAccount)

, das Sammelkonto in Abacus Debi.

Falls es leer ist (was bei einem Debitor vom Typ 'Person' immer der Fall ist), dann wird das voreingestellte Forderungskonto des betreffenden Geschaeftsbereiches uebertragen. Auf dem Geschaeftsbereich ist das Feld AbacusForderungskonto zwingend.

Quelle -> Ziel

Formel

0

Document.PaymentCentre

Quelle -> Ziel

1:1

Zahlungsweg.CodeAbacus

Document.PaymentOrderProcedure

Quelle -> Ziel

Formel

'QR'

Document.PaymentReferenceLineType

Fix 'QR'

Quelle -> Ziel

Formel

ReferenzNummer

Document.PaymentReferenceLine

Quelle -> Ziel

Formel

false

Document.TaxRecalculation

Quelle -> Ziel

1:1

Geschaeftsbereich.AbacusMahnverfahren

Document.ReminderProcedure

ABACUS

fuehrt

führt das Mahnverfahren

auf

pro Beleg Debitor. Wenn Belege in PerformX entstehen, werden pro Beleg das im

Geschaeftbereich

Geschäftsbereich hinterlegte Mahnverfahren und Mahnbereiche

uebergeben

übergeben. Mahnverfahren ist 4 stelliger String und Mahnbereich Integer

gemaess

gemäss Einstellungen in ABACUS

.

Quelle -> Ziel

1:1

Geschaeftsbereich.AbacusMahnbereich

Document.ReminderArea

ABACUS

fuehrt Mahnverfahren auf

führt den Mahnbereit pro Beleg Debitor. Wenn Belege in PerformX entstehen, werden pro Beleg das im

Geschaeftbereich

Geschäftsbereich hinterlegte Mahnverfahren und Mahnbereiche

uebergeben

übergeben. Mahnverfahren ist 4 stelliger String und Mahnbereich Integer

gemaess

gemäss Einstellungen in ABACUS

.

Quelle -> Ziel

Unterliste

BelegPositionen

Document.LineItem

Quelle -> Ziel

1:1

Zahlungskondition.CodeAbacus

Document.PaymentTerm.Number

Quelle -> Ziel

Formel

0

Document.PaymentTerm.Type

Quelle -> Ziel

Formel

'true'

Document.PaymentTerm.CopyFromTable

Ziel -> Quelle

1:1

Document.Number

AbacusNummer

Ziel -> Quelle

Formel

if(Document.Amount == 0, 2, if(Document.AmountOI <= 0, 2 , if(Document.AmountOI == Document.Amount,0,1)))

ZahlungsStatusValue

Rueckschreiben des OP von Abacus nach PerformX:

Dies erfolgt beim ersten Uebertrag, damit der Zahlstatus in Px erstmlas definiert ist.

Wenn Beleg Betrag = 0, dann ist der Status = 2 (Bzaht/Ueberbezahlt)
Wenn der OP Betrag <= 0, dann  ist der Status = 2 (Bzaht/Ueberbezahlt)
Wenn der OP Betrag = Beleg Betrag, dann ist der Status = 0 (offen), sonst ist der Status =  1 (Teilbezahlt)

Ziel -> Quelle

1:1

Document.AmountOI

OffenerBetrag

Ziel -> Quelle

Formel

2

BelegStatusValue

Belegstatus auf 'verbucht' (Status 2)  setzen nach

Erstuebertagung

Erstübertagung Abacus Debi

BelegPositionen

Synchronisationsrichtung

Feldzuordnungsart

Quellfeld

Zielfeld

Beschreibung/Notizen

Quelle -> Ziel

1:1

SortOrderBeleg

Number

Quelle -> Ziel

1:1

PositionsTotalNettoInkl

Amount

Quelle -> Ziel

1:1

PositionsTotalNettoInkl

KeyAmount

Quelle -> Ziel

1:1

Konto.Nummer

CreditAccount

Ertragskonto auf der Belegsposition

Quelle -> Ziel

1:1

Kostentraeger.Nummer

CreditCostCentre1

Kostentraeger auf der Belegsposition

Quelle -> Ziel

1:1

Beleg.Geschaeftsbereich.AbacusKostenstelleBereich

CreditCostCentre2

Optional: Zweite Ebene ab Kostenstelle pro Geschäftsbereich

Quelle -> Ziel

1:1

Artikel.Mehrwertsteuer.CodeAbacus

TaxCode

Quelle -> Ziel

Formel

1

TaxMethod

Fix 1 fuer vereinbart

Quelle -> Ziel

Formel

2

TaxIncluded

Fix 2 für inklusive (gemaess Abacus via SST nur inklusive möglich)

Quelle -> Ziel

Formel

MwstBetrag *-1

TaxAmount

Abacus erwartet einen negativen Betrag

Quelle -> Ziel

Formel

MwstBetrag *-1

KeyTaxAmount

Abacus erwartet einen negativen Betrag

Quelle -> Ziel

1:1

Beleg.BelegDatum

TaxDateValidFrom

Quelle -> Ziel

Formel

Artikel + if (!?BelegPositionGruppe, (' - ' + BelegPositionGruppe), null)

Text

Update 31.7.2024 (PZ):
.statt bisher (Artikel + ' - ' + ZusatzBeschreibung) -> neu Artikel + if (!?BelegPositionGruppe, (' - ' + BelegPositionGruppe)

Text

, null)
.zusaetzlich wurd hinzugefuegt, dass kein Bindestrich uebertragen wird, falls es keine Positionsgruppenzuordnung gibt

Quelle -> Ziel

Formel

Beleg.Geschaeftsbereich.AbacusGeschaeftsbereich

Division

Versionierung

Bezeichnung

Notes

22.10.2024: Rev 4 PZ:

Quellfilteranapassung: Mit Einfuehrung der Storno Uebertragung muessen die Beleg vom Typ Storno herausgefiltert werden (BelegArt.KurzZeichen != 'ST'):
GeschaeftsBereich.AbacusMandant == Parameters("Mandantennummer") && ?AbacusNummer && BelegStatusValue == 1 && BelegArt.KurzZeichen != 'ST' && BelegDatum >= CreateDate(2024, 01, 01) && BelegDatum <= GeschaeftsBereich.BelegDatumMaximum

05.09.2024: Rev3 PZ

Quellfilteranpassung: Zusatzliche Einschraenkung: Es duerfen nur Adressen uebertragen werden, die Belege haben mit Belegdatum < als das auf dem Geschaeftsbereich voreingestellte spaeteste Belegdatum haben

(Status == true) && (Debitorbelege.Geschaeftsbereich.AbacusMandant == Parameters("MandantenNummer") && Debitorbelege.BelegDatum >= CreateDate(2024, 01, 01)) && Debitorbelege.BelegDatum <= Debitorbelege.GeschaeftsBereich.BelegDatumMaximum && Debitorbelege.BelegStatusValue != 0 && (?ConnectorMapping.ErfolgreicheSynchronisation || VeraendertAm > ConnectorMapping.ErfolgreicheSynchronisation)<

31.07.2024: Rev 2 PZ

Der Uebertrag der Bemerkung wurde im Standard deakitviert
Quellfilter: (Status == true) && (Debitorbelege.Geschaeftsbereich.AbacusMandant == Parameters("MandantenNummer") && Debitorbelege.BelegDatum >= CreateDate(2024, 01, 01)) && Debitorbelege.BelegStatusValue != 0 && (?ConnectorMapping.ErfolgreicheSynchronisation || VeraendertAm > ConnectorMapping.ErfolgreicheSynchronisation)

16.07.2024: Rev 1 PZ

(neu werden Adressen zu Belegen ausgefiltert, die den Status Entwurf haben)
(Status == true) && (Debitorbelege.Geschaeftsbereich.AbacusMandant == Parameters("MandantenNummer") && Debitorbelege.BelegDatum >= CreateDate(2024, 01, 01)) && Debitorbelege.BelegStatusValue != 0 && (?ConnectorMapping.ErfolgreicheSynchronisation || VeraendertAm > ConnectorMapping.ErfolgreicheSynchronisation)

11.07.2024: Basisversion

(Status == true) && (Debitorbelege.Geschaeftsbereich.AbacusMandant == Parameters("MandantenNummer") && Debitorbelege.BelegDatum >= CreateDate(2024, 01, 01)) && (?ConnectorMapping.ErfolgreicheSynchronisation || VeraendertAm > ConnectorMapping.ErfolgreicheSynchronisation)