SAP ABAP BDC (बैच डेटा संचार) ट्यूटोरियल

बैच इनपुट का परिचय

बैच इनपुट का उपयोग आमतौर पर गैर-R/3 प्रणालियों से R/3 प्रणालियों में डेटा स्थानांतरित करने के लिए या R/3 प्रणालियों के बीच डेटा स्थानांतरित करने के लिए किया जाता है।

यह एक डेटा ट्रांसफर तकनीक है जो आपको लेनदेन से संबंधित स्क्रीन पर डेटासेट को स्वचालित रूप से स्थानांतरित करने की अनुमति देती है, और इस प्रकार एक SAP बैच इनपुट को बैच इनपुट सत्र द्वारा नियंत्रित किया जाता है।

बैच इनपुट सत्र

इनपुट डेटा और उपयोगकर्ता क्रियाओं के साथ लेनदेन कॉल की एक श्रृंखला को समूहीकृत करता है। बैच इनपुट सत्र का उपयोग बैच इनपुट में एक संवाद लेनदेन को निष्पादित करने के लिए किया जा सकता है, जहां सत्र द्वारा कुछ या सभी स्क्रीन संसाधित की जाती हैं। बैच इनपुट सत्र डेटाबेस में डेटाबेस तालिकाओं के रूप में संग्रहीत होते हैं और लेनदेन तक पहुँचने पर आंतरिक तालिकाओं के रूप में एक कार्यक्रम के भीतर उपयोग किए जा सकते हैं।

नोट करने के लिए अंक

  • बीडीआई सामान्य कार्य करके काम करता है SAP यह लेनदेन को उसी प्रकार निष्पादित करता है जैसे कोई उपयोगकर्ता करता है, लेकिन यह लेनदेन को स्वचालित रूप से निष्पादित करता है।सभी स्क्रीन सत्यापन और व्यावसायिक तर्क सत्यापन बैच डेटा इनपुट का उपयोग करते समय किया जाएगा।
  • यह बड़ी मात्रा में डेटा दर्ज करने के लिए उपयुक्त है।
  • किसी मैन्युअल इंटरैक्शन की आवश्यकता नहीं है

बैच इनपुट के तरीके

SAP आर/3 सिस्टम में विरासत डेटा स्थानांतरित करने के लिए दो बुनियादी तरीके प्रदान करते हैं।

  1. शास्त्रीय बैच इनपुट विधि.
  2. कॉल लेनदेन विधि.

शास्त्रीय बैच इनपुट विधि

इस विधि में ABAP/4 प्रोग्राम बाह्य डेटा को पढ़ता है SAP सिस्टम और बैच इनपुट सत्र में संग्रहीत करता है।

सत्र बनाने के बाद, आप इसे निष्पादित करने के लिए सत्र चला सकते हैं SAP इसमें लेन-देन.

यह विधि फ़ंक्शन मॉड्यूल BDC_ OPEN, BDC_INSERT और BDC_CLOSE का उपयोग करती है

बैच इनपुट सत्र को 3 तरीकों से संसाधित किया जा सकता है

  1. मुख्य स्थान में
  2. पृष्ठभूमि में
  3. प्रसंस्करण के दौरान, त्रुटि प्रदर्शन के साथ

यदि आप डेटा स्थानांतरण का परीक्षण करना चाहते हैं तो आपको बैच इनपुट सत्रों को अग्रभूमि में या त्रुटि प्रदर्शन का उपयोग करके संसाधित करना चाहिए।

यदि आप डेटा स्थानांतरण करना चाहते हैं या उसके प्रदर्शन का परीक्षण करना चाहते हैं, तो आपको सत्रों को पृष्ठभूमि में संसाधित करना चाहिए।

क्लासिकल बैच इनपुट विधि के बारे में ध्यान देने योग्य बातें

  • Syncह्रोनस प्रसंस्करण
  • एकाधिक लेनदेन के लिए डेटा स्थानांतरित करें।
  • Synchronous डेटाबेस अद्यतन.
  • प्रत्येक सत्र के लिए एक बैच इनपुट प्रक्रिया लॉग तैयार किया जाता है।
  • सत्र समानांतर रूप से उत्पन्न नहीं किया जा सकता.

कॉल लेनदेन विधि.

इस विधि में ABAP/4 प्रोग्राम CALL TRANSACTION USING कथन का उपयोग करके एक प्रोग्राम चलाता है SAP लेन-देन।

कार्यक्रम में संपूर्ण बैच इनपुट प्रक्रिया ऑनलाइन होती है

