1. START
  2. FORUM
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Forum
  • Artikel
  • Seiten
  • Erweiterte Suche
Einladung zu den kostenlosen Webinaren von Payyxtron.
  1. SAP FSCM-Forum
  2. SAP Elektronischer Kontoauszug
  3. SAP Elektronischer Kontoauszug in SAP ERP
  4. Elektronischer Kontoauszug allgemein

Rücklastschrift

  • _Ayleen8
  • 30. Juni 2014 um 10:31
1. offizieller Beitrag
  • _Ayleen8
    • 30. Juni 2014 um 10:31
    • #1

    Hallo zusammen,

    wir haben bei uns im System
    Die Komponentenversion meines Systems: EHP 7 für SAP ERP 6.0
    Komponente: SAP_APPL Release: 617 SP-Level: 0002

    das BAdI "FIEB_RETURN_ADDIN" implementiert um Gebühr als separate Buchung zu erzeugen.Unser Problem ist: lt. Kontoauszug sollte insgesamt 2.005 € von unserem Konto belastet werden und zwar davon 5 € als Gebühr.

    Nachdem wir das BAdI aktiviert haben, wurden plötzlich - 2.010 € mit GVC 109 und + 5 € mit GVC 109 in unserem Kontoauszug erschienen. Dem entsprechend wurde unsere Debitor natürlich auch mit 2.010 € belastet, obwohl wir eigentlich unsere Debitor nur mit 2.000 € belasten wollen.

    Wenn wir das BAdI deaktivieren, dann erscheint auf unseren Kontoauszug auch nur 2.005 € mit GVC 109. Natürlich wird hier auch keine separate Buchung für Gebühren erstellt. Denn ohne BAdI wird die Gebühr nicht separate gelesen.

    Hätten Sie hier vielleicht eine ähnliche Erfahrung gemacht.

    ich bin Ihnen für jede Rückmeldung sehr sehr sehr dankbar.

    Viele Grüße

    _Ayleen8

  • amazon
  • Claus Wild
    Artikel
    16
    • 30. Juni 2014 um 12:39
    • Offizieller Beitrag
    • #2

    Kommt/könnte darauf an/kommen wie die Methode dahiner ausprogrammiert ist. Die liefert den gefundenen Betrag zurück ...

    • Nächster offizieller Beitrag
  • _Ayleen8
    • 30. Juni 2014 um 13:00
    • #3

    METHOD if_ex_fieb_returns_addin~change_return_charges.

    * if a return reason was found by the standard this example coding will
    * only search for ths charges in the references. If it was not found it
    * also looks for a return reason.

    DATA: l_febre TYPE febre,
    l_ref_string TYPE string,
    l_search_pattern TYPE string,
    l_offset TYPE i,
    l_raw_amount TYPE string,
    l_rc TYPE fieb_ret_charges.
    DATA: l_string TYPE string,
    l_kwbtr TYPE kwbtr_eb.

    *-
    IF NOT c_return_charges IS INITIAL.
    * you can decide if you want to change or delete this charges-entry
    * for example: if the standard has found a return reason but not
    * the charges amount
    * search it in the references and fill it then:
    IF c_return_charges-kwbtr IS INITIAL.
    * LOOP AT t_febre INTO l_febre.
    * CONCATENATE l_ref_string l_febre-vwezw INTO l_ref_string.
    * ENDLOOP.
    *
    ** look always like this: 'Bank Charges: 10,00':
    * l_search_pattern = 'ENTGELT FREMD'. "#EC NOTEXT
    * FIND l_search_pattern IN l_ref_string MATCH OFFSET l_offset.
    * IF sy-subrc = 0.
    * l_offset = l_offset + strlen( l_search_pattern ).
    * l_string = l_ref_string+l_offset.
    * SHIFT l_string LEFT DELETING LEADING ' '.
    * SPLIT l_string AT ' '
    * INTO l_raw_amount
    * l_string.
    * REPLACE ',' WITH '.' INTO l_raw_amount.
    * CALL FUNCTION 'CURRENCY_AMOUNT_IDOC_TO_SAP'
    * EXPORTING
    * currency = i_febko-waers
    * idoc_amount = l_raw_amount
    * IMPORTING
    * sap_amount = c_return_charges-kwbtr
    * EXCEPTIONS
    * OTHERS = 0.
    * ENDIF.
    **--
    * l_search_pattern = 'EIGEN'. "#EC NOTEXT
    * FIND l_search_pattern IN l_ref_string MATCH OFFSET l_offset.
    * IF sy-subrc = 0.
    * l_offset = l_offset + strlen( l_search_pattern ).
    * l_string = l_ref_string+l_offset.
    * SHIFT l_string LEFT DELETING LEADING ' '.
    * SPLIT l_string AT ' '
    * INTO l_raw_amount
    * l_string.
    * REPLACE ',' WITH '.' INTO l_raw_amount.
    * CALL FUNCTION 'CURRENCY_AMOUNT_IDOC_TO_SAP'
    * EXPORTING
    * currency = i_febko-waers
    * idoc_amount = l_raw_amount
    * IMPORTING
    * sap_amount = l_kwbtr
    * EXCEPTIONS
    * OTHERS = 0.
    * ADD l_kwbtr TO c_return_charges-kwbtr.
    * ENDIF.
    *
    c_return_charges-kwbtr = i_febep-spesk.
    ENDIF.
    ELSE.
    ** no charges and no return reason was found by the standard.
    ** you can now search for a return reason on your own e.g. in the
    ** references the return reason looks always like 'Return Reason: 815'
    ** and the Charges look always like: 'Bank Charges: 10,00':
    * LOOP AT t_febre INTO l_febre.
    * CONCATENATE l_ref_string l_febre-vwezw INTO l_ref_string.
    * ENDLOOP.
    **-
    * l_search_pattern = 'Return Reason:'. "#EC NOTEXT
    * FIND l_search_pattern IN l_ref_string MATCH OFFSET l_offset.
    * IF sy-subrc = 0.
    * l_offset = l_offset + 15.
    * l_rc-rrext = l_ref_string+l_offset(3).
    * ENDIF.
    **-
    * l_search_pattern = 'ENTGELT FREMD'. "#EC NOTEXT
    * FIND l_search_pattern IN l_ref_string MATCH OFFSET l_offset.
    * IF sy-subrc = 0.
    * l_offset = l_offset + strlen( l_search_pattern ).
    * l_string = l_ref_string+l_offset.
    * SHIFT l_string LEFT DELETING LEADING ' '.
    * SPLIT l_string AT ' '
    * INTO l_raw_amount
    * l_string.
    * REPLACE ',' WITH '.' INTO l_raw_amount.
    * CALL FUNCTION 'CURRENCY_AMOUNT_IDOC_TO_SAP'
    * EXPORTING
    * currency = i_febko-waers
    * idoc_amount = l_raw_amount
    * IMPORTING
    * sap_amount = l_rc-kwbtr
    * EXCEPTIONS
    * OTHERS = 0.
    * ENDIF.
    **--
    * l_search_pattern = 'EIGEN'. "#EC NOTEXT
    * FIND l_search_pattern IN l_ref_string MATCH OFFSET l_offset.
    * IF sy-subrc = 0.
    * l_offset = l_offset + strlen( l_search_pattern ).
    * l_string = l_ref_string+l_offset.
    * SHIFT l_string LEFT DELETING LEADING ' '.
    * SPLIT l_string AT ' '
    * INTO l_raw_amount
    * l_string.
    * REPLACE ',' WITH '.' INTO l_raw_amount.
    * CALL FUNCTION 'CURRENCY_AMOUNT_IDOC_TO_SAP'
    * EXPORTING
    * currency = i_febko-waers
    * idoc_amount = l_raw_amount
    * IMPORTING
    * sap_amount = l_kwbtr
    * EXCEPTIONS
    * OTHERS = 0.
    * ADD l_kwbtr TO l_rc-kwbtr.
    * ENDIF.

    c_return_charges-kwbtr = i_febep-spesk.

    * create a new charges-entry if you have found an amount:
    IF NOT l_rc-kwbtr IS INITIAL.
    c_return_charges-kukey = i_febko-kukey.
    c_return_charges-esnum = i_febep-esnum.
    c_return_charges-kwbtr = l_rc-kwbtr.
    *- i_febel-kkref sollte eigentlich im Beispiel 'AC01' enthalten !!!!!!
    IF l_rc-rrext IS INITIAL.
    c_return_charges-rrext = i_febep-kkref.
    ELSE.
    c_return_charges-rrext = l_rc-rrext.
    ENDIF.
    ENDIF.
    ENDIF.

    IF i_febep-epvoz EQ 'H'
    AND c_return_charges-kwbtr NE 0.
    MULTIPLY c_return_charges-kwbtr BY -1.
    ENDIF.

    BREAK-POINT.

    ENDMETHOD.

  • _Ayleen8
    • 30. Juni 2014 um 13:05
    • #4

    Hallo Herr Wild,

    eigentlich haben wir das Beispielcoding von SAP verwendet und daran ein wenig angepasst.

    Oben habe ich das Coding gepostet. Könnten Sie uns hierzu ein paar Tipps geben, an welcher Stelle wir noch weiter schreiben sollen.

    vielen... vielen herzlichen DANK

  • Claus Wild
    Artikel
    16
    • 30. Juni 2014 um 17:06
    • Offizieller Beitrag
    • #5

    Hallo,

    hmm, könnten mehrere Stellen sein:

    • c_return_charges-kwbtr --> wird mehrmals überschrieben
    • MULTIPLY c_return_charges-kwbtr BY -1. --> Das könnte es sein
    • Ist in der Transformation ein "-"?
    • Die Buchung sollte über S/H-Kennzeichen bzw. Buchungsschlüssel abgebildet werden (Coding sollte
      somit überflüssig sein)


    Viele Grüße
    Claus Wild

    • Vorheriger offizieller Beitrag
  • Andrej Pietzke
    Gast
    • 30. Juni 2014 um 17:30
    • #6

    Hallo Zusammen,
    auch die Bsp. Auslieferung der SAP führt zum Fehler, am besten das Vorzeichen einfach umkehren :-)

    replace ',' with '.' into l_raw_amount.
    call function 'CURRENCY_AMOUNT_IDOC_TO_SAP'
    EXPORTING
    currency = i_febko-waers
    idoc_amount = l_raw_amount
    IMPORTING
    sap_amount = c_return_charges-kwbtr
    EXCEPTIONS
    others = 0.
    endif.
    *
    if i_febep-epvoz = 'S'.
    c_return_charges-kwbtr = c_return_charges-kwbtr * -1.
    endif.
    *
    endif.
    else.

    Damit sollte es dann funktionieren.
    Gruß
    A.P.

  • _Ayleen8
    • 1. Juli 2014 um 10:15
    • #7

    Hallo Herr Pietzke,

    vielen herzlichen DANK für die Tipps.
    Das Problem ist dank Ihnen gelöst :-)

    Beste Grüße

  • _Ayleen8
    • 1. Juli 2014 um 10:16
    • #8

    Hallo Herr Wild,

    vielen herzlichen DANK für die Tipps.

    Beste Grüße

Registrierung

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen

Warum die ISO 20022-Migration dringend bleibt

Die Umstellung der MT-Formate wurde von November 2025 auf November 2026 verschoben. Aufgrund der langen Vorlaufzeiten sollten sie aber bereits jetzt mit der Umstellung beginnen. Mehr über das Warum erfahren Sie im Blog von Payyxtron.

Ein Finger klickt ein virtuelles ISO-Symbol an.
Jetzt lesen!

Werden Sie zum ELKO-Experten!

Lernen Sie den Elektronischen Kontoauszug in SAP S/4HANA kennen oder vertiefen Sie Ihr Wissen: mit dem Online-Training „Elektronischer Kontoauszug mit SAP S/4HANA“ von Claus Wild.

  • für Einsteiger und Fortgeschrittene
  • zeitlich flexibel
  • ortsunabhängig
Jetzt anmelden!

Tiefes ELKO-Wissen zum Nachschlagen

Die Komplexität des Elektronischen Kontoauszugs in SAP S/4HANA kann überwältigend sein. Das „Praxishandbuch Kontoauszug in SAP S/4HANA“ von Claus Wild ist das perfekte Nachschlagewerk für jeden, der im ELKO-Dschungel den Überblick behalten möchte. Gespickt mit Tipps und Tricks aus mehr als 25 Jahren Beraterpraxis.

