SAP IDOC-vejledning i ABAP: Trin-for-trin-guide
โก Smart opsummering
SAP IDoc (Intermediate Document) er en standardiseret datacontainer, der flytter forretningsinformation mellem SAP og ikke-SAP systemer via ALE og EDI. Denne vejledning forklarer dens definition, struktur, typer, tabeller, partnerprofiler, porte og de komplette udgรฅende og indgรฅende processer.

Hvad er et IDoc?
IDoc er blot en databeholder bruges til at udveksle information mellem to vilkรฅrlige processer, der kan forstรฅ dataens syntaks og semantik.
Med andre ord er et IDoc som en datafil med et bestemt format, der udveksles mellem to systemer, der ved, hvordan de skal fortolke disse data.
IDoc stรฅr for "Mellemdokument".
Nรฅr du udfรธrer en udgรฅende I ALE- eller EDI-processen oprettes et IDoc. I SAP Systemkrav, IDoc'er gemmes i databasen, og hvert IDoc har en unikt nummer inden for en klient.
Nรธglefunktioner
- ID-dokumenter er uafhรฆngig af sende- og modtagesystemer (SAP-til-SAP sรฅvel som ikke-SAP).
- IDocs er baseret pรฅ EDI standarder, ANSI ASC X12 og EDIFACT. I tilfรฆlde af konflikt i datastรธrrelsen vรฆlger IDoc den med den stรธrste lรฆngde.
- ID-dokumenter er uafhรฆngig af retningen for dataudvekslingen, f.eks. understรธtter ORDERS01 i indkรธbsmodulet bรฅde indgรฅende og udgรฅende.
- IDocs kan ses i en teksteditor fordi dataene er gemt i tegnformat i stedet for binรฆrt format.
Strukturen af โโet IDoc
IDoc-strukturen bestรฅr af tre dele:
- Administrationsdelen (Kontrolrapport) โ indeholder IDoc-typen, beskedtype, aktuel status, afsender, modtager og lignende metadata. Dette kaldes kontrolposten.
- Applikationsdataene (Data Record) โ indeholder forretningsdataene. Disse kaldes dataposter eller segmenter.
- Statusoplysningerne (statuspost) โ giver information om de forskellige faser, som IDoc har gennemgรฅet.
Du kan se et IDoc ved hjรฆlp af transaktion WE02 or WE05.
Som det ses pรฅ skรฆrmbilledet ovenfor, har IDoc-posten tre dele โ Kontrol, Data og Status. Hver del gennemgรฅs detaljeret nedenfor.
Kontrol rekord
- Alle kontrolpostdata gemmes i EDIDC tabel. Nรธglen til denne tabel er IDoc-nummeret.
- Den indeholder oplysninger som IDoc-nummer, retning (indgรฅende/udgรฅende), afsender, modtageroplysninger, kanal i brug og port i brug.
- Retning "1" angiver udgรฅende og "2" angiver indgรฅende.
Dataregistrering
- Dataposten indeholder applikationsdata sรฅsom medarbejderheaderoplysninger, ugentlige detaljer, klientoplysninger osv.
- Alle datapostdata gemmes i tabeller EDID2 til EDID4og EDIDD er en struktur, hvor du kan se dens komponenter.
- Den indeholder data som IDoc-nummeret, navnet og nummeret pรฅ segmentet i IDoc'en, hierarkiet og selve dataene.
- Den faktiske nyttelast gemmes som en streng i et felt kaldet SDATA, som er et felt pรฅ 1000 tegn.
Status Record
- En statuspost vedhรฆftes et IDoc ved hver milepรฆl eller nรฅr den stรธder pรฅ en fejl.
- Alle statusoptagelsesdata gemmes i EDIDS tabel.
- Status 1-42 er for udgรฅende, mens 50-75 er for indgรฅende.
IDoc-typer
En IDoc-type (grundlรฆggende) definerer strukturen og formatet for det forretningsdokument, der skal udveksles. En IDoc er en instans af en IDoc-type, ligesom konceptet med variabler og variabeltyper i programmeringssprogIDoc-typer kan defineres ved hjรฆlp af transaktioner WE30.
Hvad er et segment?
Et segment definerer formatet og strukturen af โโen Dataregistrering i et IDoc. Segmenter er genbrugelige komponenter.
For hvert segment, SAP opretter fรธlgende komponenter.
- Segmenttype (versionsuafhรฆngig)
- Segmentdefinition (versionsafhรฆngig)
- Segmentdokumentation
De sidste tre tegn reprรฆsenterer segmentets version. Definitioner kan รฆndres, efterhรฅnden som versionen รฆndres, men segmenttypen forbliver den samme. Transaktion: WE31.
Hvad er en udvidelses-IDoc-type?
Et IDoc findes i to typer:
- Grundlรฆggende
- Extension
SAP tilbyder mange foruddefinerede grundlรฆggende IDoc-typer, som kan ikke รฆndresHvis du har brug for at tilfรธje flere data til en begrรฆnset basistype, kan du bruge en udvidelsestype. Det meste af tiden vil du ikke har brug for udvidelser.
Dokumentation
Hvert IDoc er grundigt dokumenteret i transaktionen WE60.
Meddelelsestype
En besked reprรฆsenterer en bestemt type dokument, der er transmitmellem to partnere, for eksempel ordrer, ordresvar og fakturaer.
En IDoc-type kan vรฆre knyttet til mange meddelelsestyper. Omvendt kan en meddelelsestype vรฆre knyttet til forskellige IDoc-typer. Transaktion: WE81.
IDoc-visninger
En IDoc-type kan bruges til mere end รฉn meddelelsestype, hvilket resulterer i, at IDoc'er indeholder flere felter end nรธdvendigt for en bestemt meddelelsestype.
IDoc-visninger forbedrer ydeevnen ved generering af IDocs ved at sikre, at kun de relevante segmenter er udfyldt med data. IDoc-visninger er kun vigtige for udgรฅende behandling.
Partnerprofiler
En partner er en forretningspartner, som du driver forretning med og udveksler dokumenter med.
I partnerprofilen for en partner, som der udveksles IDocs med, vedligeholder du de parametre, der er nรธdvendige for at udveksle dataene. Den anvendte transaktion er WE20.
port
Porten definerer de tekniske egenskaber ved forbindelsen mellem din SAP system og det andet system, du vil overfรธre data med (undersystem). Porten definerer det medie, hvor data udveksles mellem de to systemer.
Der findes forskellige typer porte. De to mest almindeligt anvendte er TRFC-porte brugt i ALE og Filporte brugt af EDI.
For TRFC-porte skal du angive navnet pรฅ den logiske destination, der er oprettet ved hjรฆlp af SM59Nรฅr du bruger en filport, kan du angive den mappe, hvor IDoc-filen skal placeres. Det andet system eller middleware henter derefter filen derfra. Et funktionsmodul kan bruges til at generere et filnavn til IDoc'en. Mens test, kan du bruge "Udgรฅende fil" til at angive et konstant filnavn. Fanen "udgรฅende trigger" kan bruges til at levere information, hvis du vil udlรธse en behandling pรฅ undersystemet, nรฅr et IDoc oprettes pรฅ denne placering. Angiv kommandofilnavnet og den mappe, der skal kรธres.
Fรฆlles IDoc-transaktion Codes
| transaktion Code | Formรฅl |
|---|---|
| WE02 / WE05 | Vis og overvรฅg IDocs |
| WE30 | Opret eller skift IDoc-type |
| WE31 | Opret eller rediger segment |
| WE20 | Vedligehold partnerprofil |
| WE21 | Vedligehold havne |
| WE42 | Definer indgรฅende proces Code |
| WE57 | Tildel indgรฅende funktionsmodul til meddelelsestype |
| WE60 | IDoc-dokumentation |
| WE81 / WE82 | Opret beskedtype / tilknyt til IDoc-type |
| BD51 | Definer funktionsmodulets egenskaber |
| SM59 | Vedligehold RFC-destinationer |
IDoc-proces: Et eksempel fra den virkelige verden
Overvej eksemplet med at sende en indkรธbsordre til en leverandรธr via IDoc.
- Nรฅr en indkรธbsordre (PO) oprettes, skal systemet sende et IDoc til leverandรธren.
- Indkรธbsordren sendes i form af et IDoc til leverandรธren (partneren). Denne partner skal vรฆre EDI-aktiveret i systemet. SAP anerkender, at den kan sende dokumentet elektronisk til denne leverandรธr.
- Den indkรธbsordre, der sendes som et udgรฅende ID-dokument af kunden, bliver et indgรฅende ID-dokument for leverandรธren. SAP Systemet pรฅ leverandรธrens side kan behandle dette for at oprette et applikationsdokument (en salgsordre) pรฅ deres system.
- Tilbud, tilbudsanmodninger, indkรธbsordrer, bestillingsordrer, fakturaer og leveringssedler er nogle af de mest almindeligt udvekslede dokumenter via IDoc.
Processen med dataoverfรธrsel ud af din SAP systemet kaldes Udgรฅende proces, mens data flyttes ind i din SAP systemet kaldes Indgรฅende procesSom udvikler eller konsulent, der konfigurerer disse processer for din organisation, er trinnene til at konfigurere hver enkelt beskrevet nedenfor.
Den udgรฅende proces
Involverede trin:
- Opret segmenter (WE31).
- Opret en IDoc-type (WE30).
- Opret en beskedtype (WE81).
- Knyt meddelelsestypen til IDoc-typen (WE82).
- Opret en port (WE21).
- Hvis du bruger message-control-metoden til at udlรธse IDoc'er, skal du oprette funktionsmodulet, der bygger IDoc'en, og linke den til en udgรฅende proces. Code.
- Ellers skal du oprette et funktionsmodul eller et selvstรฆndigt program, der opretter IDoc'en direkte.
- Opret en partnerprofil (WE20) med de nรธdvendige oplysninger i de udgรฅende parametre for den partner, du udveksler IDoc'et med, og udlรธs IDoc'et.
Den indgรฅende proces
Involverede trin:
- Opret den grundlรฆggende IDoc-type (transaktion WE30).
- Opret meddelelsestypen (transaktion WE81).
- Knyt meddelelsestypen til den grundlรฆggende IDoc-type (transaktion WE82).
- Opret funktionsmodulet til behandling af IDoc'en.
- Definer funktionsmodulets egenskaber (BD51).
- Tildel det indgรฅende funktionsmodul til meddelelsestypen (WE57).
- Definer processen Code (Transaktion WE42).
- Opret partnerprofilen (transaktion WE20).










