Ansicht
Dokumentation

ISCDITAGCY_FAXBROK_0020 - Beispiel 0020: Zahlsperre für Faxmakler

ISCDITAGCY_FAXBROK_0020 - Beispiel 0020: Zahlsperre für Faxmakler

PERFORM Short Reference   TXBHW - Original Tax Base Amount in Local Currency  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Funktionalität

Die zum Zeitpunkt 0020 aufgerufenen Funktionsbausteine können Zusatzaktionen auslösen, wenn ein Beleg im Vertragskontokorrent gebucht wird und gleichzeitig offene Posten ganz oder teilweise ausgeglichen werden. Alle Belegdaten - mit Ausnahme der Belegnummer - und alle Daten zu den auszugleichenden Positionen stehen zu diesem Zeitpunkt zur Verfügung.

Abhängigkeiten

Sofern für die Zusatzaktionen auch die Kenntnis der Belegnummer erforderlich ist, kann diese über einen Funktionsbaustein zum Zeitpunkt 0030 ermittelt werden.

Es existieren zwei Zeitpunkte, da nach der Vergabe der Belegnummer der zugehörige Nummernkreis gesperrt ist und somit nicht von anderen Anwendern benutzt werden kann. Diese Sperre wird bis zum Buchen des Belegs aufrechterhalten. Die Dauer der Sperre und damit die Behinderung anderer Anwender soll möglichst kurz gehalten werden. Das gelingt dann, wenn zwischen der Belegnummernvergabe und dem Buchen des Belegs keine zeitaufwendigen Aktionen mehr stattfinden.

Da zum Zeitpunkt 0020 beliebige, ggf. auch zeitaufwendige Zusatzaktionen ausgelöst werden können, wird dieser Zeitpunkt vor der Belegnummernvergabe prozessiert. Zu diesem Zeitpunkt können alle Vorbereitungen zur Fortschreibung weiterer Daten getroffen und in internen Tabellen vermerkt werden. Zum Zeitpunkt 0030 wird in den internen Tabellen typischerweise nur noch die Belegnummer nachgetragen.

Parallel zum Zeitpunkt 0020 existiert der Zeitpunkt 0010, der anstelle des Zeitpunktes 0020 prozessiert wird, wenn keine Positionen ausgeglichen werden. Prüfen Sie, ob auch zu diesem Zeitpunkt zusätzliche Aktionen anzustoßen sind.

Werden im Zeitpunkt 0020 interne Tabellen aufgebaut, die Grundlage für Datenbankoperationen (DELETE, INSERT, UPDATE) sind, die über PERFORM ON COMMIT angestoßen werden, müssen Sie auch einen Funktionsbaustein zum Zeitpunkt 0090 hinterlegen, in dem die programminternen Tabellen per REFRESH zurückgesetzt werden. Der Zeitpunkt 0090 wird prozessiert, wenn ein Anwendungsprogramm einen ROLLBACK WORK ausführt. Vor dem ROLLBACK WORK muss das Anwendungsprogramm den Funktionsbaustein FKK_ROLLBACK_POSTING_MEMORY aufrufen. Dieser Funktionsbaustein prozessiert u.a. den Zeitpunkt 0090.

Der Funktionsbaustein zum Zeitpunkt 0090 wird nicht benötigt, wenn der REFRESH der Tabellen über einen PERFORM ON ROLLBACK sichergestellt wird.

Hinweise zur Programmierung

I_FKKKO enthält den Belegkopf des Beleges, der gerade erzeugt wird. _I_FKKKO_REV enthält beim Storno den Belegkopf des zu stornierenden Beleges, bei Rückläufern den Belegkopf des Zahlungsbeleges.

Die Belegpositionen werden in den Tabellen T_FKKOP (offene Posten), T_FKKOPK (Hauptbuchpositionen) und T_FKKOPW (Wiederholungsangaben) übergeben, die Ausgleichsinformationen in der Tabelle T_FKKCL. Werden Ausgleiche zurückgenommen (Storno eines Ausgleichsbelegs, Rücknahme Ausgleich), finden Sie die Positionen mit den alten Ausgleichsinformationen in der Tabelle T_FKKRAP.

Die Tabelle T_FKKRAP enthält nur einen Teil der Informationen zu den Positionen, für die der Ausgleich zurückgenommen wird und die Informationen werden über Teilpositionen (Feld OPUPZ) verdichtet.

Für alle betroffenen Positionen können Sie Details bei Bedarf in der Tabelle T_FKKRAP_DETAIL nachlesen. Ist das Feld XWHPO markiert, ist die dargestellt Position nicht physisch vorhanden, sondern aus einem Mustersatz und einer Wiederholungsangabe konstruiert. Hat das Statistikkennzeichen (STAKZ) den Wert R (Ratenplan) oder S (Sammelrechnung), muss der angegebene Betrag nicht dem Gesamtbetrag der Position entsprechen, da bei einer Teilrücknahme eines Ausgleiches hier eventuell nur Teilbeträge wieder zurückzunehmen sind.

Diese Tabelle ist nach Belegnummer (OPBEL), Wiederholung OPUPW), Poisitionsnummer (OPUPK) und Teilposition (OPUPZ) sortiert.

Beim Buchen von Stornos, Rückläufern und bei der Rücknahme eines Ausgleichs entstehen im alten Ausgleichsbeleg neue Positionen, die ihrerseits sofort wieder durch den Storno- bzw. Rücknahmebeleg ausgeglichen werden. Der dabei verwendete Ausgleichsgrund wird dann im Parameter I_AUGRD übergeben.

Verändern Sie weder Inhalt noch Sortierung der übergebenen Tabellen, andernfalls können inkonsistente Daten fortgeschrieben werden. Falls erforderlich, kopieren Sie die Daten für weitere Verarbeitungen in eigene interne Tabellen.

Soll festgestellt werden, ob ein Posten ganz oder teilweise ausgeglichen wird, sind in der Tabelle T_FKKCL folgende Felder von besonderem Interesse:

  • BETRW Bruttobetrag des Postens
  • SKTPZ vereinbarter Skontoprozentsatz
  • FAEDS Skontofälligkeit
  • FAEDN Nettofälligkeit
  • SKTOW möglicher Skontobetrag,,(SKTOW = BETRW * SKTPZ / 10000)
  • NETTW Nettobetrag des Postens (NETTW = BETRW - SKTOW)
  • XAKTP "X" Posten wird berücksichtigt
  • XAKTS "X" angegebener Skonto wird berücksichtigt
  • AUGBW zugeordneter Ausgleichsbetrag (brutto)
  • ASKTW zugeordneter Skontobetrag
  • SKTPA akzeptierter Skontoprozentsatz (i.d.R. identisch mit SKTPZ)

Bei statistischen Forderungen, erkennbar daran, dass T_FKKCL-STAKZ nicht initial ist, wird der Posten ohne Folgebuchung gelöscht, wenn das Kennzeichen T_FKKCL_XCLON = "X" gesetzt ist.

Das bedeutet zum Beispiel, dass eine Abschlagsforderung aufgehoben wird, ohne einen Abschlag zu buchen, oder dass eine statistische Gebührenforderung aufgehoben wird, ohne eine echte Gebührenforderung und den daraus resultierenden Erlös an ihrer Stelle zu erzeugen.

Der Parameter I_PROCESS weist auf besondere Buchungsprozesse hin.

  • 1,,Storno
  • 2,,Rücknahme Ausgleich
  • 3,,Rückläufer

Bei den oben genannten Buchungsprozessen wird im Parameter I_PYLOT_ADJUST der Schlüssel der Zahlungsstapelposition übergeben, sofern sich die Rücknahme auf einen Beleg bezieht, der bei der Bearbeitung einer Zahlungsstapelposition erzeugt worden ist (z.B. Zahlungsbeleg, Klärungsbeleg, Storno einer Klärung).

Der Parameter I_PARTIAL_RESET zeigt bei Ausgleichsrücknahme an, dass diese nur teilweise erfolgt.

Wenn Sie zum Zeitpunkt 0020 weitere Belege über den Aufruf von FKK_CREATE_DOC_ADDITIONAL erzeugen möchten, stellen Sie sicher, dass der Parameter I_ADD_DOC nicht gesetzt ist. Andernfalls wird ein zusätzlicher Beleg erzeugt und rekursive Aufrufe sind bei der Erzeugung zusätzlicher Belege nicht zulässig.





Parameter

I_ADD_DOC
I_AUGRD
I_AUGVD
I_FKKKO
I_LAST_OPK_FROM_CALLER
I_LAST_OP_FROM_CALLER
I_PARTIAL_RESET
I_PROCESS
I_PYLOT_ADJUSTED
T_FKKCL
T_FKKOP
T_FKKOPK
T_FKKRAP
T_FKKRAP_DETAIL

Ausnahmen

Funktionsgruppe

ISCDITAGCY_EXITS

General Data in Customer Master   ROGBILLS - Synchronize billing plans  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 8876 Date: 20240523 Time: 113339     sap01-206 ( 184 ms )