यूजर एग्जिट और कस्टमर एग्जिट के बीच अंतर SAP
⚡ स्मार्ट सारांश
उपयोगकर्ता निकास और ग्राहक निकास SAP ABAP ऐसे एन्हांसमेंट हुक हैं जो मानक प्रोग्रामों को संशोधित किए बिना उनमें कस्टम कार्यक्षमता जोड़ते हैं। SAP इस पृष्ठ पर कस्टमर एग्जिट के प्रकार, उदाहरण, SMOD और CMOD ट्रांजैक्शन, यूजर एग्जिट और दोनों तकनीकों में अंतर के बारे में बताया गया है।

कस्टमर एग्जिट क्या है?
ग्राहक निकास हैं “हुक” द्वारा प्रदान की SAP कई मानक कार्यक्रमों, स्क्रीन और मेनू के भीतर जिन पर ग्राहक "लटकाना" व्यापारिक आवश्यकताओं को पूरा करने के लिए अनुकूलित कार्यक्षमता। इस बारे में थोड़ी देर में और जानकारी देंगे…
इसका मुख्य लाभ यह है कि मानक SAP ऑब्जेक्ट को कभी संशोधित नहीं किया जाता है। कस्टम कोड एक आरक्षित इंक्लूड या सबस्क्रीन में स्थित होता है। SAP सही समय पर कॉल करें, ताकि सिस्टम अपग्रेड के दौरान सुधार ओवरराइट होने के बजाय बना रहे। इसी कारण, एग्जिट इस परिवार से संबंधित हैं। SAP नई बिजनेस ऐड-इन के साथ संवर्द्धन तकनीकें।
ग्राहक निकास के प्रकार
ग्राहक निकास के तीन मुख्य प्रकार हैं:
- फंक्शन मॉड्यूल बाहर निकलता है
- स्क्रीन से बाहर निकलें
- मेनू से बाहर निकलें
फ़ंक्शन मॉड्यूल से बाहर निकलेंयह ग्राहक को किसी फ़ंक्शन मॉड्यूल के माध्यम से किसी विशिष्ट स्थान पर कोड जोड़ने की अनुमति देता है। SAP आवेदन कार्यक्रम
Syntax: CALL CUSTOMER-FUNCTION '004'
स्क्रीन से बाहर निकलेंयह ग्राहक को किसी स्क्रीन में फ़ील्ड जोड़ने की अनुमति देता है। SAP कार्यक्रम सबस्क्रीन के माध्यम से। सबस्क्रीन को मानक स्क्रीन के प्रवाह तर्क के भीतर बुलाया जाता है।
Format: CALL CUSTOMER-SUBSCREEN CUSTSCR2
मेनू से बाहर निकलें: यह ग्राहकों को मानक पुलडाउन मेनू में आइटम जोड़ने की अनुमति देता है। SAP इन आइटमों का उपयोग ऐड-ऑन प्रोग्राम या कस्टम स्क्रीन को कॉल करने के लिए किया जा सकता है।
Format: +CUS ( additional item in GUI status )
ग्राहक निकास के उदाहरण
स्क्रीन एग्जिट का उदाहरण:
लेनदेन CAT2 - टाइम शीट प्रविष्टि में, मानव संसाधन विभाग एक इंटरैक्टिव स्वीकृति शामिल करना चाहता है कि जानबूझकर गलत डेटा प्रस्तुत करना बर्खास्तगी का आधार है।
मेनू से बाहर निकलने का उदाहरण:
ट्रांजेक्शन SE38 - ABAP एडिटर में, विकास टीम उपयोग में आसानी के लिए ट्रांजेक्शन SE80 - ऑब्जेक्ट नेविगेटर के लिए एक मेनू लिंक शामिल करना चाहती है।
इससे पहले
बाद
फ़ंक्शन मॉड्यूल एक्ज़िट का उदाहरण:
कंपनी चाहती है कि विक्रेता निर्माण में विक्रेता का बैंक विवरण अनिवार्य हो। इसलिए उसे एक त्रुटि संदेश दिखाना होगा कि 'कृपया बैंक विवरण दर्ज करें'
इससे पहले
बाद
ग्राहक निकास का पता लगाना
लेन-देन में एसएमओडी और विवरण पर गौर करें-
या लेन-देन में SE81 आप उपयुक्त आवेदन क्षेत्र का उपयोग कर सकते हैं
ग्राहक निकास बनाएँ
ग्राहक निकास बनाने के लिए आपको सबसे पहले ट्रांजेक्शन में एक प्रोजेक्ट बनाना होगा सीएमओडी
Later आप अपने प्रोजेक्ट को ग्राहक निकास निर्दिष्ट करते हैं।
निकास द्वार ढूंढने से लेकर कोड को सक्रिय करने तक की पूरी प्रक्रिया संक्षिप्त है, और यह हमेशा समान छह चरणों का अनुसरण करती है।
- सुधार का पता लगाएं: SMOD में संवर्द्धन का नाम ढूंढें, उदाहरण के लिए घटक EXIT_SAPविक्रेता मास्टर के लिए MF02K_001।
- प्रोजेक्ट बनाएं: CMOD में, Z या Y से शुरू होने वाला प्रोजेक्ट नाम दर्ज करें और 'क्रिएट' चुनें।
- संवर्द्धन असाइन करें: एनहांसमेंट असाइनमेंट स्क्रीन पर, उस एनहांसमेंट का नाम जोड़ें जिसमें एग्जिट शामिल हो।
- कोड लिखें: फंक्शन मॉड्यूल एग्जिट खोलें और कोड को इसके आरक्षित इंक्लूड के अंदर रखें, जो ZX से शुरू होता है।
- स्क्रीन और मेनू भागों को संभालें: स्क्रीन से बाहर निकलने के लिए, CUSTSCR सबस्क्रीन बनाएं, और मेनू से बाहर निकलने के लिए, GUI स्थिति में +CUS फ़ंक्शन कोड भरें।
- प्रोजेक्ट को सक्रिय करें: CMOD में प्रोजेक्ट को सक्रिय करें ताकि रनटाइम पर एग्जिट कॉल हो सके। सक्रियण के बिना, कोड को अनदेखा कर दिया जाएगा।
💡टिप: फंक्शन मॉड्यूल के एग्जिट का इंक्लूड ZX से शुरू होता है, इसलिए यह प्रोजेक्ट के साथ ही ट्रांसफर हो जाता है। कस्टम लॉजिक को कभी भी सीधे इसमें न डालें। SAP फंक्शन मॉड्यूल का उपयोग न करें, क्योंकि वह संशोधन होगा, संवर्धन नहीं।
यूजर एग्जिट क्या है?
उपयोगकर्ता निकास ग्राहक निकास के समान ही उद्देश्य पूरा करता है, लेकिन वे केवल उपयोगकर्ता के लिए ही उपलब्ध हैं। SD मॉड्यूल। एग्जिट को फ़ंक्शन मॉड्यूल के लिए कॉल के रूप में लागू किया जाता है। कोड डेवलपर द्वारा लिखा जाता है।
अच्छी तरह से पता है एसडी में उपयोगकर्ता निकास है एमवी45एएफजेडजेड
- USEREXIT_FIELD_MODIFICATION – स्क्रीन विशेषताओं को संशोधित करने के लिए
- USEREXIT_SAVE_DOCUMENT – उपयोगकर्ता द्वारा सेव बटन दबाने पर ऑपरेशन करने के लिए
- USEREXIT_SAVE_DOCUMENT_PREPARE
- USEREXIT_MOVE_FIELD_TO_VBAK – जब उपयोगकर्ता हेडर परिवर्तन हेडर कार्य क्षेत्र में ले जाए जाते हैं।
- USEREXIT_MOVE_FIELD_TO_VBAP – जब उपयोगकर्ता आइटम में परिवर्तन स्थानांतरित किए जाते हैं SAP आइटम कार्य क्षेत्र
तकनीकी रूप से, एक यूजर एग्जिट एक सबरूटीन (एक फॉर्म) होता है जो एक के अंदर होता है। SAP इसमें शामिल है, इसलिए इसे सीधे संपादित किया जा सकता है और इसके लिए एक्सेस कुंजी की आवश्यकता होती है। यही ग्राहक निकास से मुख्य व्यावहारिक अंतर है, जिसका सारांश अगले अनुभाग में दिया गया है।
उपयोगकर्ता निकास बनाम ग्राहक निकास
दोनों तकनीकें मानक में अनुकूलित व्यवहार जोड़ती हैं SAPलेकिन वे कार्यक्षेत्र, प्रौद्योगिकी और अपग्रेड सुरक्षा के मामले में भिन्न हैं। नीचे दी गई तालिका उनकी तुलना करती है।
| मापदंड | उपयोगकर्ता निकास | ग्राहक निकास |
|---|---|---|
| उपलब्धता | केवल एसडी मॉड्यूल | सभी के पार SAP मॉड्यूल |
| तकनीक | एक सबरूटीन (फॉर्म) में SAP इसमें MV45AFZZ जैसे उदाहरण शामिल हैं। | SMOD और CMOD में प्रबंधित फ़ंक्शन मॉड्यूल, स्क्रीन या मेनू से बाहर निकलना |
| प्रवेश की चाबी | संशोधन पहुंच कुंजी की आवश्यकता है | किसी एक्सेस कुंजी की आवश्यकता नहीं है |
| Upgrade व्यवहार | अपग्रेड में SPAU के साथ इसकी जांच अवश्य की जानी चाहिए। | Upgrade सुरक्षित, आरक्षित से बुलाया गया शामिल करें |
| के द्वारा प्रबंधित | शामिल में सीधे संपादित किया गया | CMOD प्रोजेक्ट के माध्यम से सक्रिय किया गया |
ग्राहक निकास दोनों में से अधिक सुरक्षित और सामान्य है। उन सुधारों के लिए जिन तक दोनों निकास नहीं पहुंच सकते, SAP बाद में बिजनेस ऐड-इन पेश किया गया।
ग्राहक निकास बनाम BAdI
A बिजनेस ऐड-इन (BAdI) कस्टमर एग्जिट का ऑब्जेक्ट ओरिएंटेड उत्तराधिकारी है। आरक्षित इंक्लूड के बजाय, BAdI एक इंटरफ़ेस को परिभाषित करता है, और कस्टम लॉजिक उस इंटरफ़ेस को लागू करने वाली क्लास में होता है। इससे दो ऐसे फायदे मिलते हैं जो कस्टमर एग्जिट में नहीं होते।
- एकाधिक कार्यान्वयन: एक मल्टीपल यूज़ BAdI एक ही एन्हांसमेंट के कई स्वतंत्र कार्यान्वयन की अनुमति देता है, जबकि एक कस्टमर एग्जिट केवल एक की अनुमति देता है।
- वस्तु अभिविन्यास: एक BAdI विधियों और कक्षाओं के साथ काम करता है, इसलिए यह आधुनिक ABAP ऑब्जेक्ट विकास के लिए उपयुक्त है और इसे देश या व्यावसायिक परिदृश्य के आधार पर फ़िल्टर करना आसान है।
व्यवहारिक नियम सरल है: जब संवर्द्धन बिंदु पहले से मौजूद हो तो मौजूदा ग्राहक निकास या उपयोगकर्ता निकास का उपयोग करें, और जब एक नए, पुन: प्रयोज्य संवर्द्धन बिंदु की आवश्यकता हो तो BAdI का उपयोग करें।








