13 Aralık 2013 Cuma

SAP de BAPI, IDOC Nedir?

IDOC Nedir?
IDoc bir SAP nesnesidir. Bir SAP başka bir SAP sistemine veya SAP sisteminden SAP olmayan başka bir sisteme veri taşımak veya tersi için kullanılan elektronik message dır. IDoc Intermediate Document’nin kısaltılmış halidir.  SAP sisteminden SAP olmayan bir systeme taşıma işlemi EDI (Electronic Data Interchange) alt sistemi aracılığı ile olurken, iki SAP sistemi arasındaki taşıma işlemi ALE ile gerçekleşir. IDoc SAP sisteminde veya EDI alt sisteminde başlatılır. Bu IDOC’un gönderileceği yöne gore değişir, ve Inbound IDoc ve Outbound IDoc olarak adlandırılır.  Outbound akışındaki durumda, IDoc SAP sistemine doğru message control dokümanını yönlendirmek için başlatılır, ve  EDI alt sistemine gönderilir. EDI veriyi IDoc formatından XML formatına veya XML benzeri bir formata dönüştürür, ve Internet yoluyla istenen sisteme aktarılır. Inbound akışında ise, EDI yardımcı dataya dönüştürülür ve IDoc SAP nin içinde yaratılır. IDoc’un başarılı gönderilmesi sonrasında, SAP sistemine Application Document gönderilir.



EDI STANDARDS AND IDOC


“EDI (Electronic Data Interchange) , yakın bilgisayar sistemleri arasında bir elektronik değişim dokümanıdır. Bu işlemi standart formatta bir kominikasyon ağı kullanarak yapar.

Elektronik olarak bilgi aktarımı için, ANSI ASC X12 ve  EDIFACT yaygın olarak kullanılan iki tiptir. ANSI ASC X12, büyük organizasyonlar, resmi kurumlar ve EDI yazılım firmaları tarafından kullanılan formattır. UN/EDIFACT ise,  uluslar arası EDI ticari ve taşıma alanında, kullanılır, ve 1985 de ANSI X12 ve UNTDI (United Nations Trade Data interchange) temel standart alınarak şekillendirilmiştir. ANSI X12, business dokümanı document transaction olarak tanımlanmıştır. Herbir transaction ise, 3 haneli sayı ile temsil edilir, örneğin; 850 – Purchase Order, 855 - Purchase Order Acknowledgement. EDIFACT, business dokümanını mesaj olarak tanımlar, ve standart isimlerle gösterilir, örneğin; purchase order için ORDERS.

IDOC TERMINOLOGIES 
IDOC (BASIC) TYPE
IDoc tipleri genelde EDI standartlarına ama çoğunlukla EDIFACT standartlarına dayanır.

Basic Types (or IDoc Type), bir standart IDoc record yapısıdır. Her temel tip, standart IDoc segmentini, veri alanlarının formatını ve onların boyutunu tanımlar.  Basic Types ayrıca, bir IDoc içindeki alanların ve segmentlerin sayılarını da tutur. Bir mesajın gönderilmesi için gerekli bütün alanlar ayrı segmentlere atanır. Ayrıca Basic Types structure yapısını tanımlar ve IDoc segmentlerinin zorunlu yada optional olanları arasındaki ilişkiyi belirler.




STRUCTURE
Bir IDoc yapısı 3 ana bölüme ayrılır; Control Record, Data Records and Status records.




Bu yapılar, 3 transparent tabloda tutulur, bunlar; EDIDC, EDID4 and EDIDS.

CONTROL RECORD (EDIDC)
Bu tabloda şu bilgiler tutulur;  IDoc number, direction, IDoc Status, Temel Tip, Message tipi, Partner (Sender/Receiver), yaratma/değiştirme zaman  bilgisi, Interchange File yada ISA numarası vb.






DATA RECORD (EDID4)
Bu yapı IDoc segmentinin ayrıntılarını içerir.

IDoc segment, gönderilecek dokümanın gerekli veri alanlarını (data field) içerir.






STATUS RECORDS (EDIDS)
IDoc Status alanı, işlemin durum bilgisini içerir. IDoc durumları IDoc’u takip etmek için kullanılır ve process durumuna gore çeşitlilik gösterir. Status Sayısı IDoc statüsünü gösterir. O andaki IDoc status, control record içinde yeralır.


Başlangıç status numarası inbound için 64, outbound için 03 dür. Başarılı status, inbound için 53 outbound için 16dır.


RRC1_IDOC_SET_STATUS program, IDoc statüsünü değiştirmek için kullanılır. Status değiştirme ihtiyacı genellikle 68 den  bir daha çalışmama statüsüne değiştirmek için kullanılır.



Eğer IDoc veride bir hata içerirse, WE02 or WE05 kullanarak hatanın içeriğine bakılabilir. Bir IDoc görüntülendiğinde, orjinal IDoc bilgileri status 70 (inbound için) / 33 (outbound için) in altına yazılır. Bu IDoc sadece referans olarak system içinde bulunur,işletilemez. Değiştirilebilen IDoc durumu 69 (inbound) ve 32 (outbound) altına yerleştirilir. Bu IDoc’lar daha sonar BD87 kodu kullanılarak veya batch job’lar ile işletilebilir.

WE19 ile IDOC’lar debug edilebilir. WE19, IDoc işlenmesi için bir test aracıdır. WE19 hazır olan IDoc’u kopyalar ve test aşamasının ihtiyaçlarına gore değiştirilebilecek yeni bir IDoc yaratır. Yine BD87 ile yeni yaratılan IDoc çalıştırılabilir.



