SAP Samouczek IDOC w ABAP: przewodnik krok po kroku

โšก Inteligentne podsumowanie

SAP IDoc (Intermediate Document) to standardowy kontener danych, ktรณry umoลผliwia przesyล‚anie informacji biznesowych pomiฤ™dzy SAP i nieSAP Systemy za poล›rednictwem ALE i EDI. Ten samouczek wyjaล›nia definicjฤ™, strukturฤ™, typy, tabele, profile partnerรณw, porty oraz kompleksowe procesy wychodzฤ…ce i przychodzฤ…ce.

  • ๐Ÿ“ฆ Definicja podstawowa: IDoc to niezaleลผny od systemu kontener danych oparty na standardach EDI, takich jak ANSI ASC X12 i EDIFACT.
  • ๐Ÿงฑ Trzyczฤ™ล›ciowa struktura: Kaลผdy dokument IDoc skล‚ada siฤ™ z rekordu kontrolnego, rekordรณw danych i rekordรณw statusu, z ktรณrych kaลผdy jest przechowywany w dedykowanych tabelach bazy danych.
  • ๐Ÿ†š Hierarchia typรณw: Podstawowe typy IDoc sฤ… dostarczane z SAP i nie mogฤ… byฤ‡ modyfikowane; Typy rozszerzeล„ dodajฤ… pola niestandardowe, gdy jest to wymagane.
  • ๐Ÿ” Przepล‚ywy procesรณw: Moduล‚ Outbound tworzy i wysyล‚a obiekty IDoc; moduล‚ Inbound odbiera je i publikuje za poล›rednictwem powiฤ…zanych moduล‚รณw funkcji.
  • ๐Ÿค– Wล‚ฤ…czanie sztucznej inteligencji: Narzฤ™dzia monitorujฤ…ce oparte na sztucznej inteligencji wykrywajฤ… awarie IDoc na wczesnym etapie i automatycznie mapujฤ… pola w caล‚ym SAP i nieSAP wzmacniacz.

SAP Samouczek IDOC

Czym jest IDoc?

IDoc jest po prostu kontener danych uลผywany do wymiany informacji miฤ™dzy dowolnymi dwoma procesami, ktรณre potrafiฤ… zrozumieฤ‡ skล‚adniฤ™ i semantykฤ™ danych.

Innymi sล‚owy, IDoc to plik danych o okreล›lonym formacie, ktรณry jest wymieniany miฤ™dzy dwoma systemami, ktรณre potrafiฤ… interpretowaฤ‡ te dane.

IDoc oznacza โ€žDokument poล›redni".

Kiedy wykonujesz wychodzฤ…ce W procesie ALE lub EDI tworzony jest dokument IDoc. W SAP KonfiguracjaObiekty IDoc sฤ… przechowywane w bazie danych, a kaลผdy obiekt IDoc ma unikalny numer w obrฤ™bie klienta.

Kluczowe funkcje

  • Dokumenty IDoc sฤ… niezaleลผny od systemรณw wysyล‚ajฤ…cych i odbierajฤ…cych (SAP-do-SAP jak rรณwnieลผ nie-SAP).
  • Dokumenty IDoc oparte sฤ… na EDI Standardy: ANSI ASC X12 i EDIFACT. W przypadku konfliktu rozmiaru danych, IDoc przyjmuje dane o wiฤ™kszej dล‚ugoล›ci.
  • Dokumenty IDoc sฤ… niezaleลผny od kierunku wymiany danychnp. ORDERS01 w module Zakupy obsล‚uguje zarรณwno ruch przychodzฤ…cy, jak i wychodzฤ…cy.
  • Dokumenty IDoc moลผna przeglฤ…daฤ‡ w edytor tekstu poniewaลผ dane sฤ… przechowywane w formacie znakowym, a nie binarnym.

Struktura dokumentu IDoc

Struktura dokumentu IDoc