कॉल लेनदेन विधि

नोट करने के लिए अंक:

  • डेटा का तीव्र प्रसंस्करण
  • अतुल्यकालिक प्रसंस्करण
  • एकल लेनदेन के लिए डेटा स्थानांतरित करें।
  • कोई बैच इनपुट प्रोसेसिंग लॉग उत्पन्न नहीं होता है।

बैच इनपुट प्रक्रियाएं

बैच इनपुट प्रक्रियाएं

आप आमतौर पर अपने संगठन के लिए बैच इनपुट विकसित करने के लिए चरणों के निम्नलिखित अनुक्रम का पालन करेंगे

  1. विरासत डेटा का विश्लेषण। यह निर्धारित करें कि स्थानांतरित किए जाने वाले डेटा को किस तरह मैप किया जाना है SAP संरचना। आवश्यक डेटा प्रकार या डेटा लंबाई रूपांतरणों पर भी ध्यान दें।
  2. उत्पन्न करें SAP निर्यात कार्यक्रमों में उपयोग के लिए डेटा संरचनाएं।
  3. डेटा को अनुक्रमिक फ़ाइल में निर्यात करें। ध्यान दें कि वर्ण प्रारूप पूर्वनिर्धारित द्वारा आवश्यक है SAP बैच इनपुट प्रोग्राम.
  4. अगर SAP यदि आपूर्ति किए गए BDC प्रोग्राम का उपयोग नहीं किया जाता है, तो अपना स्वयं का बैच इनपुट प्रोग्राम कोड करें। स्थिति के अनुसार उपयुक्त बैच इनपुट विधि चुनें।
  5. डेटा को प्रोसेस करें और इसे जोड़ें SAP प्रणाली.
  6. प्रक्रिया लॉग का विश्लेषण करें। कॉल ट्रांज़ेक्शन विधि के लिए, जहाँ कोई उचित लॉग नहीं बनाया गया है, अपने प्रोग्राम द्वारा एकत्रित संदेशों का उपयोग करें।
  7. प्रक्रिया विश्लेषण के परिणामों से, गलत डेटा को सही करें और पुनः संसाधित करें।

बीडीसी प्रोग्राम लिखना

आप अपना BDC प्रोग्राम लिखने के लिए निम्नलिखित प्रक्रिया का पालन कर सकते हैं

  1. बैच इनपुट डेटा को संसाधित करने के लिए लेनदेन का विश्लेषण करें।
  2. उपयोग करने हेतु बैच इनपुट विधि का निर्णय लें।
  3. अनुक्रमिक फ़ाइल से डेटा पढ़ें
  4. डेटा रूपांतरण या त्रुटि जाँच करें.
  5. बैच इनपुट संरचना, BDCDATA में डेटा संग्रहीत करना।
  6. शास्त्रीय बैच इनपुट के लिए बैच इनपुट सत्र उत्पन्न करें, या कॉल ट्रांजेक्शन यूज़िंग कथन के साथ सीधे डेटा को संसाधित करें।

बैच इनपुट डेटा संरचना

बैच इनपुट डेटा संरचना की घोषणा

DATA : BEGIN OF < bdc table>

OCCURS <occurs parameters>.

INCLUDE STRUCTURE BDCDATA.

DATA:END OF <bdc table>.
क्षेत्र का नाम प्रकार लंबाई विवरण
PROGRAM CHAR 8 मॉड्यूल पूल
डायनप्रो एनयूएमसी 4 डायनप्रो नंबर
डायनबेगिन CHAR 1 डायनप्रो की शुरुआत
एफएनएएम CHAR 35 क्षेत्र का नाम
एफवीएएल CHAR 80 फ़ील्ड मान

किसी विशेष स्क्रीन के लिए डेटा के भीतर फ़ील्ड का क्रम कोई महत्व नहीं रखता है