Jetzt bestellen!

DMEEX Deep Dive

Die DMEEX in SAP S/4HANA bietet mehr Funktionen als ihre Vorgängerin. Erfahren Sie, wie Sie Ihre Zahlungsträger damit deutlich effizienter erstellen. Lernen Sie wichtige Details bei der Definition von Knoten kennen. Im praxisnahen Schulungsvideo von Michael Englert.

Jetzt ansehen!

Nutzen Sie die Benachrichtigungsfunktion!

Lassen Sie sich automatisch per E-Mail über neue Beiträge informieren. Aktivieren Sie dazu einfach die interne Benachrichtigungsfunktion!

Eine Anleitung finden Sie hier.

Grafische Darstellung des SAP FI-Forums Wikipayments durch Hände auf einer Tastatur, Sprechblasen und einen Globus In unserem SAP-Forum Wikipayments stellen wir der SAP-Community alles Wissenswerte rund um das FSCM zur Verfügung.

Richten Sie die Mehrfaktor-Authentifizierung ein!

Erhöhen Sie die Sicherheit Ihres Wikipayments-Accounts. Folgen Sie einfach unserer Anleitung zur Einrichtung der Mehrfaktor-Authentifizierung.

abstrakte Darstellung eines Schlosses mit Abkürzung "MFA" darüber für "Mehrfaktor-Authentifizierung"

Letzte Beiträge

  • Dispo-Ebene bei Dauerbuchungen Transaktion FBD1

    Claus Wild 14. Juni 2025 um 13:01
  • Hinweis 3491320 - Währungen im elektronischen Kontoauszug

    Claus Wild 7. Juni 2025 um 07:21
  • Hinweis 3609837 - CAMT.053: Kontoauszugsposition mit Status \"Abgeschlossen\", aber kein Beleg/Buchungsbeleg gebucht

    Claus Wild 7. Juni 2025 um 07:19
  • Hinweis 3519922 - Verarbeitung von Rückläufern - Interpretationsalgorithmus 060

    Claus Wild 7. Juni 2025 um 07:15
  • Hinweis 3457485 - Neuzuordnung von SEPA-Mandaten bei Umstrukturierung von Kundenstammdaten

    Claus Wild 7. Juni 2025 um 06:52

Holen Sie sich aktuelle Hinweise, News und Updates rund um SAP FSCM.

Jetzt kostenfrei und unverbindlich registrieren!
Grafische Darstellung der Aktualität, Praxisnähe und Interaktivität des SAP FI-Forums Wikipayments durch einen Leuchtturm, eine Medaille, einen Taschenrechner, einen Geldschein und einen Daumen nach oben
Impressum Copyright Datenschutz
© Payyxtron. 2024. Alle Rechte vorbehalten.
Community-Software: WoltLab Suite™
Style by DohTheme