Struktura IDoc skล‚ada siฤ™ z trzech czฤ™ล›ci:

  1. Czฤ™ล›ฤ‡ administracyjna (Rejestr Kontroli) โ€” zawiera typ obiektu IDoc, typ wiadomoล›ci, aktualny status, nadawcฤ™, odbiorcฤ™ i podobne metadane. Jest to tzw. rekord kontrolny.
  2. Dane aplikacji (Rekord danych) โ€” zawiera dane biznesowe. Sฤ… one nazywane rekordami danych lub Segmenty.
  3. Informacje o statusie (Rekord statusu) โ€” zawiera informacje o rรณลผnych etapach, przez ktรณre przeszedล‚ dokument IDoc.

Moลผesz wyล›wietliฤ‡ obiekt IDoc za pomocฤ… transakcji WE02 or WE05.

Rekord IDoc pokazujฤ…cy kontrolkฤ™, dane i status

Jak widaฤ‡ na powyลผszym zrzucie ekranu, rekord IDoc skล‚ada siฤ™ z trzech czฤ™ล›ci: Control (Kontrola), Data (Dane) i Status (Status). Kaลผda czฤ™ล›ฤ‡ jest szczegรณล‚owo omรณwiona poniลผej.

Zapis kontrolny

  • Wszystkie dane rekordu kontroli sฤ… przechowywane w EDIDC tabela. Kluczem do tej tabeli jest numer IDoc.
  • Zawiera informacje takie jak numer IDoc, kierunek (przychodzฤ…cy/wychodzฤ…cy), nadawca, informacje o odbiorcy, uลผywany kanaล‚ i uลผywany port.
  • Kierunek โ€ž1โ€ oznacza kierunek wychodzฤ…cy, a โ€ž2โ€ oznacza kierunek przychodzฤ…cy.

Zapis danych

  • Rekord danych zawiera dane aplikacji, takie jak informacje o pracowniku, szczegรณล‚y tygodniowe, szczegรณล‚y klienta itd.
  • Wszystkie dane rekordu danych sฤ… przechowywane w tabelach EDID2 do EDID4, EDIDD jest strukturฤ…, ktรณrej elementy moลผna zobaczyฤ‡.
  • Zawiera dane takie jak numer obiektu IDoc, nazwฤ™ i numer segmentu w obiekcie IDoc, hierarchiฤ™ i same dane.
  • Rzeczywisty ล‚adunek jest przechowywany jako ciฤ…g w polu o nazwie DANE, ktรณre jest polem o dล‚ugoล›ci 1000 znakรณw.

Zapis stanu

  • Rekord statusu jest doล‚ฤ…czany do dokumentu IDoc na kaลผdym etapie lub w przypadku wystฤ…pienia bล‚ฤ™du.
  • Wszystkie dane rekordu statusu sฤ… przechowywane w EDIDS tabela.
  • Statusy 1โ€“42 dotyczฤ… ruchu wychodzฤ…cego, a 50โ€“75 przychodzฤ…cego.

Typy IDoc

Typ IDoc (podstawowy) definiuje strukturฤ™ i format wymienianego dokumentu biznesowego. Obiekt IDoc jest instancjฤ… typu obiektu IDoc, podobnie jak koncepcja zmiennych i typรณw zmiennych w jฤ™zyki programowaniaTypy IDoc moลผna definiowaฤ‡ za pomocฤ… transakcji WE30.

Co to jest segment?

Segment definiuje format i strukturฤ™ pliku Zapis danych w obiekcie IDoc. Segmenty to komponenty wielokrotnego uลผytku.

Dla kaลผdego segmentu, SAP tworzy nastฤ™pujฤ…ce komponenty.

  • Typ segmentu (niezaleลผny od wersji)
  • Definicja segmentu (w zaleลผnoล›ci od wersji)
  • Dokumentacja segmentu

Ostatnie trzy znaki reprezentujฤ… wersjฤ™ segmentu. Definicje mogฤ… siฤ™ zmieniaฤ‡ wraz ze zmianฤ… wersji, ale typ segmentu pozostaje ten sam. Transakcja: WE31.

