ABAP सब्सक्राइबर ट्यूटोरियल: SAP में सबस्क्रीन को कॉल करें

विषय - सूची:

Anonim

इस ट्यूटोरियल को पढ़ने से पहले आप यह सुनिश्चित कर लें कि डायलॉग प्रोग्राम क्या है ...

कॉल करें

  • एक सबस्क्रीन एक स्वतंत्र स्क्रीन है जो दूसरे ("मुख्य") स्क्रीन के क्षेत्र में प्रदर्शित होती है।
  • सदस्यता आपको रनटाइम के दौरान एक स्क्रीन को दूसरे के भीतर एम्बेड करने की अनुमति देती है। आप मुख्य स्क्रीन पर कई उप-स्क्रीन शामिल कर सकते हैं।
  • सबस्क्रीन स्क्रीन उस स्क्रीन पर लागू होती है जिसे आप एम्बेड करते हैं, और मुख्य स्क्रीन पर वह क्षेत्र जिसमें आप इसे रखते हैं। यह ट्यूटोरियल सबस्क्रीन क्षेत्रों के बारे में है। SE51 लेनदेन के माध्यम से बनाई गई वास्तविक स्क्रीन, स्क्रीन विशेषताओं में परिभाषित होने पर सबस्क्रीन स्क्रीन कहलाती हैं।
  • जब आप एक सबस्क्रीन का उपयोग करते हैं, तो एम्बेडेड स्क्रीन के प्रवाह तर्क को मुख्य स्क्रीन के प्रवाह तर्क में भी एम्बेड किया जाता है। स्क्रीन पर उपस्क्रीन का उपयोग करना ABAP कार्यक्रमों में शामिल करने की तरह है।

एक सबस्क्रीन का उपयोग करने के लिए, आपको तीन सरल चरणों का पालन करना होगा

  1. एक स्क्रीन पर उपस्क्रीन क्षेत्र (ओं) को परिभाषित करें
  2. उपयुक्त सबस्क्रीन स्क्रीन परिभाषित करें
  3. सबस्क्रीन स्क्रीन को सबस्क्रीन स्क्रीन में शामिल करें।

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

उदाहरण के लिए, हमने मुख्य स्क्रीन पर दो उप-स्क्रीन क्षेत्रों को परिभाषित किया है और दो अलग-अलग उप-स्क्रीन को संबंधित क्षेत्रों में संलग्न किया है। जब भी मुख्य स्क्रीन को कहा जाता है, मुख्य स्क्रीन के PBO को कहा जाता है। लेकिन प्रदर्शन से पहले, मुख्य स्क्रीन पर उप-स्क्रीन क्षेत्रों से जुड़ी प्रत्येक स्क्रीन के PBO को भी कहा जाता है।

आप मुख्य स्क्रीन के प्रवाह तर्क में कॉल SUBSCREEN बयान का उपयोग कर एक सबस्क्रीन स्क्रीन शामिल कर सकते हैं।
मुख्य स्क्रीन के सबस्क्रीन क्षेत्र में एक सबस्क्रीन स्क्रीन को शामिल करने और उसके PBO प्रवाह तर्क को कॉल करने के लिए, मुख्य स्क्रीन के PBO घटना में निम्नलिखित कथन का उपयोग करें:

आगे से आगे बढ़ें।कॉल SUBSCREEN <क्षेत्र> शामिल करना [<ठे>] 

यह स्टेटमेंट सब्स्क्राइब स्क्रीन को नंबर के साथ सब्स्क्राइब्ड एरिया में <एरिया> कहलाता है। आप उस प्रोग्राम को भी निर्दिष्ट कर सकते हैं जिसमें सबस्क्रीन स्क्रीन परिभाषित है (वैकल्पिक)। यदि आप प्रोग्राम को स्पष्ट रूप से निर्दिष्ट नहीं करते हैं, तो सिस्टम मुख्य प्रोग्राम के समान ABAP प्रोग्राम में सबस्क्रीन स्क्रीन की तलाश करता है। यदि यह एक संबंधित सबस्क्रीन स्क्रीन नहीं पाता है, तो रनटाइम त्रुटि होती है। सबस्क्रीन स्क्रीन का PBO प्रवाह तर्क भी उसी बिंदु पर शामिल है। इसे ABAP प्रोग्राम का PBO मॉड्यूल कह सकते हैं जिसमें सबस्क्रीन स्क्रीन परिभाषित है। सबस्क्रीन PBO के अंत में, प्रोग्राम से वैश्विक फ़ील्ड्स को सबस्क्रीन स्क्रीन में किसी भी पहचान-नाम वाले स्क्रीन फ़ील्ड में पास किया जाता है। सबस्क्रीन के PBO प्रवाह तर्क में स्वयं आगे सबसक्राइन्स शामिल हो सकते हैं।

सबस्क्रीन क्षेत्र का <क्षेत्र> नाम सीधे उल्टे अल्पविराम के बिना दर्ज किया जाना चाहिए। आप और नाम या तो शाब्दिक या चर के रूप में निर्दिष्ट कर सकते हैं। यदि आप चर का उपयोग करते हैं, तो आपको ABAP प्रोग्राम में पहचान के नाम वाले चर को घोषित करना और भरना होगा। स्क्रीन नंबर 4 वर्ण लंबा होना चाहिए। यदि आप किसी क्षेत्र में सबस्क्रीन स्क्रीन असाइन नहीं करते हैं, तो यह खाली रहता है।
सबस्क्रीन स्क्रीन के PAI प्रवाह तर्क को कॉल करने के लिए, मुख्य स्क्रीन के PAI प्रवाह तर्क में निम्न कथन का उपयोग करें:

प्रक्रिया के बाद आगे बढ़ें।कॉल क्षेत्र <क्षेत्र>।

इस कथन में PBO इवेंट में सबस्क्रीन स्क्रीन <क्षेत्र> में शामिल सबस्क्रीन स्क्रीन का PAI प्रवाह तर्क शामिल है। इसे ABAP प्रोग्राम का PAI मॉड्यूल कह सकते हैं जिसमें सबस्क्रीन स्क्रीन परिभाषित है। डेटा को सबस्क्रीन स्क्रीन और ABAP प्रोग्राम में समान रूप से नामित फ़ील्ड के बीच ले जाया जाता है, जब PAI ईवेंट को ट्रिगर किया जाता है, या सबस्क्रीन के PAI फ्लो लॉजिक में संबंधित FIELD स्टेटमेंट्स पर।
याद दिलाने के संकेत

  • एक स्क्रीन के भीतर उप-स्क्रीन के तत्वों के नाम अद्वितीय होने चाहिए
  • आपके पास सब-स्क्रीन के साथ OK_CODE या FCODE नहीं होना चाहिए। मुख्य स्क्रीन का OK_CODE ही उप-स्क्रीन का OK_CODE है
  • उप-स्क्रीन में SET TITLEBAR, SET PF-STATUS, SET SCREEN, LEAVE SCREEN या LERE TO SCREEN युक्त कोई भी संवाद मॉड्यूल नहीं हो सकता। यह रनटाइम त्रुटि का कारण होगा।
  • आपको इसे मुख्य स्क्रीन के प्रवाह तर्क (PBO और PAI दोनों) में कॉल करने की आवश्यकता है।
  • CALL SUBSCREEN को CHAIN ​​... ENDCHAIN ​​और LOOP ENDLOOP कथनों में अनुमति नहीं है
  • एक AT EXIT-COMMAND मॉड्यूल नहीं हो सकता
  • आपके द्वारा उपयोग किए जाने वाले क्षेत्र वैश्विक क्षेत्र हैं। उन्हें शीर्ष में शामिल घोषित किया जाना चाहिए
  • यदि किसी अन्य डायलॉग प्रोग्राम से सब्स्क्राइब का उपयोग किया जाता है तो डेटा ट्रांसफर तब तक नहीं होगा जब तक आप विशिष्ट कोड नहीं जोड़ते।