AUTOMATIC/IMMEDIATE PROCESSING
Gerçek samanlı bilgi aktarımı gerekli olduğu durumlarda kullanılan bir yöntemdir. IDoc işletilirken sisteme eklendiğinde veya oluşturulduğunda hemen işlenmesi anlamına gelir. Outbound özelliklerinde “Transfer IDoc immediately” özelliği seçilirse, bu özellik active edilmiş olur.


TCODE WE02/WE05: GENERAL SEARCH
IDocs, WE02 ve WE05 transaction kodları ile görüntülenir. Eğer IDoc numarası ile arama yapılamıyorsa IDoc Date, Direction, BASIC TYPE, MESSAGE TYPE, ve  PARTNER NUMBER.Partner  numarası kullanılarak da output mesajları bulunabilir.




MANUAL PROCESSING
BD87 kullanılarak, IDocs elle başlatılabilir. Sadece hatalı IDoclar burden başlatılır. Eğer IDoc’u yeniden başlatmak istiyorsanız, BD87 kullanmalısınız.
WE19 içinde başarılı bir IDoc’u process edebilirsiniz. Ama BD87’de edemezsiniz.


PROCESSING VIA BACKGROUND JOB
IDoc’u arkaplanda çalıştırmak genelde en çok tercih edilen yöntemdir. Aşağıdaki programlar IDoc lara arka planda çalıştırmak için kullanılır.

RBDAPP01 - Inbound IDocs
RSEOUT00 - Outbound IDocs



TRIGGERING AN OUTBOUND IDOC
Başarılı bir outbound IDoc aşağıdaki statülerden ters sırayla geçer. Herbir statü IDoc’un aşamasını gösterir. Eğer bir IDoc bütün aşamaları geçerse en son 16 statüsüne ulaşır. Statülerin açıklamaları aşağıdaki gibidir.
01: IDoc başarıyla oluşturuldu.
30: IDoc, IDoc process işleri tarafından işlenmeye hazırdır
03: IDoc verisi Port’a gönderildi.

18: IDoc, EDI alt sisteminde başarıyla başlatıldı.
06: IDoc, EDI formatına dönüştürüldü.
12: IDoc, partnere başarıyla eşleştirildi.
16: Partner, IDoc’u başarıyla teslim aldı.

RECEIVING AN INBOUND IDOC
Inbound IDoc için başlangıç durumu 64’dür, başarılı status 53dür.
 Inbound IDoc  için farklı statülerin açıklamaları aşağıdaki gibidir;
50: IDoc; sisteme başarıyla alındı.
64: IDoc, IDoc processing job tarafından işlenmeye hazır.
53: Application document yaratıldı ve başarıyla kaydedildi. Doküman numarası status 53 nodu açılarak görülebilir.


Önemli  Transaction Kodları;:
SALE - IMG ALE Configuration root
WE20 - Manually maintain partner profiles
BD64 - Maintain customer distribution model
BD71 - Distribute customer distribution model
SM59 - Create RFC Destinations
BDM5 - Consistency check (Transaction scenarios)
BD82 - Generate Partner Profiles
BD61 - Activate Change Pointers - Globally
BD50 - Activate Change Pointer for Msg Type
BD52 - Activate change pointer per change.doc object
BD59 - Allocation object type -> IDOC type
BD56 - Maintain IDOC Segment Filters
BD53 - Reduction of Message Types
BD21 - Select Change Pointer
BD87 - Status Monitor for ALE Messages
BDM5 - Consistency check (Transaction scenarios)
BD62 - Define rules
BD79 - Maintain rules
BD55 - Defining settings for IDoc conversion

WEDI - ALE IDoc Administration
WE21 - Ports in Idoc processing
WE60 - IDoc documentation
SARA - IDoc archiving (Object type IDOC)
WE47 - IDoc status maintenance
WE07 - IDoc statistics

BALE - ALE Distribution Administration
WE05 - IDoc overview
BD87 - Inbound IDoc reprocessing
BD88 - Outbound IDoc reprocessing
BDM2 - IDoc Trace
BDM7 - IDoc Audit Analysis
BD21 - Create IDocs from change pointers
SM58 - Schedule RFC Failures


Distributed data için basit kodlar:
BD64: Maintain a Distributed Model
BD82: Generate Partner Profile
BD64: Distribute the distribution Model

IDoc’lar için kullanılan Programlar;
RBDMIDOC u2013 Creating IDoc Type from Change Pointers
RSEOUT00 u2013 Process all selected IDocs (EDI)
RBDAPP01 - Inbound Processing of IDocs Ready for Transfer
RSARFCEX - Execute Calls Not Yet Executed
RBDMOIND - Status Conversion with Successful tRFC Execution
RBDMANIN - Start error handling for non-posted IDocs
RBDSTATE - Send Audit Confirmations
WE19 : IDOC Test etmek için.

WHAT is RFC in SAP

RFC SAP sistemleri ve SAP ile SAP olmayan sistemler arasında TCP/IP protocolunu kullanarak bağlantısını sağlar. SM59 Transaction kodu ile tanımlanır. 4 tip RFC vardır;
Asenkron RFC,
Senkron RFC,
Transactional RFC,
Queue RFC.



5 yorum:

  1. Bu yorum yazar tarafından silindi.

    YanıtlaSil
  2. bapi nin sadece başlık olarak kalması ilginç

    YanıtlaSil
  3. Süper bir yazı. Çok faydalandım. Teşekkürler. Emeğinize sağlık. Bilgilerinizi bu şekilde paylaşmanız takdire şayan.

    YanıtlaSil