Segment w IDoc

Czym jest typ rozszerzenia IDoc?

Istniejฤ… dwa typy dokumentรณw IDoc:

  1. Basic
  2. Rozbudowa

Podstawowe i rozszerzone typy IDoc

SAP zapewnia wiele predefiniowanych podstawowych typรณw IDoc, ktรณre nie moลผna modyfikowaฤ‡Jeล›li potrzebujesz dodaฤ‡ wiฤ™cej danych do ograniczonego typu podstawowego, moลผesz uลผyฤ‡ typu rozszerzenia. W wiฤ™kszoล›ci przypadkรณw nie potrzebne sฤ… rozszerzenia.

Ilustracja typu rozszerzenia IDoc

Dokumenty

Kaลผdy dokument IDoc jest dokล‚adnie udokumentowany w transakcji WE60.

Dokumentacja IDoc w WE60

Typ wiadomoล›ci

Wiadomoล›ฤ‡ reprezentuje okreล›lony typ dokumentu, ktรณry jest transmitmiฤ™dzy dwoma partnerami, na przykล‚ad Zamรณwienia, Odpowiedzi na Zamรณwienia i Faktury.

Typ IDoc moลผe byฤ‡ powiฤ…zany z wieloma typami wiadomoล›ci. I odwrotnie, typ wiadomoล›ci moลผe byฤ‡ powiฤ…zany z rรณลผnymi typami IDoc. Transakcja: WE81.

Typ wiadomoล›ci w obiekcie IDoc

Widoki IDoc

Typ IDoc moลผe byฤ‡ uลผywany dla wiฤ™cej niลผ jednego typu wiadomoล›ci, co powoduje, ลผe obiekty IDoc bฤ™dฤ… zawieraล‚y wiฤ™cej pรณl, niลผ jest to wymagane dla okreล›lonego typu wiadomoล›ci.

Widoki IDoc poprawiajฤ… wydajnoล›ฤ‡ generowania obiektรณw IDoc, zapewniajฤ…c wypeล‚nienie danymi tylko odpowiednich segmentรณw. Widoki IDoc sฤ… istotne tylko w przypadku przetwarzania wychodzฤ…cego.

Widoki IDoc

Profile partnerรณw

Partner to partner biznesowy, z ktรณrym prowadzisz interesy i wymieniasz dokumenty.

W profilu partnera, z ktรณrym wymieniane sฤ… dokumenty IDoc, utrzymujesz parametry niezbฤ™dne do wymiany danych. Uลผywana transakcja to WE20.

Profile partnerรณw w IDoc

Port

Port definiuje parametry techniczne poล‚ฤ…czenia pomiฤ™dzy Twoim SAP system i drugi system, z ktรณrym chcesz przesyล‚aฤ‡ dane (podsystem). Port definiuje medium, w ktรณrym dane sฤ… wymieniane miฤ™dzy dwoma systemami.

Istniejฤ… rรณลผne rodzaje portรณw. Dwa najczฤ™ล›ciej uลผywane to: Porty TRFC uลผywany w ALE i Porty plikรณw uลผywane przez EDI.

W przypadku portรณw TRFC naleลผy podaฤ‡ nazwฤ™ logicznego miejsca docelowego utworzonego za pomocฤ… SM59. Uลผywajฤ…c portu pliku, moลผna okreล›liฤ‡ katalog, w ktรณrym ma zostaฤ‡ umieszczony plik IDoc. Nastฤ™pnie inny system lub oprogramowanie poล›redniczฤ…ce pobiera plik z tego katalogu. Moduล‚ funkcji moลผe zostaฤ‡ uลผyty do wygenerowania nazwy pliku dla IDoc. testowanie, moลผesz uลผyฤ‡ opcji โ€žPlik wychodzฤ…cyโ€, aby okreล›liฤ‡ staล‚ฤ… nazwฤ™ pliku. Karta โ€žwyzwalacz wychodzฤ…cyโ€žmoลผe sล‚uลผyฤ‡ do dostarczania informacji, jeล›li chcesz uruchomiฤ‡ przetwarzanie w podsystemie po utworzeniu obiektu IDoc w tej lokalizacji. Podaj nazwฤ™ pliku polecenia i katalog, ktรณry ma zostaฤ‡ uruchomiony.

Port w IDoc

Wspรณlna transakcja IDoc Codes

Transakcja Code Cel
WE02 / WE05 Wyล›wietlanie i monitorowanie dokumentรณw IDoc
WE30 Utwรณrz lub zmieล„ typ IDoc
WE31 Utwรณrz lub zmieล„ segment
WE20 Utrzymuj profil partnera
WE21 Utrzymuj porty
WE42 Zdefiniuj proces przychodzฤ…cy Code
WE57 Przypisz moduล‚ funkcji przychodzฤ…cej do typu wiadomoล›ci
WE60 Dokumentacja IDoc
WE81 / WE82 Utwรณrz typ wiadomoล›ci / powiฤ…ลผ z typem IDoc
BD51 Zdefiniuj charakterystyki moduล‚u funkcyjnego
SM59 Utrzymuj miejsca docelowe RFC

Proces IDoc: przykล‚ad z ลผycia wziฤ™ty

Rozwaลผmy przykล‚ad wysล‚ania zamรณwienia zakupu do dostawcy za poล›rednictwem IDoc.

  • Za kaลผdym razem, gdy tworzone jest zamรณwienie zakupu (PO), system musi wysล‚aฤ‡ dokument IDoc do dostawcy.
  • Zamรณwienie jest wysyล‚ane w formie dokumentu IDoc do dostawcy (partnera). Partner musi mieฤ‡ wล‚ฤ…czonฤ… obsล‚ugฤ™ EDI w systemie. SAP uznaje, ลผe moลผe przesล‚aฤ‡ dokument do tego sprzedawcy drogฤ… elektronicznฤ….
  • Zamรณwienie wysล‚ane przez klienta jako dokument IDoc wychodzฤ…cy staje siฤ™ dokumentem IDoc przychodzฤ…cym dla dostawcy. SAP System po stronie dostawcy moลผe przetworzyฤ‡ te dane i utworzyฤ‡ dokument aplikacji (zamรณwienie sprzedaลผy) w swoim systemie.
  • Do najczฤ™ล›ciej wymienianych dokumentรณw za poล›rednictwem IDoc naleลผฤ… oferty, zapytania ofertowe, zamรณwienia zakupu, zamรณwienia specjalne, faktury i dowody dostawy.

Proces przesyล‚ania danych z Twojego SAP system nazywa siฤ™ Proces wychodzฤ…cypodczas gdy dane sฤ… przesyล‚ane do Twojego SAP system nazywa siฤ™ Proces przychodzฤ…cyJako deweloper lub konsultant, ktรณry konfiguruje te procesy w swojej organizacji, moลผesz zapoznaฤ‡ siฤ™ z poniลผszymi krokami konfiguracji kaลผdego z nich.

Proces wychodzฤ…cy

Wymagane kroki:

  1. Utwรณrz segmenty (WE31).
  2. Utwรณrz typ IDoc (WE30).
  3. Utwรณrz typ wiadomoล›ci (WE81).
  4. Powiฤ…ลผ typ wiadomoล›ci z typem obiektu IDoc (WE82).
  5. Utwรณrz port (WE21).
  6. Jeล›li uลผywasz metody message-control do wyzwalania obiektรณw IDoc, utwรณrz moduล‚ funkcji, ktรณry buduje obiekt IDoc i poล‚ฤ…cz go z procesem wychodzฤ…cym Code.
  7. W przeciwnym wypadku utwรณrz moduล‚ funkcji lub samodzielny program, ktรณry bezpoล›rednio utworzy obiekt IDoc.
  8. Utwรณrz profil partnera (WE20) z niezbฤ™dnymi informacjami w parametrach wychodzฤ…cych dla partnera, z ktรณrym wymieniasz dokument IDoc, i uruchom dokument IDoc.