नोट करने के लिए अंक

  • बीडीसी डेटा भरते समय सुनिश्चित करें कि आप उपयोगकर्ता सेटिंग को ध्यान में रखते हैं। यह विशेष रूप से उन फ़ील्ड को भरने के लिए प्रासंगिक है जिसमें संख्याएँ शामिल हैं (जैसे मात्रा, राशि)। यह उपयोगकर्ता सेटिंग है जो यह तय करती है कि संख्याओं के लिए समूहीकरण वर्ण क्या है उदाहरण: उपयोगकर्ता सेटिंग के आधार पर पचास हज़ार की संख्या को 50,000.00 या 50.000,00 के रूप में लिखा जा सकता है।
  • राशि और मात्रा फ़ील्ड के लिए FVAL फ़ील्ड को संक्षिप्त करें ताकि वे बाईं ओर संरेखित हो जाएं।
  • ध्यान दें कि BDC के माध्यम से आपके द्वारा भरे जा रहे सभी फ़ील्ड को BDC डेटा तालिका भरते समय वर्ण प्रकार फ़ील्ड के रूप में माना जाना चाहिए।
  • कुछ स्क्रीन में जब आप BDC का उपयोग करके टेबल कंट्रोल में मान भर रहे होते हैं, तो आपको यह नोट करना होता है कि स्क्रीन के डिफ़ॉल्ट आकार पर कितनी पंक्तियाँ मौजूद हैं और उतनी ही पंक्तियों के लिए कोड करना होता है। यदि आपको अधिक पंक्तियाँ भरनी हैं, तो आपको "पेज डाउन" कार्यक्षमता के लिए कोड करना होगा, जैसा कि आप टेबल कंट्रोल को मैन्युअल रूप से भरते समय करते हैं।
  • उपरोक्त परिदृश्य में दिखाई देने वाली लाइनों की संख्या उपयोगकर्ता द्वारा उपयोग किए जाने वाले स्क्रीन आकार के आधार पर भिन्न होगी। इसलिए हमेशा मानक स्क्रीन आकार के लिए कोड करें और अपने BDC को हमेशा मानक स्क्रीन आकार में काम करने दें, भले ही उपयोगकर्ता अपना स्क्रीन आकार कुछ भी रखे।

बैच इनपुट सत्र बनाना

  1. फ़ंक्शन मॉड्यूल BDC_OPEN_GROUP का उपयोग करके बैच इनपुट सत्र खोलें।
  2. सत्र में प्रत्येक लेनदेन के लिए:
  3. लेनदेन में संसाधित सभी स्क्रीन और फ़ील्ड के मानों के साथ BDCDATA भरें।
  4. BDC_INSERT के साथ लेनदेन को सत्र में स्थानांतरित करें।
  5. BDC_CLOSE_GROUP के साथ बैच इनपुट सत्र बंद करें

बैच इनपुट रिकॉर्डर

बैच इनपुट रिकॉर्डर (सिस्टम > सेवाएं > बैच इनपुट > रिकॉर्डर) मैन्युअल रूप से दर्ज किए गए लेनदेन को रिकॉर्ड करता है और एक बैच इनपुट सत्र बनाता है जिसे बाद में SM35 का उपयोग करके निष्पादित किया जा सकता है।

बैच इनपुट रिकॉर्डर

  • बैच इनपुट प्रारंभिक स्क्रीन से रिकॉर्डिंग पुशबटन का चयन करके बैच इनपुट रिकॉर्डर प्रारंभ करें।
  • रिकॉर्डिंग नाम एक उपयोगकर्ता द्वारा परिभाषित नाम है और यह बैच इनपुट सत्र नाम से मेल खा सकता है जिसे रिकॉर्डिंग से बनाया जा सकता है।
  • एक प्रवेश SAP लेनदेन पर क्लिक करें और लेनदेन को पोस्ट करना शुरू करें।
  • आपके द्वारा पोस्टिंग पूर्ण करने के बाद SAP यदि आप किसी लेनदेन को रिकॉर्ड करना चाहते हैं, तो आप या तो रिकॉर्डिंग समाप्त करने के लिए लेनदेन प्राप्त करें और सहेजें चुनें, या फिर अगला लेनदेन चुनें और दूसरा लेनदेन पोस्ट करें।
  • एक बार जब आप रिकॉर्डिंग को सेव कर लेते हैं तो आप रिकॉर्डिंग से बैच इनपुट सत्र बना सकते हैं और/या रिकॉर्डिंग से बैच इनपुट प्रोग्राम तैयार कर सकते हैं।
  • आपके द्वारा बनाया गया बैच इनपुट सत्र अब किसी भी अन्य बैच इनपुट सत्र की तरह विश्लेषण किया जा सकता है।
  • बैच इनपुट रिकॉर्डर के फंक्शन द्वारा तैयार किया गया प्रोग्राम डेटा इंटरफ़ेस प्रोग्रामर के लिए एक शक्तिशाली उपकरण है। यह एक ठोस आधार प्रदान करता है जिसे ग्राहक की आवश्यकताओं के अनुसार बदला जा सकता है।

इस पोस्ट को संक्षेप में इस प्रकार लिखें: