Hallo,
ich antworte mal auf die originale Frage --> Umstieg von Rulebook 3.2 auf Rulebook 7.
Mein Datenträger ist soeben von der Raiba AT als korrekt abgenommen worden ;-)
Folgende Vorgehensweise musste ich durchleiden :-)
(ggf. hätte es auch einfach gereicht NUR: urn:iso:std:iso:20022:tech:xsd:pain.001.001.03 in der FBPM bei den Formatparametern anzugeben
![]()
???)
Formatbaum SEPA_CT aus SAP Hinweis 2220926 als Z* Baum in der DMEE hochgeladen- "2220926 - SEPA-Überweisung Lastschrift DTA XML-Definition für Zahlungsformate SEPA_CT SEPA_DD"
- die Anlage SEPA_CT.zip ist vom 27.09.2016 (und ist Version 2.7 - 2.9 --> Rulebook Version weiß ich immer noch nicht zu erkennen :-( )
Hinweise 1939284 & 1958567 via snote hochgeladen1939284 - SEPA_CT, SEPA_DD additional tags in DMEE tree required
1958567 - DMEE-Formate SEPA _CT und SEPA_DD - länderspezifische Erweiterung
Durch die Hinweise wird ein Erweiterungsspot (SE18 ES_FI_DMEE_SEPA_COUNTRIES) ins System geladen. Folgende BAdI Definitionen sind darin enthalten:
FI_DMEE_SEPA_COUNTRIES
FI_DMEE_SEPA_EXIT
Im BAdI FI_DMEE_SEPA_COUNTRIES gibt es 2 Erweiterungsimplementierungen.
FI_DMEE_SEPA_COUNTRIES_IMP für Credit (SEPA_CT)
FI_DMEE_SEPA_COUNTRIES_IMP_DEB für Debit (SEPA_DD)
Die SAP liefert das für die Länder BE, LU, AT, PT & SK aus.
In der Methode IF_FI_DMEE_SEPA_COUNTRIES~GET_VALUE werden dort die Länderspezifischen Knoten nachträglich zum DMEE Formatbaum aktiviert.
Man muss sich das so vorstellen das der Standard SEPA_CT Baum über den Hinweis 2220926 in DMEE hochgeladen/definiert wird. Über den BAdI werden weitere Tags im SEPA_CT.xml für die oben genannten Länder im Format zur Laufzeit angereichert.
Für Österreich (AT) war da allerdings ein sehr merkwürdiges Coding drin: (<Ustrd> ist der Tag für den Verwendungszweck)
WHEN: '<PmtInf><CdtTrfTxInf><RmtInf><Ustrd>'.
IF i_fpayh-ziban IS INITIAL.
IF i_extension-node-node_type = 'TECH'.
c_value = 'X'.
ENDIF.
ENDIF.
Auf deutsch. Wenn die IBAN des Lieferanten nicht gepflegt ist wird der Verwendungszweck im Formatbaum aktiviert ??? Diese Abfrage finde ich allerdings sehr unlogisch und habe daher im 2.ten BAdI FI_DMEE_SEPA_EXIT des Erweiterungsspots ES_FI_DMEE_SEPA_COUNTRIES meine eigene Implementierung angelegt. Darin habe ich die Abfrage des Verwendungszweck der SAP übersteuert:
WHEN: '<PmtInf><CdtTrfTxInf><RmtInf><Ustrd>'.
IF i_fpayh-ziban IS
not INITIAL.
IF i_extension-node-node_type = 'TECH'.
c_value = 'X'.
ENDIF.
ENDIF.
Damit wird dann der Tag für den Verwendungszweck im im SEPA_CT.xml aktiviert.
Weiterhin hatte ich Probleme mit einem seelenlosen Tag: <Purp/> welches irgendwie unter dem Tag <CdtrAcct> hing. Den akzeptierte die Bank so nicht. Den musste ich dann leider manuell im DMEE Format Knoten "Purp" über eine nie erfüllte Bedingung: FPAYH LAUFI 2 = SPACE 1 lahmlegen.
In der FBPM (SAPFPAYM) Variante zum Datenträger (obpm4) habe ich NUR den Namensraum: urn:iso:std:iso:20022:tech:xsd:pain.001.001.03 angegeben. Namensraum Schema & Ort des Schemas habe ich leer gelassen.
Bei der DTA Erzeugung hatte ich dann noch zusätzlich das Problem das der Zeichensatz mit UTF-16 angeben wurde intern aber UTF-8 verwendet (Trotz Eintrag 4110 im Format). Dafür musste ich dann noch den BAdI DMEE_XML_BADI_01 für mein Format aktivieren. Filterwert ist dann der Z*Formatname aus der DMEE. Damit wird dann das SEPA_CT.xml in UTF-8 erzeugt.
Ganz schön knackig den Weg den die SAP da vorgibt. Geht das auch einfacher ? Hat es jemand anders gemacht ?
Kann mir ggf. einer die Frage beantworten wie das offizielle Vorgehen ist die Länder Filterwerte des BAdI's FI_DMEE_SEPA_COUNTRIES_IMP zu ändern ?Da sind ja die Länder BE, LU, AT, PT & SK als Filter drin. Ich möchte "SK" da nicht drin haben. Ich kann jetzt einfach über SSCR Ojektregistrierung den Filter "SK" löschen. Aber das ist ja dann eine Modifikation oder ? Ich habe versucht meine eigene Implementierung für FI_DMEE_SEPA_COUNTRIES_IMP anzulegen. Dabei kommt dann aber die Fehlermeldung:
BAdI ist SAP intern, Implementieren im Kundennamensraum verboten. Meldungsnr. SEEF_BADI176mfG
Charakter_Kopf
Zuletzt bearbeitet am 21.04.17 13:30