{"id":11691,"date":"2017-03-01T16:08:27","date_gmt":"2017-03-01T15:08:27","guid":{"rendered":"https:\/\/activate-hr.de\/?p=11691"},"modified":"2023-08-18T16:03:50","modified_gmt":"2023-08-18T14:03:50","slug":"datumsformat-konvertieren-oracle-db-db-connect-sap-netweaver-bw","status":"publish","type":"post","link":"https:\/\/activate-hr.de\/sap-ess\/datumsformat-konvertieren-oracle-db-db-connect-sap-netweaver-bw\/","title":{"rendered":"Datumsformat konvertieren: Oracle DB – DB Connect – SAP BW"},"content":{"rendered":"\n

Bei der Replikation von Daten aus non-SAP-Quellsystemen in das SAP BW treten immer wieder Herausforderungen mit dem Datumsformat auf. So auch bei der Extraktion eines Datumsfelds aus einer Oracle DB via DB Connect.<\/p>\n

Das Problem mit dem Datumsformat<\/h2>\n

Sie haben eine Oracle DB und möchten ein Datumsfeld DATE nach SAP BW exportieren<\/a> – und zwar kompatibel zum DDIC-Typ DATS.<\/p>\n

Das Oracle Datumsformat hat mit DD-MMM-YY<\/strong> genau 7 Characters (z.B. 06-MAR-17). Anders beim SAP-internen Datumsformt: Datenelemente wie SYDATUM, Domains wie SYDATS und Datentypen wie DATS zeigen uns das klassische SAP-Datumsformat YYYYMMDD <\/strong>mit 8 Characters. Wenn die Felder in dieser Form einander zugewiesen werden entstehen unbrauchbare Daten. In der PSA tauchen mit diesem Vorgehen verrückte Werte wie  -1.UN.12-J<\/strong> auf, was für den 12.Juni des letzten Jahres stehen soll.<\/p>\n

Fazit: Unbrauchbar.<\/p>\n

Webinar: Digitale Zeiterfassung in SAP umsetzen<\/a><\/h3><\/div><\/div>
\"\"<\/div>
\n\t\t\t\tIn unserem Webinar erkl\u00e4ren wir Ihnen, was im SAP Standard m\u00f6glich ist, welche Erweiterungen es gibt und wie Sie die digitale Zeiterfassung auch in Zukunft in SAP umsetzen k\u00f6nnen.\t\t\t<\/div>
Jetzt anmelden<\/a><\/div><\/div><\/div><\/div>\n\n

Die Lösung<\/h2>\n

Ich möchte Ihnen hier einige Lösungsvorschläge aufzeigen und diese auch bewerten.<\/p>\n

Zum Ersten gibt es die Möglichkeit, die im BW ankommenden werte via Parsing <\/strong>so umzugestalten, dass sie zum SAP-internen Standard passen. Das wird die anfälligste und auch mühselige Lösung sein.<\/p>\n

Zum Zweiten gibt es die Möglichkeit, verschiedene Konvertierungsroutinen <\/strong>bei der Übertragung einzustellen. SAP hält im Standard bereits Conversion-Exits bereit, mit denen ein Datum umformatiert werden kann.<\/p>\n

    \n
  1. CONVERSION_EXIT_JPDAT_OUTPUT<\/li>\n
  2. CONVERSION_EXIT_PDATE_INPUT<\/li>\n
  3. CONVERSION_EXIT_PDATE_OUTPUT<\/li>\n
  4. CONVERSION_EXIT_IDATE_INPUT<\/li>\n
  5. CONVERSION_EXIT_IDATE_OUTPUT<\/li>\n
  6. CONVERSION_EXIT_LDATE_OUTPUT<\/li>\n
  7. CONVERSION_EXIT_SDATE_OUTPUT<\/li>\n
  8. CONVERSION_EXIT_*<\/li>\n<\/ol>\n

    Versuchen Sie, ob eine der o.g. Möglichkeiten bei Ihnen funktioniert.<\/p>\n

    Als letzte – und sauberste – Variante führt uns jedoch eine Anpassung auf Seite der Oracle DB<\/strong> sicher zum Ziel.<\/p>\n

    Das Datumsformat in welchem die Daten von Oracle geliefert werden, hängt vom eingestellten NLS (National Language Settings) in der DB Connection ab. Wir können die Oracle DB jedoch unabhängig vom eingestellten NLS zwingen, das Datum im von SAP definierten Format auszugeben. Folgend möchte ich aufzeigen, wie diese – aus meiner Sicht beste – Variante umzusetzen ist.<\/p>\n

    Organigramm in SAP Fiori<\/a><\/h3>

    mindsquare org chart: Ihre M\u00f6glichkeit Ihre Organisation schnell und flexibel mit Daten aus dem SAP HCM abzubilden. Schaffen Sie den \u00dcberblick<\/p><\/div>

    informieren<\/a><\/div><\/div><\/div>\n\n

    Technische Umsetzung<\/h2>\n

    Um die Ergebnisse der SQL-Abfrage auf die Oracle DB im SAP-internen Format zu erhalten, kann wie folgt vorgegangen werden.<\/p>\n

    Das SELECT-Statement muss um die Funktion TO_CHAR<\/strong> erweitert werden, um das Format für die Extraktion auf den SAP-internen Standard anzupassen. Im besten Fall sollte eine eigene View in Oracle erstellt werden, um die TO_CHAR-Funktion zu nutzen. Das SELECT-Statement würde in diesem Fall wie folgt aussehen:<\/p>\n

    select to_char<\/strong>(‘YYYYMMDD’) as dat from … where… ;<\/p>\n

    Im Ergebnis erhalten Sie das Result-Set im von ihnen definierten Datumsformat YYYYMMDD und können es problemlos auf SAP BW-Seite in Empfang nehmen.<\/p>\n

    Weitere Informationen zur Anbindung von Oracle DB via DB Connect erhalten Sie über die SAP-Note: “518241<\/a> – DB Connect in BW for an external Oracle database”.<\/p>\n

    \"BW-Datenfluss\"<\/div>

    Standardisierte Konzeption: BW-Datenfluss<\/h3><\/div>

    \n\t\t\t\t\tWir haben eine mehrfach durchgef\u00fchrte & standardisierte Vorgehensweise entwickelt, die es uns erm\u00f6glicht, eine durchdachte Konzeption eines BW-Datenflusses zu erstellen.\t\t\t\t<\/p><\/div><\/div>

    Jetzt anfordern<\/a><\/div><\/div>

    Standardisierte Konzeption: BW-Datenfluss<\/h3>