Proces przychodzฤ…cy

Wymagane kroki:

  1. Utwรณrz podstawowy typ IDoc (transakcja WE30).
  2. Utwรณrz typ wiadomoล›ci (transakcja WE81).
  3. Powiฤ…ลผ typ wiadomoล›ci z podstawowym typem IDoc (transakcja WE82).
  4. Utwรณrz moduล‚ funkcji do przetwarzania obiektu IDoc.
  5. Zdefiniuj charakterystyki moduล‚u funkcyjnego (BD51).
  6. Przypisz moduล‚ funkcji przychodzฤ…cej do typu wiadomoล›ci (WE57).
  7. Zdefiniuj proces Code (Transakcja WE42).
  8. Utwรณrz profil partnera (transakcja WE20).

FAQ

IDoc jest asynchroniczny i sล‚uลผy do przesyล‚ania komunikatรณw miฤ™dzy systemami za poล›rednictwem ALE lub EDI. BAPI jest synchroniczny i sล‚uลผy do dostฤ™pu w czasie rzeczywistym do SAP obiekty biznesowe. IDoc jest kolejkowany; BAPI zwraca wynik natychmiast.

Typ IDoc definiuje technicznฤ… strukturฤ™ segmentรณw i pรณl. Typ wiadomoล›ci definiuje znaczenie biznesowe, takie jak zamรณwienia czy faktury. Jeden typ IDoc moลผe obsล‚ugiwaฤ‡ wiele typรณw wiadomoล›ci i odwrotnie.

Uลผyj transakcji WE02 lub WE05 do wyล›wietlenia obiektรณw IDoc i sprawdzenia rekordรณw statusu. Poล‚ฤ…czenia wychodzฤ…ce uลผywajฤ… kodรณw statusu 1โ€“42; poล‚ฤ…czenia przychodzฤ…ce uลผywajฤ… kodรณw 50โ€“75. Transakcja BD87 ponownie przetwarza bล‚ฤ™dne obiekty IDoc.

Pole SDATA, ktรณre przechowuje ล‚adunek w kaลผdym rekordzie danych, ma dล‚ugoล›ฤ‡ 1000 znakรณw. Obiekt IDoc moลผe zawieraฤ‡ wiele rekordรณw danych, wiฤ™c ล‚ฤ…czny ล‚adunek skaluje siฤ™ wraz z liczbฤ… segmentรณw.

Tak. Dokumenty IDoc sฤ… niezaleลผne od systemu i zgodne ze standardami EDI, takimi jak ANSI ASC X12 i EDIFACT.SAP systemy mogฤ… tworzyฤ‡ lub pobieraฤ‡ pliki IDoc za poล›rednictwem portรณw plikรณw lub oprogramowania poล›redniczฤ…cego, takiego jak SAP PI/PO.

Rekordy kontrolne znajdujฤ… siฤ™ w tabeli EDIDC, rekordy danych w EDID2 do EDID4, a rekordy statusu w EDIDS. Numer IDoc jest kluczem ล‚ฤ…czฤ…cym wszystkie trzy tabele dla danego IDoc.

Narzฤ™dzia monitorujฤ…ce oparte na sztucznej inteligencji grupujฤ… powtarzajฤ…ce siฤ™ bล‚ฤ™dy IDoc, przewidujฤ… awarie na podstawie historycznych wzorcรณw i zalecajฤ… rozwiฤ…zania problemรณw o statusie 51 lub 56, znacznie skracajฤ…c czas rฤ™cznego przetwarzania.

Tak. Mapa oparta na sztucznej inteligencjiping silniki porรณwnujฤ… definicje segmentรณw SAP i systemy partnerskie, zaproponuj mapฤ™ terenupingi wyciฤ…gaj wnioski z poprzednich poprawek โ€” znacznie zmniejszajฤ…c koniecznoล›ฤ‡ rฤ™cznej konfiguracji w projektach ALE i EDI.

Podsumuj ten post nastฤ™pujฤ…co: