SAP स्क्रिप्ट ट्यूटोरियल: SE71, SE78, SCC1, VF03, SO10

⚡ स्मार्ट सारांश

SAP लिपियाँ पाठ प्रसंस्करण प्रणाली का निर्माण करती हैं। SAP यह सिस्टम पूर्व-स्वरूपित पाठ को पूर्व-स्वरूपित प्रपत्रों में प्रिंट करता है। यह पृष्ठ पाँच घटकों, लेआउट सेट, नियंत्रण कमांड, प्रिंट प्रोग्राम, आउटपुट प्रकार और लेनदेन SE71, SE78, SO10 और SCC1 के बारे में बताता है।

  • 📝 मूल परिभाषा: SAPस्क्रिप्ट अंतर्निहित पाठ प्रसंस्करण प्रणाली है SAPइसका उपयोग पूर्व-स्वरूपित पाठ को चालान जैसे पूर्व-स्वरूपित प्रपत्रों में मुद्रित करने के लिए किया जाता है।
  • 🧱 पांच घटक: एक एडिटर, स्टाइल और लेआउट सेट, कंपोजर, एक प्रोग्रामिंग इंटरफेस और डेटाबेस टेबल जो टेक्स्ट और फॉर्म को स्टोर करते हैं।
  • 📄 लेआउट सेट: लेआउट सेट में कोई डेटा नहीं होता है। यह पृष्ठों, विंडो और टेक्स्ट तत्वों का वर्णन करता है, और प्रिंट प्रोग्राम डेटाबेस से चयनित डेटा के साथ इसे फीड करता है।
  • नियंत्रण आदेश: पैराग्राफ फॉर्मेट में /: के साथ दर्ज किए गए, NEW-PAGE, PROTECT, INCLUDE और PERFORM जैसे कमांड आउटपुट फॉर्मेटिंग को नियंत्रित करते हैं।
  • 🖨️ प्रिंट प्रोग्राम: OPEN_FORM, WRITE_FORM और CLOSE_FORM अनिवार्य हैं, जबकि START_FORM और END_FORM वैकल्पिक हैं।
  • 📬 आउटपुट प्रकार: टेबल NAST में संग्रहीत और प्रोग्राम RSNAST00 द्वारा निष्पादित, एक आउटपुट प्रकार यह निर्धारित करता है कि दस्तावेज़ मुद्रित किया जाएगा, फैक्स किया जाएगा या मेल किया जाएगा।
  • 🔁 ग्राहक निर्भरता: A SAPस्क्रिप्ट का स्वरूप क्लाइंट पर निर्भर होता है, इसलिए इसे SCC1 या SE71 की कॉपी फ्रॉम क्लाइंट यूटिलिटी का उपयोग करके क्लाइंट के बीच कॉपी किया जाता है।

SAP लिपियों

एचएमबी क्या है? SAP लिखी हुई कहानी?

SAP स्क्रिप्ट है SAP सिस्टम की अपनी पाठ्य-प्रसंस्करण प्रणाली है। यह अन्य अग्रणी पाठ्य-प्रसंस्करण प्रणालियों की तरह ही दिखती और महसूस होती है।

इसका उपयोग पूर्व-स्वरूपित पाठ को पूर्व-स्वरूपित रूपों में मुद्रित करने के लिए किया जाता है।

इसके साथ निर्मित विशिष्ट दस्तावेज़ SAPस्क्रिप्ट में इनवॉइस, परचेज़ ऑर्डर, डिलीवरी नोट और ग्राहक पत्र शामिल हैं। फॉर्म को SE71 ट्रांज़ैक्शन में एक बार डिज़ाइन किया जाता है, और एक ABAP प्रिंट प्रोग्राम रनटाइम पर डेटा प्रदान करता है।

के घटक SAPलिपि

SAP स्क्रिप्ट में पांच मुख्य घटक शामिल हैं:

के घटक SAPलिपि

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

ऊपर दिया गया चित्र दर्शाता है कि ये घटक आपस में कैसे जुड़ते हैं। इसके केंद्र में दिखाए गए लेआउट सेट का वर्णन आगे किया गया है।

लेआउट सेट

प्रोग्रामिंग इंटरफ़ेस का उपयोग करके दस्तावेज़ों को आउटपुट करने के लिए, R/3 एप्लिकेशन प्रोग्रामों को तथाकथित लेआउट सेट (एक प्रकार का फॉर्म) की आवश्यकता होती है। SAP स्क्रिप्ट लेआउट सेट व्यक्तिगत प्रिंट पृष्ठों के लेआउट का वर्णन करता है और परिभाषित आउटपुट ब्लॉकों की आपूर्ति करने के लिए पाठ तत्वों का उपयोग करता है, जिसे प्रिंट प्रोग्राम कॉल कर सकता है। लेआउट सेट को दस्तावेज़ के लिए पृष्ठ डिज़ाइन के रूप में परिभाषित किया जा सकता है

लेआउट सेट में स्वयं कोई डेटा नहीं होता है। दस्तावेज़ के लिए डेटा का चयन प्रिंट प्रोग्राम के माध्यम से किया जाता है। प्रिंट प्रोग्राम डेटाबेस टेबल से डेटा का चयन करता है और उसे लेआउट सेट में डालता है। प्रिंट प्रोग्राम के चलने पर दस्तावेज़ स्क्रीन या प्रिंटर पर प्रिंट हो जाता है।

आमतौर पर ए SAPस्क्रिप्ट लेआउट में निम्नलिखित घटक शामिल हैं

  1. हेडर डेटा: हेडर डेटा का उपयोग सूचना और नियंत्रण के लिए किया जाता है SAP मुद्रण। हेडर डेटा में 2 भाग शामिल हैं - डिवाइस स्वतंत्र - प्रारंभ पृष्ठ, डिफ़ॉल्ट पैराग्राफ, भाषा विशेषताएँ आदि जैसी जानकारी संग्रहीत करता है। और डिवाइस आश्रित पृष्ठ प्रारूप, ओरिएंटेशन लाइन्स प्रति इंच आदि जैसी जानकारी संग्रहीत करता है
  2. पैराग्राफ और कैरेक्टर प्रारूप: पैराग्राफ़ को विभिन्न विशेषताओं का उपयोग करके फ़ॉर्मेट किया जाता है। उदाहरण के लिए मानक पैराग्राफ़ विशेषताएँ बाएँ या दाएँ मार्जिन, संरेखण, लाइन स्पेसिंग आदि निर्दिष्ट करती हैं। फ़ॉन्ट विशेषताएँ फ़ॉन्ट परिवार, फ़ॉन्ट आकार आदि निर्दिष्ट करती हैं। वर्ण प्रारूप पैराग्राफ़ के भीतर पाठ के पूरे ब्लॉक को फ़ॉर्मेट करने की अनुमति देते हैं
  3. Windows और पाठ तत्व: Windows एक पृष्ठ में अलग-अलग टेक्स्ट क्षेत्र (हेडर एड्रेस, दिनांक, फ़ुटर) हैं। यह दस्तावेज़ में निहित जानकारी को कुछ समूहों में संयोजित करने में मदद करता है और प्रत्येक समूह को एक अलग क्षेत्र में मुद्रित पृष्ठ पर प्रदर्शित करता है। आप प्रत्येक विंडो के लिए टेक्स्ट तत्व (विंडो टेक्स्ट) परिभाषित कर सकते हैं। प्रिंट प्रोग्राम नाम से टेक्स्ट तत्वों तक पहुँचता है, उन्हें फ़ॉर्मेट करता है और उन्हें संबंधित विंडो में प्रिंट करता है। उपयोग किए गए पैराग्राफ़ और कैरेक्टर फ़ॉर्मेट को फ़ॉर्म में परिभाषित किया जाना चाहिए।
  4. पन्ने: वे दस्तावेज़ के अलग-अलग पृष्ठ हैं और उनका एक अनूठा नाम होना चाहिए। आपको अक्सर अलग-अलग पृष्ठों के लिए अलग-अलग लेआउट मिलेंगे: चालान का पहला पृष्ठ बाद के पृष्ठों से अलग होता है, जिस पर आपको पता या ग्राहक डेटा जैसी सामान्य जानकारी दोहराने की ज़रूरत नहीं होती है।
  5. पेज Windows: विंडो और पेज को परिभाषित करते समय, आप अभी तक आउटपुट किए जाने वाले टेक्स्ट की स्थिति और अंतर को निर्धारित नहीं करते हैं। एक पेज विंडो आउटपुट क्षेत्र के बाएं ऊपरी किनारे और इसकी चौड़ाई और ऊंचाई को निर्दिष्ट करके आउटपुट माध्यम में आयताकार आउटपुट क्षेत्र को परिभाषित करती है।

नियंत्रण आदेश

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

वाक्य - विन्यास

Enter /: in the paragraph format

उदाहरण

  • नया-पृष्ठ – स्पष्ट पृष्ठ विराम
  • प्रोटेक्ट ………एंडप्रोटेक्ट – पूरे पैराग्राफ को एक पेज में प्रिंट करने के लिए।
  • शामिल करें – किसी अन्य पाठ की सामग्री को वर्तमान पाठ में शामिल करना
  • PERFORM – किसी भी ABAP प्रोग्राम के सबरूटीन को कॉल करने के लिए

प्रिंट प्रोग्राम

स्क्रिप्ट का निष्पादन एक के माध्यम से किया जाता है एबीएपी कार्यक्रम, जिसे प्रिंट प्रोग्राम कहा जाता है। प्रत्येक प्रिंट प्रोग्राम में एक ENTRY फॉर्म होना चाहिए, जिसे कस्टमाइज़ेशन से बुलाया जाएगा।

मानक कॉन्फ़िगरेशन के लिए हम टेबल TNAPR में फ़ॉर्म नाम (स्क्रिप्ट नाम), प्रिंट प्रोग्राम नाम और आउटपुट प्रकार देख सकते हैं। प्रिंट प्रोग्राम स्क्रिप्ट को कॉल करने के लिए फ़ॉर्म नियंत्रण फ़ंक्शन का उपयोग करता है।

प्रिंट प्रोग्राम स्क्रिप्ट को निष्पादित करने के लिए सभी या कुछ फॉर्म नियंत्रण फ़ंक्शन को कॉल करता है

  • OPEN_FORM (अनिवार्य) लेआउट सेट आउटपुट खोलता है
  • CLOSE_FORM (अनिवार्य) लेआउट सेट आउटपुट को समाप्त करता है
  • START_FORM (वैकल्पिक) एक नया लेआउट सेट शुरू करता है
  • WRITE_FORM (अनिवार्य) लेआउट सेट तत्व को कॉल करता है
  • END_FORM (वैकल्पिक) वर्तमान लेआउट सेट को समाप्त करता है

कैसे बनाएँ SAPSE71 में स्क्रिप्ट फॉर्म

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

  1. फॉर्म बनाएं: SE71 में फॉर्म का नाम और भाषा दर्ज करें, फिर 'क्रिएट' चुनें। हेडर में शुरुआती पेज, डिफ़ॉल्ट पैराग्राफ और पेज फॉर्मेट भरें।
  2. पैराग्राफ और कैरेक्टर फॉर्मेट को परिभाषित करें: कम से कम एक पैराग्राफ फॉर्मेट बनाएं, उदाहरण के लिए एक मानक पंक्ति के लिए AS, क्योंकि प्रत्येक टेक्स्ट एलिमेंट एक पैराग्राफ फॉर्मेट को संदर्भित करता है।
  3. पेज बनाएं: उदाहरण के लिए, FIRST नाम से एक पहला पृष्ठ परिभाषित करें और उसके अगले पृष्ठ को NEXT पर सेट करें ताकि लंबे दस्तावेज़ दूसरे लेआउट पर जारी रहें।
  4. विंडो और पेज विंडो बनाएं: हेडर, मेन और फुटर जैसी विंडो को परिभाषित करें, फिर उनमें से प्रत्येक को पेज पर रखें और ऊपरी बाएँ किनारे, चौड़ाई और ऊँचाई दर्ज करें।
  5. पाठ के तत्व लिखें: किसी विंडो में टेक्स्ट एडिटर खोलें और प्रत्येक ब्लॉक को /E से चिह्नित करें, जिसके बाद एलिमेंट का नाम लिखें। प्रिंट प्रोग्राम उस नाम से एलिमेंट को कॉल करेगा।
  6. फॉर्म को सक्रिय करें और प्रिंट प्रोग्राम लिखें: फॉर्म को सक्रिय करें, फिर नीचे दिखाए अनुसार ABAP प्रोग्राम से फॉर्म नियंत्रण कार्यों को कॉल करें।
  7. आउटपुट प्रकार निर्दिष्ट करें: उदाहरण के लिए, एप्लिकेशन के आउटपुट कस्टमाइज़ेशन के माध्यम से टेबल TNAPR में फॉर्म का नाम, प्रिंट प्रोग्राम और ENTRY रूटीन दर्ज करें, उदाहरण के लिए NACE।
CALL FUNCTION 'OPEN_FORM'
  EXPORTING
    form     = 'Z_INVOICE'
    language = sy-langu
    device   = 'PRINTER'.

* Print the element ITEM_LINE in the window MAIN
LOOP AT lt_items INTO ls_item.
  CALL FUNCTION 'WRITE_FORM'
    EXPORTING
      element  = 'ITEM_LINE'
      window   = 'MAIN'
      function = 'SET'
      type     = 'BODY'.
ENDLOOP.

CALL FUNCTION 'CLOSE_FORM'.

⚠️ चेतावनी: WRITE_FORM फ़ंक्शन केवल उन फ़ील्ड्स को प्रिंट करता है जो कॉल के समय भरे होते हैं। कॉल करने से पहले वर्क एरिया को भरें, क्योंकि फ़ॉर्म प्रिंट प्रोग्राम के ग्लोबल फ़ील्ड्स को पढ़ता है, न कि फ़ंक्शन मॉड्यूल के पैरामीटर्स को।

आउटपुट प्रकार

आउटपुट प्रकार एक मुद्रित फ़ॉर्म निर्दिष्ट कर सकता है जिसकी आपको आंतरिक उपयोग के लिए आवश्यकता है या एक फ़ॉर्म जिसे आप किसी ग्राहक या विक्रेता को भेजना चाहते हैं। आउटपुट प्रकार एक आंतरिक इलेक्ट्रॉनिक मेल संदेश भी हो सकता है जिसे आप किसी अन्य विभाग के कर्मचारियों को भेजना चाहते हैं।

उदाहरण के लिए “प्रिंट आउट” को बिलिंग दस्तावेज़ के एक आउटपुट प्रकार के रूप में वर्गीकृत किया जा सकता है, अर्थात जब इस आउटपुट प्रकार को निष्पादित किया जाता है तो बिलिंग दस्तावेज़ मुद्रित होता है। इसी तरह “फ़ैक्स” एक आउटपुट प्रकार हो सकता है, अर्थात जब इस आउटपुट प्रकार को निष्पादित किया जाता है तो बिलिंग दस्तावेज़ का फ़ैक्स भेजा जाता है

किसी भी दस्तावेज़ (जैसे बिलिंग दस्तावेज़) के लिए सभी आउटपुट प्रकार NAST तालिका में संग्रहीत किए जाएंगे। आउटपुट प्रकार RSNAST00 प्रोग्राम के माध्यम से निष्पादित किए जाते हैं।

उदाहरण : बिलिंग दस्तावेज़ में आउटपुट प्रकार-

  1. VF03 पर जाएं
  2. बिलिंग दस्तावेज़ संख्या दर्ज करें और पुनः एंटर दबाएँ
  3. मेनू के अंतर्गत आउटपुट चुनें Goto -> हेडर
  4. यहाँ Z101 प्रिंट आउटपुट का आउटपुट प्रकार है

आउटपुट प्रकार

स्क्रीनशॉट में लेनदेन VF03 की आउटपुट स्क्रीन दिखाई गई है, जहां आउटपुट प्रकार Z101 बिलिंग दस्तावेज़ से जुड़ा हुआ है।

मानक पाठ और ग्राफिक्स

आपकी रिपोर्ट के लिए मानक पाठ लेनदेन का उपयोग करके बनाया जा सकता है SO10

ग्राफ़िक्स और प्रिंटर मैक्रोज़ अपलोड किए जाते हैं रिपोर्ट RSTXLDMC को व्यक्तिगत मानक पाठ दस्तावेज़ों में या लेनदेन के माध्यम से एसई78. ग्राफिक्स को “बेसलाइन TIFF 6.0” फॉर्मेट में अपलोड किया जाता है (पीसी पर .tif फाइलें)।

SAP RSTXSCRP प्रोग्राम का उपयोग करके स्क्रिप्ट और मानक पाठ तत्वों को दो प्रणालियों के बीच निर्यात या आयात किया जा सकता है

क्लाइंट्स के बीच स्क्रिप्ट की प्रतिलिपि बनाना:

SAP स्क्रिप्ट एक क्लाइंट पर निर्भर ऑब्जेक्ट है। प्रोग्रामों के विपरीत, इसमें किए गए परिवर्तन SAP एक क्लाइंट में मौजूद स्क्रिप्ट दूसरे क्लाइंट में दिखाई नहीं देगी। एक क्लाइंट से दूसरे क्लाइंट में स्क्रिप्ट कॉपी करने के लिए, यहाँ जाएँ SE71 और यूटिलिटीज मेनू के अंतर्गत उपलब्ध “क्लाइंट से कॉपी करें” विकल्प का उपयोग करें या ट्रांजेक्शन का उपयोग करके मूल क्लाइंट से ट्रांसपोर्ट अनुरोध आयात करें, जिसमें स्क्रिप्ट सहेजी गई है एससीसी1 .

ध्यान देने योग्य महत्वपूर्ण बिंदु

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

SAPस्क्रिप्ट बनाम स्मार्ट फ़ॉर्म

SAPलिपि इन दोनों प्रकार की तकनीकों में सबसे पुरानी है। SAPऔर प्रत्येक नया रूप सामान्यतः इसके साथ बनाया जाता है स्मार्ट फॉर्मनीचे दी गई तालिका इसका कारण बताती है।

मापदंड SAPलिपि स्मार्ट फॉर्म
सौदा SE71 स्मार्टफॉर्म
ग्राहक निर्भरता क्लाइंट पर निर्भर, SCC1 के साथ कॉपी किया गया ग्राहक स्वतंत्र
मुख्य विंडो केवल एक मुख्य खिड़की की आवश्यकता है यह अनिवार्य नहीं है, और कई मुख्य खिड़कियाँ अनुमत हैं।
प्रोग्राम लॉजिक अलग प्रिंट प्रोग्राम में लिखा गया यह आंशिक रूप से फॉर्म में ही निर्मित है, जो अपना स्वयं का फ़ंक्शन मॉड्यूल उत्पन्न करता है।
आउटपुट स्वरूप प्रिंट करें, फैक्स करें और मेल करें प्रिंट, फैक्स, मेल और XML या HTML आउटपुट
संस्करण प्रबंधन कोई बदलाव नहीं हुआ, इसलिए परिवर्तनों को मैन्युअल रूप से दर्ज करना होगा। वर्कबेंच के माध्यम से उपलब्ध है

SAPयह लिपि अभी भी व्यापक रूप से उपयोग में है, क्योंकि कई मानक SAP फॉर्म और उनके प्रिंट प्रोग्राम अभी भी इस पर निर्भर करते हैं, और क्योंकि ग्राहक पर निर्भर फॉर्म को प्रत्येक ग्राहक के अनुसार अनुकूलित किया जा सकता है।

अक्सर पूछे जाने वाले प्रश्न

टेबल TNAPR में प्रत्येक आउटपुट प्रकार के लिए फॉर्म का नाम, प्रिंट प्रोग्राम और ENTRY रूटीन संग्रहीत होता है। इसे SE16 के साथ पढ़ें, या ट्रांज़ैक्शन NACE में एप्लिकेशन के आउटपुट कस्टमाइज़िंग को खोलें।

ग्राफ़िक्स को SE78 या रिपोर्ट RSTXLDMC के माध्यम से बेसलाइन TIFF 6.0 प्रारूप में अपलोड किया जाना चाहिए, और फ़ॉर्म में परिणामी मानक टेक्स्ट का संदर्भ होना चाहिए। कंपोज़र द्वारा रंगीन या PNG फ़ाइल स्वीकार नहीं की जाती है।

SE71 में यूटिलिटीज मेनू पाथ पर जाकर डिबगर को सक्रिय करें। इससे प्रिंट प्रोग्राम चलने के दौरान सिस्टम प्रत्येक टेक्स्ट एलिमेंट पर रुक जाएगा और फ़ील्ड के मानों की जाँच की जा सकेगी।

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

SAPस्क्रिप्ट कोई वर्ज़न हिस्ट्री नहीं रखती, इसलिए बदलावों को ट्रैक करना मुश्किल है। tracई. एआई उपकरण आरएसटीएक्सएससीआरपी द्वारा उत्पादित दो निर्यातों की तुलना करते हैं, प्रत्येक पाठ तत्व में क्या परिवर्तन हुआ है इसका सारांश प्रस्तुत करते हैं, और उस दस्तावेज़ीकरण का मसौदा तैयार करते हैं जिसे फॉर्म स्वयं संग्रहीत नहीं करता है।

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