CICS - त्वरित गाइड
CICS एक DB / DC प्रणाली है जिसका उपयोग ऑनलाइन अनुप्रयोगों में किया जाता है। CICS को विकसित किया गया था क्योंकि बैच ऑपरेटिंग सिस्टम केवल बैच प्रोग्राम निष्पादित कर सकता है। CICS प्रोग्राम को COBOL, C, C ++, Java, आदि में लिखा जा सकता है। इन दिनों, उपयोगकर्ता सेकंड के भीतर और वास्तविक समय में जानकारी चाहते हैं। ऐसी त्वरित सेवा प्रदान करने के लिए, हमें एक ऐसी प्रणाली की आवश्यकता होती है जो ऑनलाइन जानकारी संसाधित कर सके। CICS उपयोगकर्ताओं को वांछित जानकारी प्राप्त करने के लिए बैक-एंड सिस्टम के साथ संवाद करने की अनुमति देता है। ऑनलाइन कार्यक्रमों के उदाहरणों में ऑनलाइन बैंकिंग प्रणाली, उड़ान आरक्षण आदि शामिल हैं। निम्नलिखित छवि सीआईसी के घटकों को दर्शाती है और वे कैसे अंतर-संबंधित हैं -
सीआईसी के कार्य
एक आवेदन में सीआईसी द्वारा किए गए मुख्य कार्य निम्नानुसार हैं -
सीआईसी एक आवेदन में समवर्ती उपयोगकर्ताओं से अनुरोध का प्रबंधन करता है।
हालाँकि, कई उपयोगकर्ता CICS प्रणाली पर काम कर रहे हैं, लेकिन यह उपयोगकर्ता को यह एहसास दिलाता है कि वह केवल एकल उपयोगकर्ता है।
CICS किसी एप्लिकेशन में उन्हें पढ़ने या अपडेट करने के लिए डेटा फ़ाइलों तक पहुँच देती है।
सीआईसी की विशेषताएं
CICS की विशेषताएं इस प्रकार हैं -
CICS अपने आप में एक ऑपरेटिंग सिस्टम है, क्योंकि यह अपने स्वयं के प्रोसेसर भंडारण का प्रबंधन करता है, इसका अपना कार्य प्रबंधक है जो कई कार्यक्रमों के निष्पादन को संभालता है, और अपने स्वयं के फ़ाइल प्रबंधन कार्यों को प्रदान करता है।
सीआईसी बैच ऑपरेटिंग सिस्टम में ऑनलाइन वातावरण प्रदान करता है। प्रस्तुत नौकरियों को तुरंत निष्पादित किया जाता है।
CICS एक सामान्यीकृत लेनदेन प्रसंस्करण इंटरफ़ेस है।
एक ही समय में दो या अधिक सीआईसी क्षेत्र होना संभव है, क्योंकि सीआईसी बैक-एंड में ऑपरेटिंग सिस्टम में बैच की नौकरी के रूप में चलता है।
सीआईसी खुद एक ऑपरेटिंग सिस्टम के रूप में कार्य करता है। इसका काम आवेदन कार्यक्रमों के ऑनलाइन निष्पादन के लिए एक वातावरण प्रदान करना है। CICS एक क्षेत्र या पार्टीशन या एड्रेस स्पेस में चलती है। सीआईसी इसके तहत चल रहे कार्यक्रमों के लिए समय-सारिणी संभालती है। CICS एक बैच जॉब के रूप में चलती है और हम इसे PREFIX CICS * जारी करके स्पूल में देख सकते हैं। पाँच प्रमुख सेवाएँ हैं जो CICS द्वारा प्रदान की जाती हैं। ये सभी सेवाएँ मिलकर एक कार्य करती हैं।
CICS पर्यावरण
निम्नलिखित सेवाओं पर हम विस्तार से चर्चा करेंगे।
- सिस्टम सेवाएँ
- डेटा संचार सेवाएं
- डेटा हैंडलिंग सेवाएँ
- अनुप्रयोग प्रोग्रामिंग सेवाएँ
- निगरानी सेवाएँ
- सिस्टम सेवाएँ
सीआईसी सिस्टम के भीतर संसाधनों के आवंटन या डी-आवंटन के प्रबंधन के लिए नियंत्रण कार्य करता है जो निम्नानुसार हैं -
Task Control- टास्क कंट्रोल टास्क शेड्यूलिंग और मल्टीटास्किंग फीचर प्रदान करता है। यह CICS के सभी कार्यों की स्थिति का ध्यान रखता है। कार्य नियंत्रण समवर्ती सीआईसी कार्यों के बीच प्रोसेसर समय आवंटित करता है। यह कहा जाता हैmultitasking। CICS प्रतिक्रिया समय को सबसे महत्वपूर्ण कार्य के लिए प्राथमिकता देने की कोशिश करती है।
Program Control- कार्यक्रम नियंत्रण आवेदन कार्यक्रमों के लोडिंग और रिलीज का प्रबंधन करता है। जैसे ही कोई कार्य शुरू होता है, कार्य को उपयुक्त एप्लिकेशन प्रोग्राम के साथ जोड़ना आवश्यक हो जाता है। यद्यपि कई कार्यों को एक ही एप्लिकेशन प्रोग्राम का उपयोग करने की आवश्यकता हो सकती है, CICS कोड की केवल एक प्रतिलिपि को मेमोरी में लोड करता है। प्रत्येक कार्य स्वतंत्र रूप से इस कोड के माध्यम से अपना रास्ता बनाता है, इसलिए कई उपयोगकर्ता सभी लेनदेन चला सकते हैं जो एक आवेदन कार्यक्रम की एक ही भौतिक प्रतिलिपि का उपयोग करके समवर्ती रूप से होते हैं।
Storage Control- भंडारण नियंत्रण मुख्य भंडारण का अधिग्रहण और विमोचन करता है। भंडारण नियंत्रण प्राप्त करता है, नियंत्रण करता है, और गतिशील भंडारण को मुक्त करता है। डायनेमिक स्टोरेज का उपयोग इनपुट / आउटपुट क्षेत्रों, कार्यक्रमों आदि के लिए किया जाता है।
Interval Control - अंतराल नियंत्रण टाइमर सेवाएं प्रदान करता है।
डेटा संचार सेवाएं
आवेदन कार्यक्रमों से डेटा संचार अनुरोधों को संभालने के लिए बीटीएएम, वीटीएएम और टीसीएएम जैसी दूरसंचार एक्सेस विधियों के साथ डेटा संचार सेवा इंटरफ़ेस।
सीआईसी बेसिक मैपिंग सपोर्ट (बीएमएस) के उपयोग के माध्यम से टर्मिनल हार्डवेयर मुद्दों से निपटने के बोझ से आवेदन कार्यक्रम जारी करता है।
CICS मल्टी रीजन ऑपरेशन (MRO) प्रदान करता है जिसके माध्यम से एक ही सिस्टम में एक से अधिक CICS क्षेत्र संचार कर सकते हैं।
CICS इंटर सिस्टम कम्युनिकेशन (ISC) प्रदान करती है, जिसके माध्यम से एक सिस्टम में CICS क्षेत्र दूसरे सिस्टम पर CICS क्षेत्र के साथ संचार कर सकता है।
डेटा हैंडलिंग सेवाएँ
डेटा हैंडलिंग सेवा इंटरफ़ेस जैसे डेटा एक्सेस के तरीके जैसे BDAM, VSAM इत्यादि।
CICS एप्लिकेशन प्रोग्राम से डेटा हैंडलिंग अनुरोधों की सर्विसिंग की सुविधा देता है। CICS एप्लिकेशन प्रोग्रामर्स को डेटा सेट और डेटाबेस एक्सेस और संबंधित ऑपरेशन से निपटने के लिए कमांड का एक सेट प्रदान करता है।
डेटा हैंडलिंग सेवाएँ डेटाबेस एक्सेस विधियों जैसे कि IMS / DB, DB2, आदि के साथ इंटरफेस करती हैं और एप्लिकेशन प्रोग्राम से डेटाबेस अनुरोधों की सर्विसिंग की सुविधा प्रदान करती हैं।
CICS एक साथ रिकॉर्ड अपडेट, नियंत्रण कार्य ABENDs के रूप में डेटा की सुरक्षा और सिस्टम विफलताओं पर डेटा की सुरक्षा के द्वारा डेटा अखंडता के प्रबंधन की सुविधा प्रदान करता है।
अनुप्रयोग प्रोग्रामिंग सेवाएँ
आवेदन कार्यक्रमों के साथ एप्लीकेशन प्रोग्रामिंग सर्विसेज इंटरफ़ेस। CICS की एप्लिकेशन प्रोग्रामिंग सेवाएं कमांड स्तर अनुवाद, CEDF (डिबग सुविधा) और CECI (कमांड इंटरप्रेटर सुविधा) जैसी सुविधाएँ प्रदान करती हैं। हम आगामी मॉड्यूल में अधिक विस्तार से चर्चा करेंगे।
निगरानी सेवाएँ
मॉनिटरिंग सर्विसेज CICS एड्रेस स्पेस के भीतर होने वाली विभिन्न घटनाओं पर नजर रखती हैं। यह सांख्यिकीय सूचनाओं की श्रृंखला प्रदान करता है जिनका उपयोग सिस्टम ट्यूनिंग के लिए किया जा सकता है।
हमें सीआईसी में उपयोग किए जाने वाले बुनियादी शब्दों का ज्ञान होना चाहिए ताकि यह समझ सके कि यह कैसे काम करता है। अनुप्रयोग प्रोग्राम दूरस्थ और स्थानीय टर्मिनलों और उप-प्रणालियों के साथ संचार के लिए CICS का उपयोग करते हैं।
आईबीएम 3270 टर्मिनल
3270 सूचना प्रदर्शन प्रणाली प्रदर्शन और प्रिंटर टर्मिनलों का एक परिवार है। 3270 टर्मिनलों का उपयोग आईबीएम नियंत्रकों के माध्यम से मेनफ्रेम से जुड़ने के लिए किया जा रहा था। आज, 3270 एमुलेशन सॉफ्टवेयर उपलब्ध है जिसका मतलब है कि सामान्य पीसी को भी 3270 टर्मिनल के रूप में इस्तेमाल किया जा सकता है। 3270 टर्मिनल गूंगे टर्मिनल हैं और स्वयं कोई प्रसंस्करण नहीं करते हैं। सभी प्रसंस्करण आवेदन कार्यक्रम द्वारा किया जाना चाहिए। आईबीएम टर्मिनलों में निम्नलिखित घटक होते हैं -
CRT मॉनिटर
CRT मॉनिटर आउटपुट या एप्लिकेशन प्रोग्राम के इनपुट फ़ील्ड को प्रदर्शित करता है। सीआरटी मॉनिटर के 3278 मॉडल का एक स्क्रीनशॉट नीचे दिखाया गया है। इसकी निम्न विशेषताएं हैं -
यह 1920 पात्रों को प्रदर्शित करने में सक्षम है।
इन 1920 चरित्र पदों में से प्रत्येक व्यक्तिगत रूप से संबोधित करने योग्य है।
एक COBOL एप्लिकेशन प्रोग्राम स्क्रीन पर सभी पदों के लिए डेटा भेज सकता है।
क्षेत्र की तीव्रता, संरक्षित, गैर-संरक्षित जैसी प्रदर्शन विशेषताओं को बीएमएस का उपयोग करके सेट किया जा सकता है जिसके बारे में हम आगामी मॉड्यूल में विस्तार से चर्चा करेंगे।
कीबोर्ड
आईबीएम कीबोर्ड कुंजी को दो श्रेणियों में विभाजित किया गया है -
Non-AID Keys- अल्फाबेट्स, संख्यात्मक, विराम चिह्न आदि के लिए अन्य सभी चाबियाँ गैर-सहायता कुंजी हैं। जब उपयोगकर्ता गैर-सहायता कुंजियों का उपयोग करके पाठ या नंबर टाइप करता है, तो CICS को यह भी पता नहीं चलेगा कि उपयोगकर्ता कुछ टाइप कर रहा है या नहीं।
AID Keys- AID कीज को अटेंशन आइडेंटिफायर कीज के नाम से जाना जाता है। CICS केवल AID कुंजी का पता लगा सकती है। सभी इनपुट टाइप करने के बाद, जब उपयोगकर्ता AID कुंजी में से किसी एक को दबाता है, तो CICS नियंत्रण लेता है। सहायता कुंजी: ENTER, PF1 से PF24, PA1 से PA3, CLEAR। AID कुंजी को आगे दो श्रेणियों में बांटा गया है -
PF Keys- पीएफ कीज़ को फंक्शन कीज़ के रूप में जाना जाता है। पीएफ कीज़ टर्मिनल से CICS तक डेटा ट्रांसफर करने की अनुमति देती हैं। पीएफ कीज एंटर होती हैं और पीएफ 1 से पीएफ 24।
PA Keys- PA कीज को प्रोग्राम एक्सेस कीज के रूप में जाना जाता है। PA कुंजी टर्मिनल और CICS के बीच डेटा के हस्तांतरण की अनुमति नहीं देती है। PA कीज PA1 से PA3 और CLEAR हैं।
लेन-देन
लेन-देन के माध्यम से CICS प्रोग्राम लागू किया जाता है। एक CICS लेनदेन एक आवेदन में तार्किक रूप से संबंधित कार्यक्रमों का एक संग्रह है। पूरे आवेदन को तार्किक रूप से कई लेनदेन में विभाजित किया जा सकता है।
लेन-देन पहचानकर्ता जो 1 से 4 वर्ण लंबे होते हैं, उन लेनदेन की पहचान करने के लिए उपयोग किया जाता है जो उपयोगकर्ता करना चाहते हैं।
एक प्रोग्रामर एक प्रोग्राम को लेन-देन पहचानकर्ता से जोड़ता है जो उस विशेष लेनदेन के लिए सभी एप्लिकेशन प्रोग्राम को लागू करने के लिए उपयोग किया जाता है।
टास्क
टास्क कार्य की एक इकाई है जो एक उपयोगकर्ता के लिए विशिष्ट है।
उपयोगकर्ता लेन-देन पहचानकर्ताओं में से एक का उपयोग करके एक आवेदन आमंत्रित करते हैं। CICS लेन-देन पहचानकर्ता के लिए यह पता लगाने के लिए देखती है कि अनुरोध किए गए कार्य को करने के लिए पहले कौन सा प्रोग्राम शुरू करना है। यह कार्य करने के लिए एक कार्य बनाता है, और उल्लिखित कार्यक्रम पर नियंत्रण स्थानांतरित करता है।
एक लेनदेन को कई कार्यों के माध्यम से पूरा किया जा सकता है।
एक कार्य उस डेटा को प्राप्त कर सकता है और उस टर्मिनल को डेटा भेज सकता है जिसने इसे शुरू किया था। यह फ़ाइलों को पढ़ और लिख सकता है और अन्य कार्यों को भी शुरू कर सकता है।
कार्य बनाम लेन-देन
लेन-देन और किसी कार्य के बीच का अंतर यह है कि कई उपयोगकर्ता लेनदेन को लागू कर सकते हैं, लेकिन प्रत्येक उपयोगकर्ता अपना कार्य शुरू करता है।
LUW
LUW कार्य की तार्किक इकाई के लिए खड़ा है। एलयूडब्ल्यू कहता है कि काम का एक टुकड़ा पूरी तरह से किया जाना चाहिए या बिल्कुल नहीं किया जाना चाहिए। एक कार्य में CICS में वर्क्स की कई लॉजिकल यूनिट हो सकती है। हम आगामी मॉड्यूल में इसके बारे में अधिक चर्चा करेंगे।
आवेदन
एक एप्लिकेशन कई लेनदेन बनाने के लिए तार्किक रूप से समूहीकृत कार्यक्रमों की एक श्रृंखला है, जिसका उपयोग एंड-यूज़र के लिए एक विशिष्ट कार्य को पूरा करने के लिए किया जाता है।
पहले वर्णित पांच CICS प्रणाली घटक CICS प्रणाली कार्यक्रमों का एक सुविधाजनक समूह है, जिनमें से प्रत्येक अपने स्वयं के विशेष कार्य करता है। CICS के मूल CICS Nucleus के रूप में जाना जाता है जो IBM- आपूर्ति CICS नियंत्रण कार्यक्रम और नियंत्रण तालिकाएँ शामिल हैं।
नियंत्रण कार्यक्रम
CICS नाभिक का निर्माण नियंत्रण कार्यक्रमों और इसी नियंत्रण तालिकाओं द्वारा किया जाता है। यह अद्वितीय लाभ प्रदान करता है। यह CICS प्रणाली को अत्यधिक लचीला बनाता है और इस प्रकार इसे बनाए रखना आसान होता है। CICS के महत्वपूर्ण नियंत्रण कार्यक्रम निम्नलिखित हैं -
टीसीपी
टीसीपी को टर्मिनल कंट्रोल प्रोग्राम के रूप में जाना जाता है।
टीसीपी का उपयोग टर्मिनल से संदेश प्राप्त करने के लिए किया जाता है।
यह हार्डवेयर संचार आवश्यकताओं को बनाए रखता है।
यह कार्यों को आरंभ करने के लिए CICS से अनुरोध करता है।
केसीपी
केसीपी को टास्क कंट्रोल प्रोग्राम के रूप में जाना जाता है।
केसीपी का उपयोग कार्यों के निष्पादन और इसके संबंधित गुणों को एक साथ नियंत्रित करने के लिए किया जाता है।
यह मल्टी-टास्किंग से संबंधित सभी मुद्दों को संभालता है।
पीसीपी
PCP को प्रोग्राम कंट्रोल प्रोग्राम के रूप में जाना जाता है।
पीसीपी का उपयोग निष्पादन के लिए कार्यक्रमों का पता लगाने और लोड करने के लिए किया जाता है।
यह कार्यक्रमों के बीच नियंत्रण स्थानांतरित करता है और अंत में, यह नियंत्रण वापस CICS को लौटा देता है।
FCP
FCP को फाइल कंट्रोल प्रोग्राम के रूप में जाना जाता है।
FCP का उपयोग किसी फ़ाइल में रीड, इंसर्ट, अपडेट या रिकॉर्ड हटाने जैसी सेवाओं के साथ एप्लिकेशन प्रोग्राम प्रदान करने के लिए किया जाता है।
रिकॉर्ड अपडेट के दौरान डेटा अखंडता बनाए रखने के लिए यह रिकॉर्ड पर विशेष नियंत्रण रखता है।
SCP
SCP को स्टोरेज कंट्रोल प्रोग्राम के रूप में जाना जाता है। इसका उपयोग सीआईसी क्षेत्र के भीतर भंडारण के आवंटन और निपटान को नियंत्रित करने के लिए किया जाता है।
तालिकाओं पर नियंत्रण रखें
CICS में IBM- आपूर्ति CICS नियंत्रण प्रोग्राम और टेबल होते हैं। इन तालिकाओं को CICS अनुप्रयोग कार्यक्रमों के सफल निष्पादन के लिए आवेदन की जानकारी के अनुसार अद्यतन करने की आवश्यकता है। निम्नलिखित महत्वपूर्ण नियंत्रण तालिकाएँ हैं -
TCT
TCT को टर्मिनल कंट्रोल टेबल के रूप में जाना जाता है।
जब हम CICS टर्मिनल में प्रवेश करते हैं, तो TCT तालिका में एक प्रविष्टि की जाती है।
TCT में टर्मिनल ID है जो वर्तमान CICS क्षेत्र से जुड़ा है।
टर्मिनल कंट्रोल टेबल के साथ टर्मिनल कंट्रोल प्रोग्राम टर्मिनल से आने वाले डेटा को पहचानता है।
पीसीटी
PCT को प्रोग्राम कंट्रोल टेबल के रूप में जाना जाता है।
इसमें Transaction ID (TRANSID) और संबंधित प्रोग्राम नाम या प्रोग्राम ID शामिल हैं।
PCT टेबल में TRANSID अद्वितीय है।
पीपीटी
पीपीटी को प्रोसेसिंग प्रोग्राम टेबल के रूप में जाना जाता है। PPT में प्रोग्राम का नाम या मैपसेट नाम, कार्य उपयोग काउंटर, भाषा, आकार, मुख्य भंडारण पता, लोड लाइब्रेरी पता, आदि शामिल हैं।
PPT टेबल में प्रोग्राम या मैपसेट नाम अद्वितीय है।
सीआईसी लेनदेन प्राप्त करता है और इसी कार्यक्रम का नाम पीसीटी से लेनदेन के लिए आवंटित किया जाता है। यह चेक करता है कि प्रोग्राम लोड हुआ है या नहीं। यदि इसे लोड किया जाता है, तो कार्य उपयोग काउंटर को 1 से बढ़ा दिया जाता है। यदि प्रोग्राम लोड नहीं होता है, तो प्रोग्राम पहले लोड किया जाता है और कार्य उपयोग काउंटर 1 पर सेट किया जाता है। इसे पीपीटी टेबल से लोड लाइब्रेरी एड्रेस मिलता है।
नि: शुल्क विज्ञापन
FCT को फाइल कंट्रोल टेबल के रूप में जाना जाता है।
इसमें फ़ाइल नाम, फ़ाइल प्रकार, रिकॉर्ड लंबाई आदि शामिल हैं।
CICS प्रोग्राम में उपयोग की जाने वाली सभी फाइलें FCT में घोषित की जानी चाहिए और वे CICS द्वारा ही खोली और बंद की जाती हैं।
लेन-देन
जब एक लेन-देन पहचानकर्ता TP02 CICS टर्मिनल पर दर्ज किया जाता है, तो पहले यह जाँचता है कि क्या PCT तालिका में इस लेन-देन पहचानकर्ता के साथ कोई प्रोग्राम जुड़ा हुआ है। यदि यह एक मिल जाता है, तो यह इसे निष्पादित करने के लिए कार्यक्रम का स्थान खोजने के लिए पीपीटी तालिका में जांच करता है।
यदि प्रोग्राम पहले से ही मेमोरी में उपलब्ध है, तो वह उस विशेष प्रोग्राम को निष्पादित करना शुरू कर देता है; यदि नहीं, तो यह मेमोरी को सेकेंडरी स्टोरेज से लोड करता है और फिर इसे निष्पादित करना शुरू करता है।
लेन-देन जीवन चक्र
लेन-देन जीवन चक्र के निम्नलिखित चरण हैं -
चरण 1
टर्मिनल ऑपरेटर 1 से 4 वर्ण लेनदेन-आईडी टाइप करके और ENTER कुंजी दबाकर लेनदेन शुरू करता है।
चरण 2
टीसीपी समय-समय पर इनपुट के लिए सभी टर्मिनलों की जांच करता है। जब कोई संदेश प्राप्त होता है, तो यह निम्न कार्य करता है -
TCPA बनाने के लिए SCP को निर्देश देता है।
संदेश को TIOA में रखता है।
केसीपी को नियंत्रण देता है।
चरण 3
केसीपी टीसीपी से नियंत्रण लेता है और निम्न कार्य करता है -
लेनदेन-आईडी और सुरक्षा को मान्य करता है।
कार्य नियंत्रण क्षेत्र बनाने के लिए एससीपी को निर्देश देता है।
टर्मिनल प्राथमिकता (टीसीटी में सेट), ऑपरेटर प्राथमिकता (एसएनटी में सेट) और लेनदेन प्राथमिकता (पीसीटी में सेट) के आधार पर कार्य को प्राथमिकता सौंपता है।
कार्य को प्रतीक्षा कार्यक्रमों की कतार में जोड़ता है।
प्राथमिकता के क्रम में प्रतीक्षा कार्यक्रमों को भेजती है।
पीसीपी को नियंत्रण देता है।
चरण 4
पीसीपी केसीपी से नियंत्रण लेता है और निम्न कार्य करता है -
यदि आवश्यक हो तो कार्यक्रम का पता लगाता है और इसे लोड करता है।
एप्लिकेशन प्रोग्राम पर नियंत्रण स्थानांतरित करता है।
चरण 5
एप्लिकेशन प्रोग्राम पीसीपी से नियंत्रण लेता है और निम्न कार्य करता है -
टीसीपी को संदेश को कार्यक्रम के काम करने के क्षेत्र में जगह देने का अनुरोध करता है।
अनुरोध FCP फाइलों से रिकॉर्ड प्राप्त करने के लिए।
चरण 6
FCP अनुप्रयोग प्रोग्राम से नियंत्रण लेता है और निम्न कार्य करता है -
एससीपी से एक फ़ाइल कार्य क्षेत्र का अनुरोध करता है।
केसीपी को सूचित करता है कि यह कार्य I / O पूरा होने तक प्रतीक्षा कर सकता है।
चरण 7
KCP निम्न कार्य करता है -
अगले कार्य को कतार में भेज देता है।
I / O पूर्ण होने पर पुराने कार्य को पुनः भेज देता है।
नियंत्रण को स्थानांतरित करता है FCP।
चरण 8
FCP अनुप्रयोग प्रोग्राम पर नियंत्रण लौटाता है।
चरण 9
आवेदन कार्यक्रम निम्नलिखित करता है -
फ़ाइल डेटा संसाधित करता है।
अनुरोध I / O संदेश भेजने के लिए TCP।
PCP पर नियंत्रण लौटाता है।
चरण 10
पीसीपी नियंत्रण को वापस करने के लिए केसीपी से अनुरोध करता है कि वह इस कार्य को समाप्त कर दे।
चरण 11
केसीपी एससीपी को निर्देश देता है कि वह आवंटित सभी भंडारण को कार्य (टीआईओए को छोड़कर) मुक्त करे।
चरण 12
टीसीपी निम्नलिखित कार्य करती है -
आउटपुट को टर्मिनल पर भेजता है।
TCPA जारी करने के लिए SCP का अनुरोध करता है।
CICS लेनदेन का उपयोग CICS क्षेत्र में कई कार्यों को करने के लिए किया जाता है। हम आईबीएम द्वारा आपूर्ति किए गए महत्वपूर्ण सीआईसी लेनदेन पर विस्तार से चर्चा करेंगे।
CESN
CESN को CICS Execute Sign On के नाम से जाना जाता है।
CESN का उपयोग CICS क्षेत्र में साइन इन करने के लिए किया जाता है।
हमें CICS पर लॉग इन करने के लिए CICS व्यवस्थापक द्वारा दिए गए उपयोगकर्ता-आईडी और पासवर्ड प्रदान करने की आवश्यकता है। निम्न स्क्रीनशॉट दिखाता है कि साइन-ऑन स्क्रीन कैसा दिखता है -
CEDA
CEDA को CICS Execute परिभाषा और प्रशासन के रूप में जाना जाता है। इसका उपयोग CICS प्रणाली प्रशासकों द्वारा CICS तालिका प्रविष्टियों और अन्य प्रशासन गतिविधियों को परिभाषित करने के लिए किया जाता है।
CEMT
CEMT को CICS Execute Master Terminal के नाम से जाना जाता है। इसका उपयोग CICS के वातावरण की स्थिति और अन्य सिस्टम संचालन के लिए पूछताछ और अद्यतन करने के लिए किया जाता है।
CEMT कमांड का उपयोग करके, हम लेनदेन, कार्यों, फ़ाइलों, कार्यक्रमों आदि का प्रबंधन कर सकते हैं।
सभी संभावित विकल्प प्राप्त करने के लिए, CEMT टाइप करें और ENTER दबाएँ। यह सभी विकल्पों को प्रदर्शित करेगा।
CEMT मूल रूप से CICS में एक नए प्रोग्राम को लोड करने के लिए या प्रोग्राम या मैपसेट बदलने के बाद CICS में प्रोग्राम की नई कॉपी लोड करने के लिए उपयोग किया जाता है।
उदाहरण
कोई इसे बदलने के लिए प्रदर्शित फ़ाइल की स्थिति को ओवरराइट कर सकता है। निम्न उदाहरण दिखाता है कि किसी फ़ाइल को कैसे बंद किया जाए -
CEMT ** Press ENTER & Following Screen is displayed ** STATUS: ENTER ONE OF THE FOLLOWING Inquire Perform Set ** Command to close a file ** CEMT SET FILE (file-name) CEMT I FILE (file-name)
सीसी
CECI को CICS Execute Command Interpreter के नाम से जाना जाता है। CECI का उपयोग करके कई CICS कमांड को निष्पादित किया जा सकता है।
CECI का उपयोग कमांड के सिंटैक्स की जांच करने के लिए किया जाता है। यह कमांड निष्पादित करता है, केवल तभी जब सिंटैक्स सही हो।
लॉग इन करने के बाद खाली CICS स्क्रीन पर CECI विकल्प टाइप करें। यह आपको उपलब्ध विकल्पों की सूची देता है।
उदाहरण
निम्न उदाहरण दिखाता है कि टर्मिनल पर मैप किए गए आउटपुट डेटा कैसे भेजें। हम आगामी मॉड्यूल में एमएपीएस के बारे में चर्चा करेंगे।
CECI SEND MAP (map-name) MAPSET (mapset-name) ERASE
CEDF
CEDF को CICS एक्सक्यूट डिबग फैसिलिटी के रूप में जाना जाता है। इसका उपयोग प्रोग्राम चरण दर चरण डिबगिंग के लिए किया जाता है, जो त्रुटियों को खोजने में मदद करता है।
CEDF टाइप करें और CICS क्षेत्र में एंटर दबाएँ। टर्मिनल ईडीएफ मोड में है संदेश प्रदर्शित किया जाएगा। अब ट्रांजेक्शन आईडी टाइप करें और एंटर की दबाएं। दीक्षा के बाद, प्रत्येक दर्ज कुंजी के साथ, एक पंक्ति निष्पादित होती है। किसी भी CICS कमांड को निष्पादित करने से पहले, यह उस स्क्रीन को दिखाता है जिसमें हम आगे बढ़ने से पहले मूल्यों को संशोधित कर सकते हैं।
CMAC
CMAC को एबेंड कोड के लिए CICS मैसेज के रूप में जाना जाता है। इसका उपयोग CICS Abend कोड्स के स्पष्टीकरण और कारणों को खोजने के लिए किया जाता है।
उदाहरण
उदाहरण के बाद पता चलता है कि एबेंड कोड के लिए विवरण कैसे देखें -
CMAC abend-code
CESF
CESF को CICS Execute Sign Off के नाम से जाना जाता है। इसका उपयोग CICS क्षेत्र से साइन ऑफ़ करने के लिए किया जाता है।
उदाहरण
निम्न उदाहरण दिखाता है कि सीआईसी क्षेत्र से लॉग ऑफ कैसे करें -
CESF LOGOFF
CEBR
सीईबीआर को सीआईसी एक्सक्यूट अस्थायी भंडारण ब्राउज़ के रूप में जाना जाता है। इसका उपयोग अस्थायी भंडारण कतार या TSQ की सामग्री को प्रदर्शित करने के लिए किया जाता है।
क्यूबीआर का उपयोग यह जांचने के लिए किया जाता है कि क्या कतार की वस्तुओं को ठीक से लिखा और पुनर्प्राप्त किया जा रहा है। हम आगामी मॉड्यूल में TSQ के बारे में अधिक चर्चा करेंगे।
उदाहरण
निम्नलिखित उदाहरण से पता चलता है कि CEBR कमांड को कैसे लागू करना है -
CEBR queue-id
CICS अवधारणाओं
CICS मैक्रोज़ की एक श्रृंखला निष्पादित करके प्रत्येक आदेश प्राप्त किया जा सकता है। हम कुछ बुनियादी विशेषताओं पर चर्चा करेंगे जो हमें अवधारणाओं को बेहतर ढंग से समझने में मदद करेंगे -
बहु कार्यण
ऑपरेटिंग सिस्टम की यह सुविधा एक से अधिक कार्य को समवर्ती रूप से निष्पादित करने की अनुमति देती है। कार्य एक ही कार्यक्रम साझा कर रहा है या विभिन्न कार्यक्रमों का उपयोग कर सकता है। सीआईसी अपने क्षेत्र में कार्य को निर्धारित करता है।
बहु सूत्रण
ऑपरेटिंग सिस्टम की यह सुविधा एक ही कार्यक्रम को साझा करने के लिए एक से अधिक कार्य निष्पादित करने की अनुमति देती है। मल्टी-थ्रेडिंग संभव होने के लिए, एक एप्लिकेशन प्रोग्राम होना चाहिएre-entrant program ऑपरेटिंग सिस्टम या ए के तहत quasi-reentrant सीआईसी के तहत।
पुन: entrancy
री-एंट्रेंट प्रोग्राम वह है जो स्वयं को संशोधित नहीं करता है और अपने आप में फिर से प्रवेश कर सकता है और ऑपरेटिंग सिस्टम द्वारा एक रुकावट के बाद प्रसंस्करण जारी रख सकता है।
अर्ध reentrancy
एक अर्ध-रीजेंट प्रोग्राम सीआईसी पर्यावरण के तहत एक पुनः प्रवेश कार्यक्रम है। सीआईसी प्रत्येक कार्य के लिए एक अद्वितीय भंडारण क्षेत्र प्राप्त करके फिर से प्रवेश सुनिश्चित करता है। CICS आदेशों के बीच, CICS के पास CPU संसाधनों का उपयोग करने का अनन्य अधिकार है और यह अन्य कार्यों के CICS आदेशों को निष्पादित कर सकता है।
ऐसे समय होते हैं जब कई उपयोगकर्ता समान कार्यक्रम का उपयोग कर रहे हैं; इसे हम कहते हैंmulti-threading। उदाहरण के लिए, मान लें कि 50 उपयोगकर्ता एक प्रोग्राम ए का उपयोग कर रहे हैं। यहां सीआईसी उस कार्यक्रम के लिए 50 कार्यशील भंडारण प्रदान करेगा लेकिन एक प्रक्रिया प्रभाग। और इस तकनीक के रूप में जाना जाता हैquasi-reentrancy।
मेनफ्रेम में CICS कार्यक्रम COBOL भाषा में लिखे गए हैं। हम एक साधारण COBOL-CICS कार्यक्रम लिखने के बारे में चर्चा करेंगे, इसे संकलित करेंगे, और फिर इसे निष्पादित करेंगे।
CICS कार्यक्रम
हम एक साधारण COBOL-CICS प्रोग्राम लिख रहे होंगे जो CICS आउटपुट स्क्रीन पर कुछ संदेश प्रदर्शित करता है। यह कार्यक्रम एक COBOL-CICS कार्यक्रम को क्रियान्वित करने में शामिल कदमों का प्रदर्शन करना है। एक साधारण कार्यक्रम को कोड करने के लिए निम्नलिखित चरण हैं -
चरण 1
मेनफ्रेम में लॉगिन करें और एक TSO सत्र खोलें।
चरण 2
एक नया पीडीएस बनाएं जिसमें हम अपने प्रोग्राम को कोडिंग करेंगे।
चरण 3
पीडीएस के अंदर एक नया सदस्य बनाएं और निम्नलिखित कार्यक्रम को कोड करें -
IDENTIFICATION DIVISION. PROGRAM-ID. HELLO. DATA DIVISION. FILE SECTION. WORKING-STORAGE SECTION. 01 WS-MESSAGE PIC X(40). 01 WS-LENGTH PIC S9(4) COMP. PROCEDURE DIVISION. A000-MAIN-PARA. MOVE 'Hello World' TO WS-MESSAGE MOVE '+12' TO WS-LENGTH EXEC CICS SEND TEXT FROM (WS-MESSAGE) LENGHT(WS-LENGTH) END-EXEC EXEC CICS RETURN END-EXEC.
चरण 4
कार्यक्रम को कोड करने के बाद, हमें इसे संकलित करने की आवश्यकता है। हम निम्नलिखित JCL का उपयोग करके कार्यक्रम को संकलित कर सकते हैं -
//SAMPLE JOB(TESTJCL,XXXXXX),CLASS = A,MSGCLASS = C //CICSCOB EXEC CICSCOB, //COPYLIB = ABC.XYZ.COPYLIB, //LOADLIB = ABC.XYZ.LOADLIB //LIB JCLLIB ORDER = CICSXXX.CICS.XXXPROC //CPLSTP EXEC DFHEITVL //TRN.SYSIN DD DSN = ABC.XYZ.PDS(HELLO),DISP = SHR //LKED.SYSIN DD * NAME HELLO(R) //
चरण 5
CICS सत्र खोलें।
चरण 6
अब हम निम्नलिखित कमांड का उपयोग करके प्रोग्राम इंस्टॉल करेंगे -
CEMT SET PROG(HELLO) NEW.
चरण 7
संबंधित लेनदेन-आईडी का उपयोग करके कार्यक्रम निष्पादित करें। लेन-देन-आईडी प्रशासक द्वारा प्रदान की जाती है। यह निम्न आउटपुट दिखाएगा -
कार्यक्रम संकलन
निम्नलिखित फ़्लोचार्ट एक COBOL-CICS कार्यक्रम को संकलित करने में उपयोग किए गए चरणों को दर्शाता है -
अनुवादक
एक अनुवादक का कार्य सीआईसी कमांड में वाक्यविन्यास त्रुटियों की जांच करना है। यह उन्हें समकक्ष COBOL कथनों में अनुवाद करता है।
संकलक
एक संकलक का कार्य COBOL कॉपी किताबों का विस्तार करना है। यह सिंटैक्स त्रुटियों के लिए स्रोत कोड की जांच करने के बाद कोड को संकलित करता है।
लिंकेज संपादक
लिंकेज एडिटर का कार्य एकल लोड मॉड्यूल बनाने के लिए विभिन्न ऑब्जेक्ट मॉड्यूल को लिंक करना है।
BMS को बेसिक मैपिंग सपोर्ट के रूप में जाना जाता है। एक एप्लिकेशन में स्वरूपित स्क्रीन होते हैं जो टर्मिनल और सीआईसी कार्यक्रमों के बीच एक पुल के रूप में कार्य करते हैं। टर्मिनल और CICS कार्यक्रमों के बीच होने वाले संचार के लिए, हम CICS टर्मिनल इनपुट / आउटपुट सेवाओं का उपयोग करते हैं। हम उचित पदों और विशेषताओं के साथ स्क्रीन डिज़ाइन बनाने के लिए BMS का उपयोग करते हैं। बीएमएस के कार्य निम्नलिखित हैं -
BMS टर्मिनल और CICS कार्यक्रमों के बीच एक इंटरफेस के रूप में कार्य करता है।
स्क्रीन का डिज़ाइन और प्रारूप एप्लिकेशन के तर्क से अलग है।
BMS एप्लिकेशन हार्डवेयर को स्वतंत्र बनाता है।
स्वरूपित स्क्रीन
नीचे दिखाई गई स्क्रीन एक मेनू स्क्रीन है और इसे BMS का उपयोग करके डिज़ाइन किया जा सकता है। इसके प्रमुख बिंदु इस प्रकार हैं -
स्क्रीन का शीर्षक, दिनांक और कोई भी अन्य जानकारी हो सकती है जिसे प्रदर्शित किया जाना है।
विकल्प 1, 2 और 3 स्क्रीन फ़ील्ड के शीर्षक हैं।
चयन क्षेत्र में, हमें इनपुट प्रदान करना होगा। इस इनपुट को फिर आगे की प्रक्रिया के लिए CICS कार्यक्रम में भेजा जाता है।
स्क्रीन के निचले भाग में, एक्शन कुंजियाँ प्रदर्शित होती हैं।
सभी क्षेत्रों और स्क्रीन को स्वयं BMS मैक्रोज़ के साथ परिभाषित किया गया है। जब पूरा नक्शा परिभाषित किया जाता है, तो हम इसे इकट्ठा करने के लिए JCL का उपयोग कर सकते हैं।
बीएमएस के मूल नियम
निम्नलिखित बुनियादी शब्द हैं जिनका उपयोग हम आगामी मॉड्यूल में करेंगे -
नक्शा
मानचित्र एक एकल स्क्रीन प्रारूप है जिसे BMS मैक्रोज़ का उपयोग करके डिज़ाइन किया जा सकता है। इसमें 1 से 7 वर्ण वाले नाम हो सकते हैं।
Mapset
मैपसेट उन मानचित्रों का एक संग्रह है जो एक लोड मॉड्यूल बनाने के लिए एक साथ जुड़े हुए हैं। इसमें PPT एंट्री होनी चाहिए। इसमें 1 से 7 वर्णों के नाम हो सकते हैं।
बीएमएस मैक्रों
बीएमएस मानचित्र एक कार्यक्रम है जो स्क्रीन को प्रबंधित करने के लिए असेंबली भाषा में लिखा जाता है। स्क्रीन को परिभाषित करने के लिए उपयोग किए जाने वाले तीन मैक्रोज़ DFHMSD, DFHMDI और DFHMDF हैं।
DFHMSD
DFHMSD मैक्रो मैपसेट परिभाषा उत्पन्न करता है। यह मैक्रो आइडेंटिफायर है जो दिखाता है कि हम एक मैपसेट शुरू कर रहे हैं। मैपसेट नाम लोड मॉड्यूल नाम है और पीपीटी तालिका में एक प्रविष्टि मौजूद होनी चाहिए। निम्न तालिका उन मापदंडों की सूची दिखाती है जिनका उपयोग DFHMSD में किया जा सकता है -
अनु क्रमांक पैरामीटर और विवरण 1 TYPE
TYPE का उपयोग मानचित्र प्रकार को परिभाषित करने के लिए किया जाता है। यदि TYPE =
MAP - भौतिक मानचित्र
DSECT - प्रतीकात्मक मानचित्र बनाया जाता है
और & SYSPARM - भौतिक और प्रतीकात्मक, दोनों को
अंतिम बनाया जाता है - एक मैपसेट कोडिंग के अंत को इंगित करने के लिए।2 MODE
MODE का उपयोग इनपुट / आउटपुट संचालन को इंगित करने के लिए किया जाता है। IF MODE =
IN - केवल इनपुट मैप के
लिए OUT - आउटपुट मैप के लिए केवल IN
इनपुट और आउटपुट मैप दोनों के लिए3 LANG
LANG = ASM / COBOL / PL1
यह एप्लिकेशन प्रोग्राम में कॉपी करने के लिए DSECT संरचना की भाषा तय करता है।4 STORAGE
यदि स्टोरेज =
ऑटो - प्रत्येक मैपसेट के लिए एक अलग प्रतीकात्मक मानचित्र क्षेत्र प्राप्त करने के लिए
आधार - एक से अधिक मैपसेट के प्रतीकात्मक नक्शे के लिए एक ही भंडारण आधार है5 CTRL
CRTL का उपयोग डिवाइस नियंत्रण अनुरोधों को परिभाषित करने के लिए किया जाता है। यदि CTRL =
FREEKB - कीबोर्ड को अनलॉक करने के लिए
FRSET - को जीरो स्टेटस पर MDT रीसेट करने के लिए
अलार्म - स्क्रीन डिस्प्ले टाइम पर अलार्म सेट करने के लिए
PRINT - प्रिंटर को भेजे जाने वाले मैपसेट को इंगित करने के लिए।6 TERM
TERM = प्रकार डिवाइस की स्वतंत्रता सुनिश्चित करता है, यदि आवश्यक हो तो 3270 से अधिक टर्मिनल का उपयोग किया जा रहा है।
7 TIOAPFX
TIOAPFX = YES / NO
YES - TIOAP को ठीक से एक्सेस करने के लिए BMS कमांड के लिए उपसर्ग स्थान (12 बाइट्स) आरक्षित करना। CICS कमांड स्तर के लिए आवश्यक है।उदाहरण
निम्नलिखित उदाहरण से पता चलता है कि मैपसेट परिभाषा को कैसे कोड किया जाए -
MPST01 DFHMSD TYPE = &SYSPARM, X CTRL = (FREEKB,FRSET), X LANG = COBOL, X STORAGE = AUTO, X TIOAPFX = YES, X MODE = INOUT, X TERM = 3270 DFHMSD TYPE = FINAL END
DFHMDI
DFHMDI मैक्रो मानचित्र परिभाषाएँ उत्पन्न करता है। यह दर्शाता है कि हम एक नया नक्शा शुरू कर रहे हैं। Mapname DFHMDI मैक्रो द्वारा पीछा किया जाता है। Mapname का उपयोग मैप्स भेजने या प्राप्त करने के लिए किया जाता है। निम्न तालिका उन मापदंडों को दर्शाती है, जिनका उपयोग हम DFHMDI मैक्रो के अंदर करते हैं -
अनु क्रमांक पैरामीटर और विवरण 1 SIZE
SIZE = (रेखा, स्तंभ)
यह पैरामीटर मानचित्र का आकार देता है। बीएमएस हमें कई मानचित्रों का उपयोग करके एक स्क्रीन बनाने की अनुमति देता है, और यह पैरामीटर तब महत्वपूर्ण हो जाता है जब हम एक ही नक्शे में एक से अधिक मानचित्रों का उपयोग कर रहे होते हैं।2 LINE
यह नक्शे की शुरुआती लाइन संख्या को इंगित करता है।
3 COLUMN
यह नक्शे के शुरुआती कॉलम नंबर को इंगित करता है।
4 JUSTIFY
इसका उपयोग पूरे मानचित्र या मानचित्र क्षेत्रों को बाईं या दाईं ओर निर्दिष्ट करने के लिए किया जाता है।
5 CTRL
CRTL का उपयोग डिवाइस नियंत्रण अनुरोधों को परिभाषित करने के लिए किया जाता है। यदि CTRL =
FREEKB - कीबोर्ड को अनलॉक करने के लिए
FRSET - को MDT को शून्य स्थिति में रीसेट करना
अलार्म - स्क्रीन डिस्प्ले समय पर अलार्म सेट करने के लिए
प्रिंट करें - प्रिंटर को भेजे जाने वाले नक्शे को इंगित करने के लिए6 TIOAPFX
TIOAPFX = हाँ / नहीं
YES - TIOA को ठीक से उपयोग करने के लिए BMS कमांड के लिए उपसर्ग स्थान (12 बाइट्स) को आरक्षित करने के लिए। CICS कमांड स्तर के लिए आवश्यक है।
उदाहरण
निम्नलिखित उदाहरण से पता चलता है कि मानचित्र की परिभाषा को कैसे कोड किया जाए -
MAPSTD DFHMDI SIZE = (20,80), X LINE = 01, X COLUMN = 01, X CTRL = (FREEKB,FRSET)
DFHMDF
DFHMDF मैक्रो का उपयोग फ़ील्ड नामों को परिभाषित करने के लिए किया जाता है। फ़ील्ड नाम का उल्लेख किया गया है जिसके विरुद्ध DFHMDF मैक्रो कोडित है। इस फ़ील्ड नाम का उपयोग प्रोग्राम के अंदर किया जाता है। हम निरंतर क्षेत्र के खिलाफ फ़ील्ड नाम नहीं लिखते हैं जिसे हम प्रोग्राम के अंदर उपयोग नहीं करना चाहते हैं। निम्न तालिका उन मापदंडों की सूची दिखाती है जिनका उपयोग DFHMDF मैक्रो के अंदर किया जा सकता है -
अनु क्रमांक पैरामीटर और विवरण 1 POS
यह स्क्रीन पर स्थिति है जहां फ़ील्ड दिखाई देनी चाहिए। एक फ़ील्ड इसकी विशेषता बाइट से शुरू होती है, इसलिए यदि आप POS = (1,1) को कोड करते हैं, तो उस फ़ील्ड के लिए विशेषता बाइट स्तंभ 1 में पंक्ति 1 पर है, और वास्तविक डेटा स्तंभ 2 में शुरू होता है।
2 LENGTH
यह फ़ील्ड की लंबाई है, विशेषता बाइट की गिनती नहीं।
3 INITIAL
यह आउटपुट फ़ील्ड के लिए वर्ण डेटा है। हम स्क्रीन के लिए लेबल और शीर्षक निर्दिष्ट करने और उन्हें कार्यक्रम से स्वतंत्र रखने के लिए इसका उपयोग करते हैं। मेनू स्क्रीन में पहले क्षेत्र के लिए, उदाहरण के लिए, हम कोड देंगे: INITIAL = 'MENU'।
4 JUSTIFY
इसका उपयोग पूरे मानचित्र या मानचित्र क्षेत्रों को बाईं या दाईं ओर निर्दिष्ट करने के लिए किया जाता है।
5 ATTRB
ATTRB = (ASKIP / PROT / UNPROT, NUM, BRT / NORM / DRK, IC, FSET) यह क्षेत्र की विशेषताओं का वर्णन करता है।
ASKIP - ऑटोसिप। इस क्षेत्र में डेटा दर्ज नहीं किया जा सकता है। कर्सर अगले फ़ील्ड पर जाता है।
PROT - संरक्षित क्षेत्र। इस क्षेत्र में डेटा दर्ज नहीं किया जा सकता है। यदि डेटा दर्ज किया गया है, तो यह इनपुट-अवरोध स्थिति का कारण होगा।
UNPROT - असुरक्षित क्षेत्र। डेटा दर्ज किया जा सकता है और यह सभी इनपुट क्षेत्रों के लिए उपयोग किया जाता है।
NUM - संख्यात्मक क्षेत्र। केवल संख्या (0 से 9) और विशेष वर्ण ('।' और '-') की अनुमति है।
BRT - एक क्षेत्र का उज्ज्वल प्रदर्शन (हाइलाइट)।
नोर्म - सामान्य प्रदर्शन।
DRK - डार्क डिस्प्ले।
आईसी - कर्सर डालें। इस क्षेत्र में कर्सर तैनात किया जाएगा। मामले में, आईसी को एक से अधिक बार निर्दिष्ट किया जाता है, कर्सर को अंतिम क्षेत्र में रखा जाता है।
एफएसईटी - फील्ड सेट। MDT सेट किया गया है ताकि फ़ील्ड डेटा को टर्मिनल से होस्ट कंप्यूटर पर भेजा जाए, भले ही उपयोगकर्ता द्वारा फ़ील्ड को वास्तव में संशोधित किया गया हो।
6 PICIN
PICIN डेटा फ़ील्ड पर लागू होता है जो PICIN = 9 (8) जैसे इनपुट के रूप में उपयोग किया जाता है।
7 PICOUT
PICIN डेटा फ़ील्ड पर लागू होता है जिसका उपयोग PICOUT = Z (8) जैसे आउटपुट के रूप में किया जाता है।
उदाहरण
निम्नलिखित उदाहरण से पता चलता है कि फ़ील्ड परिभाषा को कैसे कोड किया जाए -
DFHMDF POS = (01,01), X LENGTH = 7, X INITIAL = ‘SCREEN1’, X ATTRB = (PROT,NORM) STDID DFHMDF POS = (01,70), X LENGTH = 08, X ATTRB = (PROT,NORM)
बीएमएस उपयोगकर्ता द्वारा दर्ज किए गए डेटा को प्राप्त करता है और फिर इसे एक प्रतीकात्मक मानचित्र क्षेत्र में प्रारूपित करता है। एप्लिकेशन प्रोग्राम में केवल प्रतीकात्मक मानचित्र में मौजूद डेटा तक पहुंच है। एप्लिकेशन प्रोग्राम डेटा को संसाधित करता है और आउटपुट को प्रतीकात्मक मानचित्र पर भेजा जाता है। BMS भौतिक मानचित्र के साथ प्रतीकात्मक डेटा के उत्पादन को मर्ज करेगा।
भौतिक मानचित्र
फिजिकल मैप लोड लाइब्रेरी में एक लोड मॉड्यूल है जिसमें इस बारे में जानकारी होती है कि मैप को कैसे प्रदर्शित किया जाना चाहिए।
इसमें मानचित्र के सभी क्षेत्रों की विशेषताओं और उनके पदों के बारे में विवरण है।
इसमें दिए गए टर्मिनल के लिए मानचित्र का प्रदर्शन प्रारूप है।
यह BMS मैक्रोज़ का उपयोग करके कोडित किया गया है। इसे अलग से इकट्ठा किया जाता है और CICS लाइब्रेरी में संपादित किया जाता है।
प्रतीकात्मक नक्शा
लाइब्रेरी में एक प्रतीकात्मक मानचित्र एक कॉपी बुक है। कॉपी बुक का उपयोग CICS एप्लिकेशन प्रोग्राम द्वारा टर्मिनल से डेटा भेजने और प्राप्त करने के लिए किया जाता है।
इसमें वे सभी चर डेटा होते हैं जो प्रोग्राम के कार्यक्षेत्र अनुभाग में कॉपी किए जाते हैं।
इसके सभी नामित क्षेत्र हैं। एप्लिकेशन प्रोग्रामर इन फ़ील्ड्स का उपयोग मैप में डेटा पढ़ने और लिखने के लिए करता है।
स्किपर और स्टॉपर फ़ील्ड
एक असुरक्षित नाम वाले फ़ील्ड के लिए, एक मानचित्र में, यदि हमने 10 की लंबाई निर्दिष्ट की है, तो इसका मतलब है कि नाम फ़ील्ड मान ले सकता है जिसकी लंबाई 10. से अधिक नहीं हो सकती है, लेकिन जब आप सीआईसी का उपयोग करके इस मानचित्र को प्रदर्शित करते हैं और इस क्षेत्र के लिए मान दर्ज करना शुरू करते हैं स्क्रीन, हम स्क्रीन के अंत तक 10 से अधिक वर्णों को दर्ज कर सकते हैं, और हम अगली पंक्ति में भी प्रवेश कर सकते हैं। इसे रोकने के लिए, हम स्किपर फ़ील्ड या स्टॉपर फ़ील्ड का उपयोग करते हैं। एक स्किपर फ़ील्ड आम तौर पर लंबाई 1 का क्षेत्र होगा, जिसका नाम फ़ील्ड के बाद निर्दिष्ट किया जाता है।
स्किपर फील्ड
यदि हम असुरक्षित क्षेत्र के नाम पर एक स्किपर फ़ील्ड रखते हैं, तो मान दर्ज करते समय, एक बार निर्दिष्ट लंबाई पूरी हो जाने के बाद, कर्सर स्वचालित रूप से अगले असुरक्षित फ़ील्ड की स्थिति में आ जाएगा। निम्नलिखित उदाहरण दिखाता है कि कैसे एक स्किपर फ़ील्ड को जोड़ा जाए -
NUMBER DFHMDF POS = (01,01), X LENGTH = 5, X ATTRB = (UNPROT,IC) DFHMDF POS = (01,07), X LENGTH = 1, X ATTRB = (ASKIP)
स्टॉपर फील्ड
यदि हम नामांकित क्षेत्र के बाद एक स्टॉपर फ़ील्ड रखते हैं, तो मान दर्ज करते समय, एक बार निर्दिष्ट लंबाई तक पहुंचने के बाद, कर्सर अपनी स्थिति को रोक देगा। निम्न उदाहरण दिखाता है कि एक स्टॉपर फ़ील्ड कैसे जोड़ा जाए -
NUMBER DFHMDF POS = (01,01), X LENGTH = 5, X ATTRB = (UNPROT,IC) DFHMDF POS = (01,07), X LENGTH = 1, X ATTRB = (PROT)
बाइट अटेंड करें
किसी भी फ़ील्ड की विशेषता बाइट फ़ील्ड के भौतिक गुणों के बारे में जानकारी संग्रहीत करती है। निम्नलिखित आरेख और तालिका प्रत्येक बिट के महत्व को समझाती है।
बिट स्थिति विवरण बिट सेटिंग्स 0 और 1 बिट 2 से 7 की सामग्री द्वारा निर्धारित 2 और 3 संरक्षण और बदलाव 00 - असुरक्षित अल्फ़ान्यूमेरिक
01 - असुरक्षित न्यूमेरिक
10 - संरक्षित स्टॉप
11 - संरक्षित छोड़ें4 और 5 तीव्रता 00 - सामान्य
01 - सामान्य
10 - उज्ज्वल
11 - नो-डिस्प्ले (डार्क)6 हमेशा शून्य होना चाहिए 7 संशोधित डेटा टैग 0 - फ़ील्ड को संशोधित नहीं किया गया है
1 - फ़ील्ड को संशोधित किया गया हैसंशोधित डेटा टैग
संशोधित डेटा टैग (MDT) विशेषता बाइट में अंतिम बिट है।
MDT एक ध्वज है जो एक सा होता है। यह निर्दिष्ट करता है कि मान सिस्टम में स्थानांतरित किया जाना है या नहीं।
फ़ील्ड मान में परिवर्तन होने पर इसका डिफ़ॉल्ट मान 1 होता है।
यदि MDT 0 है, तो डेटा स्थानांतरित नहीं किया जा सकता है; और यदि एमडीटी 1 है, तो डेटा स्थानांतरित किया जा सकता है।
मानचित्र भेजें
टर्मिनल पर भेजे गए मैप कमांड कमांड फॉर्मैटेड आउटपुट लिखते हैं। इसका उपयोग एप्लिकेशन प्रोग्राम से मैप को टर्मिनल पर भेजने के लिए किया जाता है। निम्नलिखित कोड खंड दिखाता है कि टर्मिनल को नक्शा कैसे भेजें -
EXEC CICS SEND MAP('map-name') MAPSET('mapset-name') [FROM(data-area)] [LENGTH(data_value)] [DATAONLY] [MAPONLY] [CURSOR] [ERASE/ERASEAUP] [FREEKB] [FRSET] END-EXEC
निम्न तालिका उनके महत्व के साथ एक भेजने के नक्शे कमान में इस्तेमाल मापदंडों को सूचीबद्ध करती है।
अनु क्रमांक पैरामीटर और विवरण 1 Map-name
यह मानचित्र का नाम है जिसे हम भेजना चाहते हैं। यह जरूरी है।
2 Mapset-name
यह मैप सेट का नाम है जिसमें मैपनाम शामिल है। मैपसेट नाम की आवश्यकता तब तक होती है जब तक कि यह मैप नाम के समान न हो।
3 FROM
इसका उपयोग तब किया जाता है जब हमने एक अलग DSECT नाम का उपयोग करने का निर्णय लिया है, हमें SEND MAP कमांड के साथ FROM (dsect-name) विकल्प का उपयोग करना चाहिए।
4 MAPONLY
इसका मतलब है कि आपके प्रोग्राम के किसी भी डेटा को मैप में मर्ज नहीं किया जाना है और केवल मैप में सूचना प्रसारित की जाती है।
5 DATAONLY
यह MAPONLY का तार्किक विपरीत है। हम इसका उपयोग चर डेटा को पहले से बनाए गए डिस्प्ले में संशोधित करने के लिए करते हैं। केवल आपके प्रोग्राम का डेटा स्क्रीन पर भेजा जाता है। मानचित्र में स्थिरांक नहीं भेजे जाते हैं।
6 ERASE
यह पूरी स्क्रीन को मिटा देता है इससे पहले कि हम भेज रहे हैं जो दिखाया गया है।
7 ERASEUP
यह केवल असुरक्षित क्षेत्रों को मिटाने का कारण बनता है।
8 FRSET
फ़्लैट रीसेट स्क्रीन पर सभी फ़ील्ड के लिए विशेषता बाइट में संशोधित डेटा टैग को बंद कर देता है इससे पहले कि आप जो भेज रहे हैं उसे वहां रखा गया है।
9 CURSOR
इसका उपयोग टर्मिनल स्क्रीन पर कर्सर की स्थिति के लिए किया जा सकता है। -1 को क्षेत्र के L भाग में ले जाकर और फिर मैप भेजकर कर्सर को सेट किया जा सकता है।
10 ALARM
इससे श्रव्य अलार्म बजने लगता है।
1 1 FREEKB.
यदि हम मैप या SEND कमांड में FREEKB निर्दिष्ट करते हैं, तो कीबोर्ड अनलॉक हो जाता है।
12 PRINT
यह SEND कमांड के आउटपुट को प्रिंटर पर प्रिंट करने की अनुमति देता है।
13 FORMFEED
यह प्रिंटर को प्रिंट होने से पहले अगले पृष्ठ के शीर्ष पर कागज को पुनर्स्थापित करने का कारण बनता है।
नक्शा प्राप्त करें
जब हम किसी टर्मिनल से इनपुट प्राप्त करना चाहते हैं, तो हम RECEIVE MAP कमांड का उपयोग करते हैं। MAP और MAPSET पैरामीटर्स का समान अर्थ SAP MAP कमांड के लिए है। निम्नलिखित कोड खंड दिखाता है कि नक्शा कैसे प्राप्त करें -
EXEC CICS RECEIVE MAP('map-name') MAPSET('mapset-name') [INTO(data-area)] [FROM(data-area)] [LENGTH(data_value)] END-EXEC
मैपसेट निष्पादन
मैपसेट को विकसित करने और निष्पादित करने के लिए निम्नलिखित कदम आवश्यक हैं -
Step 1 - एक TSO सत्र खोलें।
Step 2 - एक नया पीडीएस बनाएं।
Step 3 - आवश्यकता के अनुसार एक नए सदस्य में एक मैपसेट कोड।
Step 4 - सीआईसी प्रशासक द्वारा प्रदान की गई जेसीएल का उपयोग करके मैपसेट को इकट्ठा करें।
Step 5 - एक CICS सत्र खोलें।
Step 6 - कमांड का उपयोग करके प्रोग्राम इंस्टॉल करें -
CEMT सेट PROG (मैपसेट-नाम) NEW
Step 7 - टर्मिनल पर नक्शा भेजने के लिए निम्नलिखित कमांड टाइप करें -
CECI SAP MAP (मैप-नेम) MAPSET (मैपसेट-नेम) ERASE FREEKB
किसी भी एप्लिकेशन प्रोग्राम को CICS के साथ बातचीत करने के लिए एक इंटरफ़ेस की आवश्यकता होगी। EIB (Execute Interface Block) अनुप्रयोग प्रोग्राम को CICS के साथ संवाद करने की अनुमति देने के लिए एक इंटरफ़ेस के रूप में कार्य करता है। ईआईबी में एक कार्यक्रम के निष्पादन के दौरान आवश्यक जानकारी होती है।
प्रतिबंधित COBOL Verbs
CICS प्रोग्राम को कोड करते समय, हम उन कमांड्स का उपयोग नहीं कर सकते जो एमवीएस पर सीधे नियंत्रण लौटाते हैं। यदि हम इन COBOL क्रियाओं को कोड करते हैं, तो यह कोई संकलन त्रुटि नहीं देगी, लेकिन हमें अप्रत्याशित परिणाम मिल सकते हैं। निम्नलिखित COBOL क्रियाएं हैं जिनका उपयोग CICS कार्यक्रम में नहीं किया जाना चाहिए -
फ़ाइल I / O स्टेटमेंट जैसे ओपन, रीड, राइट, रिवाइराइट, क्लोज, डिलीट और स्टार्ट। CICS की सभी फ़ाइल I / O को फ़ाइल नियंत्रण मॉड्यूल द्वारा नियंत्रित किया जाता है और उनके पास READ, WRITE, REWRITE और DELETE जैसे कथनों का अपना सेट होता है, जिसकी चर्चा हम आगामी मॉड्यूल में करेंगे।
फ़ाइल अनुभाग और पर्यावरण प्रभाग की आवश्यकता नहीं है।
COBOL कथन जो ऑपरेटिंग सिस्टम फ़ंक्शंस को स्वीकार करते हैं, जैसे कि स्वीकार, दिनांक / समय का उपयोग नहीं किया जा सकता।
DISPLAY, MERGE, STOP RUN और GO BACK का उपयोग न करें।
इंटरफ़ेस ब्लॉक निष्पादित करें
निष्पादित इंटरफ़ेस ब्लॉक (EIB) एक नियंत्रण खंड है जो हर कार्यक्रम के लिए CICS द्वारा स्वचालित रूप से लोड किया जाता है।
EIB किसी कार्य के लिए अद्वितीय है और यह कार्य की अवधि के लिए मौजूद है। इसमें कार्य से संबंधित सिस्टम संबंधी जानकारी का एक सेट होता है।
इसमें लेन-देन पहचानकर्ता, समय, दिनांक आदि के बारे में जानकारी होती है, जिसका उपयोग CICS द्वारा एक एप्लिकेशन प्रोग्राम के निष्पादन के दौरान किया जाता है।
प्रत्येक प्रोग्राम जो कार्य के एक भाग के रूप में निष्पादित होता है, उसी EIB तक पहुँच प्राप्त करता है।
EIB रनटाइम में डेटा CEDF मोड में प्रोग्राम को निष्पादित करके देखा जा सकता है।
ईआईबी फील्ड्स
निम्न तालिका उन क्षेत्रों की सूची प्रदान करती है जो EIB में मौजूद हैं -
EIB फ़ील्ड तस्वीर का खंड विवरण EIBAID एक्स (1) सहायता कुंजी दबाया EIBCALEN S9 (4) COMP इसमें DFHCOMMAREA की लंबाई है EIBDATE S9 (7) COMP-3 इसमें करंट सिस्टम डेट शामिल है EIBRCODE एक्स (6) इसमें अंतिम लेनदेन का रिटर्न कोड होता है EIBTASKN S9 (7) COMP-3 इसमें टास्क नंबर होता है EIBTIME S9 (7) COMP-3 इसमें करंट सिस्टम टाइम होता है EIBTRMID एक्स (4) टर्मिनल आइडेंटिफ़ायर EIBTRNID एक्स (4) लेन-देन पहचानकर्ता CICS कार्यक्रम का वर्गीकरण
CICS कार्यक्रम को निम्नलिखित तीन श्रेणियों में वर्गीकृत किया गया है, जिन पर हम एक-एक करके चर्चा करेंगे -
- गैर-संवादी कार्यक्रम
- संवादी कार्यक्रम
- छद्म-संवादी कार्यक्रम - हम अगले मॉड्यूल में चर्चा करेंगे
गैर संवादी कार्यक्रम
गैर-संवादी कार्यक्रमों को निष्पादित करते समय, किसी भी मानवीय हस्तक्षेप की आवश्यकता नहीं होती है। कार्यक्रम शुरू होने पर सभी आवश्यक इनपुट प्रदान किए जाते हैं।
वे बैच प्रोग्राम के समान हैं जो बैच मोड में चलते हैं। इसलिए सीआईसी में, वे शायद ही कभी विकसित होते हैं।
हम कह सकते हैं कि उनका उपयोग समय के नियमित अंतराल पर स्क्रीन के अनुक्रम को प्रदर्शित करने के लिए किया जाता है।
उदाहरण
निम्न उदाहरण एक गैर-संवादात्मक कार्यक्रम दिखाता है, जो आउटपुट के रूप में सीआईसी टर्मिनल पर "हेलो वर्ल्ड" प्रदर्शित करेगा।
IDENTIFICATION DIVISION. PROGRAM-ID. HELLO. DATA DIVISION. WORKING-STORAGE SECTION. 01 WS-MESSAGE PIC X(30). PROCEDURE DIVISION. ******************************************************** * SENDING DATA TO SCREEN * ******************************************************** MOVE 'HELLO WORLD' TO WS-MESSAGE EXEC CICS SEND TEXT FROM (WS-MESSAGE) END-EXEC ******************************************************** * TASK TERMINATES WITHOUT ANY INTERACTION FROM THE USER* ******************************************************** EXEC CICS RETURN END-EXEC.
संवादी कार्यक्रम
टर्मिनल को एक संदेश भेजना और उपयोगकर्ता से प्रतिक्रिया प्राप्त करना कहा जाता है conversation। एक ऑनलाइन एप्लिकेशन SEND और RECEIVE कमांड की एक जोड़ी द्वारा उपयोगकर्ता और एप्लिकेशन प्रोग्राम के बीच एक वार्तालाप प्राप्त करता है। एक संवादी कार्यक्रम के प्रमुख बिंदु इस प्रकार हैं -
सिस्टम स्क्रीन पर एक संदेश भेजता है और उपयोगकर्ता की प्रतिक्रिया का इंतजार करता है।
उपयोगकर्ता द्वारा प्रतिक्रिया देने के लिए लिया गया समय के रूप में जाना जाता है Think Time। यह समय काफी अधिक है, जो संवादी कार्यक्रमों का एक प्रमुख दोष है।
उपयोगकर्ता आवश्यक इनपुट प्रदान करता है और AID कुंजी दबाता है।
एप्लिकेशन उपयोगकर्ता के इनपुट को संसाधित करता है और आउटपुट भेजता है।
कार्यक्रम को शुरुआत में मुख्य भंडारण में लोड किया जाता है और कार्य समाप्त होने तक इसे बरकरार रखा जाता है।
उदाहरण
निम्न उदाहरण एक रूपांतरण कार्यक्रम दिखाता है जो उपयोगकर्ता से इनपुट लेता है और फिर CICS टर्मिनल पर आउटपुट के रूप में एक ही इनपुट प्रदर्शित करता है -
IDENTIFICATION DIVISION. PROGRAM-ID. HELLO. DATA DIVISION. WORKING-STORAGE SECTION. 01 WS-MESSAGE PIC X(30) VALUE SPACES. PROCEDURE DIVISION. MOVE 'ENTER MESSAGE' TO WS-MESSAGE ******************************************************** * SENDING DATA FROM PROGRAM TO SCREEN * ******************************************************** EXEC CICS SEND TEXT FROM (WS-MESSAGE) END-EXEC ******************************************************** * GETTING INPUT FROM USER * ******************************************************** EXEC CICS RECEIVE INTO(WS-MESSAGE) END-EXEC EXEC CICS SEND TEXT FROM (WS-MESSAGE) END-EXEC ******************************************************** * COMMAND TO TERMINATE THE TRANSACTION * ******************************************************** EXEC CICS RETURN END-EXEC.
अब तक, हमने गैर-रूपांतरण और रूपांतरण कार्यक्रम कवर किए हैं। रूपांतरण कार्यक्रमों में उनकी एक बड़ी खामी हैthink timeकाफी अधिक है। इस समस्या को दूर करने के लिए, छद्म रूपांतरण प्रोग्रामिंग चित्र में आया। अब हम छद्म रूपांतरण कार्यक्रमों के बारे में अधिक चर्चा करेंगे।
छद्म रूपांतरण कार्यक्रम
निम्नलिखित घटनाओं का क्रम है जो छद्म रूपांतरण कार्यक्रम में होता है -
Step 1 - सिस्टम स्क्रीन पर एक संदेश भेजता है और लेनदेन को समाप्त करता है, उपयोगकर्ता इनपुट प्राप्त होने पर लेनदेन को शुरू करने के लिए निर्दिष्ट करता है।
Step 2- सिस्टम इस लेनदेन द्वारा उपयोग किए गए संसाधनों को सिस्टम में चल रहे अन्य लेनदेन के लिए आवंटित करता है। इसलिए हम छद्म रूपांतरण कार्यक्रम में संसाधनों का उपयोग तब तक कर सकते हैं जब तक उपयोगकर्ता इनपुट नहीं देता।
Step 3- सिस्टम समय के नियमित अंतराल पर टर्मिनल इनपुट को पोल करता है। जब इनपुट प्राप्त होता है, तो इसे संसाधित किया जाता है और आउटपुट प्रदर्शित किया जाता है।
Step 4 - आवेदन कार्यक्रम को मुख्य भंडारण में लोड किया जाता है जब जरूरत होती है और उपयोग में नहीं होने पर जारी किया जाता है।
छद्म रूपांतरण तकनीक
छद्म वार्तालाप में ध्यान देने योग्य महत्वपूर्ण बिंदु हर कार्य के बीच डेटा का गुजरना है। हम डेटा पास करने की तकनीकों के बारे में चर्चा करेंगे।
COMMAREA
COMMAREA को संचार क्षेत्र के रूप में जाना जाता है। COMMAREA का उपयोग कार्यों के बीच डेटा पास करने के लिए किया जाता है। निम्न उदाहरण दिखाता है कि कैसे COMMAREA पास किया जाता है जहां WSCOMMAREA और WS-COMMAREA-LENGTH कार्यशील संग्रहण अनुभाग में घोषित किए जाते हैं।
EXEC CICS RETURN
TRANSID ('transaction-id')
COMMAREA (WS-COMMAREA)
LENGTH (WS-COMMAREA-LENGTH)
END-EXEC.
DFHCOMMAREA
DFHCOMMAREA एक विशेष मेमोरी क्षेत्र है जो CICS द्वारा हर कार्य के लिए प्रदान किया जाता है।
इसका उपयोग एक प्रोग्राम से दूसरे प्रोग्राम में डेटा पास करने के लिए किया जाता है। कार्यक्रम एक ही लेनदेन में या अलग-अलग लेनदेन में भी मौजूद हो सकते हैं।
यह कार्यक्रम के लिंकेज खंड में 01 स्तर पर घोषित किया गया है।
इसमें WS-COMMAREA के समान चित्र खंड होना चाहिए।
डेटा को MOH कथन के उपयोग से DFHCOMMAREA से WS-COMMAREA में वापस ले जाया जा सकता है।
MOVE DFHCOMMAREA TO WS-COMMAREA.
उदाहरण
मानचित्र भेजने के बाद, कार्य समाप्त हो जाता है और उपयोगकर्ता की प्रतिक्रिया का इंतजार करता है। इस स्तर पर, डेटा को सहेजने की आवश्यकता है, क्योंकि हालांकि कार्य समाप्त हो गया है, लेकिन लेनदेन नहीं हुआ है। जब इस लेन-देन को फिर से शुरू करना है, तो उसे कार्य की पूर्व स्थिति की आवश्यकता होगी। उपयोगकर्ता इनपुट में प्रवेश करता है। इसे अब RECEIVE MAP कमांड द्वारा प्राप्त किया जाना है और फिर मान्य किया गया है। निम्नलिखित उदाहरण से पता चलता है कि COMMAREA और DFHCOMMAREA को कैसे घोषित किया जाए -
WORKING-STORAGE SECTION.
01 WS-COMMAREA.
05 WS-DATA PIC X(10).
LINKAGE SECTION.
01 DFHCOMMAREA.
05 LK-DATA PIC X(10).
छद्म कोड
नीचे दिए गए छद्म कोड का तर्क है जो हम छद्म प्रोग्रामिंग में उपयोग करते हैं -
MOVE DFHCOMMAREA TO WS-COMMAREA
IF EIBCALEN = 0
STEP1: SEND MAP
STEP2: MOVE <internal-transaction-id1> to WS-COMMAREA
STEP3: ISSUE CONDITIONAL RETURN
ELSE
IF WS-COMMAREA = <internal-transaction-id1>
STEP4: RECEIVE MAP
STEP5: PROCESS DATA
STEP6: SEND OUTPUT MAP
STEP7: MOVE <internal-transaction-ID2> to WS-COMMAREA
STEP8: ISSUE CONDITIONAL RETURN
END-IF
END-IF
STEP9: REPEAT STEP3 TO STEP7 UNTIL EXIT
उदाहरण
निम्न उदाहरण एक छद्म रूपांतरण कार्यक्रम दिखाता है -
******************************************************************
* PROGRAM TO DEMONSTRATE PSEUDO-CONVERSATION *
******************************************************************
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-MESSAGE PIC X(30).
01 WS-COMMAREA PIC X(10) VALUE SPACES.
LINKAGE SECTION.
01 DFHCOMMAREA PIC X(10).
PROCEDURE DIVISION.
MOVE DFHCOMMAREA TO WS-COMMAREA
IF WS-COMMAREA = SPACES
******************************************************************
* TRANSACTION GETTING EXECUTED FOR THE FIRST TIME *
******************************************************************
MOVE 'HELLO' TO WS-MESSAGE
EXEC CICS SEND TEXT
FROM (WS-MESSAGE)
END-EXEC
MOVE 'FIRST' TO WS-COMMAREA
******************************************************************
* TASK ENDS AS A RESULT OF RETURN. IF AID KEY PRESSED, NEXT *
* TRANSACTION SHOULD BE TP002. DATA PASSED FROM WS-COMMAREA TO *
* DFHCOMMAREA *
******************************************************************
EXEC CICS RETURN
TRANSID('TP002')
COMMAREA(WS-COMMAREA)
END-EXEC
******************************************************************
* IF COMMAREA IS NOT EMPTY , THEN TP002 HAS BEEN EXECUTED ONCE *
* ALREADY, USER INTERACTION IS FACILITATED BY RECEIVE *
******************************************************************
ELSE
EXEC CICS RECEIVE
INTO(WS-MESSAGE)
END-EXEC
EXEC CICS SEND TEXT
FROM (WS-MESSAGE)
END-EXEC
******************************************************************
* TASK ENDS AS A RESULT OF RETURN, NO NEXT TRANSACTION SPECIFIED *
* TO BE EXECUTED *
******************************************************************
EXEC CICS RETURN
END-EXEC
END-IF.
छद्म रूपांतरण के लाभ
निम्नलिखित छद्म रूपांतरण के फायदे हैं -
संसाधनों का सबसे अच्छा उपयोग किया जाता है। जैसे ही कार्यक्रम अस्थायी रूप से निलंबित किया जाता है, संसाधन जारी किए जाते हैं।
ऐसा लगता है कि यह संवादी मोड में है।
इसका बेहतर रिस्पांस टाइम है।
विवरण लौटाएं
निम्नलिखित दो प्रकार के विवरण हैं जो CICS में उपयोग किए जाते हैं -
वापसी -1
जब निम्नलिखित बिना शर्त रिटर्न स्टेटमेंट जारी किया जाता है, तो कार्य और लेनदेन (प्रोग्राम) समाप्त हो जाता है।
EXEC CICS RETURN
END-EXEC.
वापसी -2
जब निम्नलिखित सशर्त वापसी, यानी, ट्रांसिड स्टेटमेंट के साथ वापसी जारी की जाती है, तो नियंत्रण अगले ट्रांसिड के साथ सीआईसी को निष्पादित किया जाता है। अगला लेनदेन तब शुरू होता है जब उपयोगकर्ता AID कुंजी दबाता है।
EXEC CICS RETURN
TRANSID ('trans-id')
[COMMAREA(WS-COMMAREA)]
END-EXEC.
जैसा कि हमने पहले मॉड्यूल में चर्चा की है, एआईडी कुंजियों को अटेंशन आइडेंटिफ़ायर कीज़ के रूप में जाना जाता है। CICS केवल AID कुंजी का पता लगा सकती है। सभी इनपुट टाइप करने के बाद, जब उपयोगकर्ता AID कुंजी में से एक को दबाता है, तो CICS नियंत्रण लेता है। AID कुंजी में ENTER, PF1 से PF24, PA1 से PA3 और CLEAR शामिल हैं।
सहायता कुंजियाँ मान्य करना
उपयोगकर्ता द्वारा दबाया गया कुंजी EIBAID का उपयोग करके जाँच की जाती है।
EIBAID एक बाइट लंबी है और 3270 इनपुट स्ट्रीम में उपयोग किए जाने वाले वास्तविक ध्यान पहचानकर्ता मूल्य को रखती है।
CICS हमें चर का एक पूर्व-कोडित सेट प्रदान करता है जिसका उपयोग निम्नलिखित कार्यक्रम को लिखकर आवेदन कार्यक्रम में किया जा सकता है -
कॉपी DFHAID
DFHAID
DFHAID एक कॉपीबुक है जिसका उपयोग अनुप्रयोग कार्यक्रमों में किया जाता है जिसमें CICS को चर के पूर्व कोडित सेट में शामिल किया जाता है। निम्नलिखित सामग्री DFHAID कॉपीबुक में मौजूद है -
01 DFHAID.
02 DFHNULL PIC X VALUE IS ' '.
02 DFHENTER PIC X VALUE IS ''''.
02 DFHCLEAR PIC X VALUE IS '_'.
02 DFHCLRP PIC X VALUE IS '¦'.
02 DFHPEN PIC X VALUE IS '='.
02 DFHOPID PIC X VALUE IS 'W'.
02 DFHMSRE PIC X VALUE IS 'X'.
02 DFHSTRF PIC X VALUE IS 'h'.
02 DFHTRIG PIC X VALUE IS '"'.
02 DFHPA1 PIC X VALUE IS '%'.
02 DFHPA2 PIC X VALUE IS '>'.
02 DFHPA3 PIC X VALUE IS ','.
02 DFHPF1 PIC X VALUE IS '1'.
02 DFHPF2 PIC X VALUE IS '2'.
02 DFHPF3 PIC X VALUE IS '3'.
02 DFHPF4 PIC X VALUE IS '4'.
02 DFHPF5 PIC X VALUE IS '5'.
02 DFHPF6 PIC X VALUE IS '6'.
02 DFHPF7 PIC X VALUE IS '7'.
02 DFHPF8 PIC X VALUE IS '8'.
02 DFHPF9 PIC X VALUE IS '9'.
02 DFHPF10 PIC X VALUE IS ':'.
02 DFHPF11 PIC X VALUE IS '#'.
02 DFHPF12 PIC X VALUE IS '@'.
02 DFHPF13 PIC X VALUE IS 'A'.
02 DFHPF14 PIC X VALUE IS 'B'.
02 DFHPF15 PIC X VALUE IS 'C'.
02 DFHPF16 PIC X VALUE IS 'D'.
02 DFHPF17 PIC X VALUE IS 'E'.
02 DFHPF18 PIC X VALUE IS 'F'.
02 DFHPF19 PIC X VALUE IS 'G'.
02 DFHPF20 PIC X VALUE IS 'H'.
02 DFHPF21 PIC X VALUE IS 'I'.
02 DFHPF22 PIC X VALUE IS '¢'.
02 DFHPF23 PIC X VALUE IS '.'.
02 DFHPF24 PIC X VALUE IS '<'.
उदाहरण
निम्नलिखित उदाहरण से पता चलता है कि आवेदन कार्यक्रम में DFHAID कॉपीबुक का उपयोग कैसे करें -
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
DATA DIVISION.
WORKING-STORAGE SECTION.
COPY DFHAID.
PROCEDURE DIVISION.
A000-AIDKEY-PARA.
EVALUATE EIBAID
WHEN DFHAID
PERFORM A000-PROCES-PARA
WHEN DFHPF1
PERFORM A001-HELP-PARA
WHEN DFHPF3
PERFORM A001-EXIT-PARA
END-EVALUATE.
कर्सर की स्थिति
मानचित्र की परिभाषा में निर्दिष्ट स्थिति को ओवरराइड करने के दो तरीके हैं।
एक तरीका यह है कि सेंड मैप कमांड पर लाइन और कॉलम नंबर के सापेक्ष स्क्रीन स्थिति को निर्दिष्ट करें।
अन्य तरीका -1 को एल के साथ प्रत्ययित प्रतीकात्मक मानचित्र चर पर ले जाना है। फिर, मानचित्र मानचित्र में CURSOR विकल्प के साथ भेजें।
उदाहरण
निम्न उदाहरण दिखाता है कि NAME फ़ील्ड के लिए कर्सर की स्थिति को कैसे ओवरराइड किया जाए -
MOVE -1 TO NAMEL
EXEC CICS SEND
MAP ('map-name')
MAPSET ('name-field')
ERASE
FREEKB
CURSOR
END-EXEC.
गतिशील रूप से संशोधित गुण
मानचित्र भेजते समय, यदि हम मानचित्र में निर्दिष्ट किसी क्षेत्र के लिए अलग-अलग विशेषताएँ रखना चाहते हैं, तो हम प्रोग्राम में फ़ील्ड सेट करके इसे ओवरराइड कर सकते हैं। निम्नलिखित एक क्षेत्र की विशेषताओं को ओवरराइड करने के लिए स्पष्टीकरण है -
किसी फ़ील्ड की विशेषताओं को ओवरराइड करने के लिए, हमें DFHATTR को एप्लिकेशन प्रोग्राम में शामिल करना चाहिए। यह सीआईसी द्वारा प्रदान किया गया है।
आवश्यक विशेषता को सूची से चुना जा सकता है और 'ए' के साथ प्रत्यय वाले प्रतीकात्मक क्षेत्र चर में ले जाया जा सकता है।
DFHATTR निम्नलिखित सामग्री रखती है -
01 CICS-ATTRIBUTES.
05 ATTR-UXN PIC X(01) VALUE SPACE.
05 ATTR-UXMN PIC X(01) VALUE 'A'.
05 ATTR-UXNL PIC X(01) VALUE 'D'.
05 ATTR-UXMNL PIC X(01) VALUE 'E'.
05 ATTR-UXBL PIC X(01) VALUE 'H'.
05 ATTR-UXMBL PIC X(01) VALUE 'I'.
05 ATTR-UXD PIC X(01) VALUE '<'.
05 ATTR-UXMD PIC X(01) VALUE '('.
05 ATTR-U9N PIC X(01) VALUE '&'.
05 ATTR-U9MN PIC X(01) VALUE 'J'.
05 ATTR-U9NL PIC X(01) VALUE 'M'.
05 ATTR-U9MNL PIC X(01) VALUE 'N'.
05 ATTR-U9BL PIC X(01) VALUE 'Q'.
05 ATTR-U9MBL PIC X(01) VALUE 'R'.
05 ATTR-U9D PIC X(01) VALUE '*'.
05 ATTR-U9MD PIC X(01) VALUE ')'.
05 ATTR-PXN PIC X(01) VALUE '-'.
05 ATTR-PXMN PIC X(01) VALUE '/'.
05 ATTR-PXNL PIC X(01) VALUE 'U'.
05 ATTR-PXMNL PIC X(01) VALUE 'V'.
05 ATTR-PXBL PIC X(01) VALUE 'Y'.
05 ATTR-PXMBL PIC X(01) VALUE 'Z'.
05 ATTR-PXD PIC X(01) VALUE '%'.
05 ATTR-PSN PIC X(01) VALUE '0'.
05 ATTR-PSMN PIC X(01) VALUE '1'.
05 ATTR-PSNL PIC X(01) VALUE '4'.
05 ATTR-PSMNL PIC X(01) VALUE '5'.
05 ATTR-PSBL PIC X(01) VALUE '8'.
05 ATTR-PSMBL PIC X(01) VALUE '9'.
05 ATTR-PSD PIC X(01) VALUE '@'.
05 ATTR-PSMD PIC X(01) VALUE "'".
CICS हमें कई तरह से फाइल डेटा तक पहुंचने देती है। अधिकांश फ़ाइल एक्सेस ऑनलाइन सिस्टम में यादृच्छिक हैं क्योंकि संसाधित किए जाने वाले लेनदेन को किसी भी प्रकार के क्रम में बैच और क्रमबद्ध नहीं किया गया है। इसलिए CICS सामान्य प्रत्यक्ष अभिगम विधियों - VSAM और DAM (प्रत्यक्ष अभिगम विधि) का समर्थन करती है। यह हमें डेटाबेस प्रबंधकों का उपयोग करके डेटा तक पहुंचने की अनुमति भी देता है।
रैंडम एक्सेस
निम्नलिखित आदेश हैं जो यादृच्छिक प्रसंस्करण के लिए उपयोग किए जाते हैं -
अनु क्रमांक | कमांड और विवरण |
---|---|
1 | पढ़ना READ कमांड प्राथमिक कुंजी का उपयोग करके फ़ाइल से डेटा पढ़ता है। |
2 | लिखो फ़ाइल में नए रिकॉर्ड जोड़ने के लिए लिखें कमांड का उपयोग किया जाता है। |
3 | फिर से लिखने REWRITE कमांड का उपयोग एक रिकॉर्ड को संशोधित करने के लिए किया जाता है जो पहले से ही एक फ़ाइल में मौजूद है। |
4 | हटाएँ DELETE कमांड का उपयोग उस रिकॉर्ड को हटाने के लिए किया जाता है जो किसी फ़ाइल में मौजूद है। |
अनुक्रमिक पहुंच
क्रमिक प्रसंस्करण के लिए उपयोग की जाने वाली कमांड निम्नलिखित हैं -
अनु क्रमांक | कमांड और विवरण |
---|---|
1 | STARTBR स्टार्ट ब्राउज के रूप में STARTBR को जाना जाता है। |
2 | READNEXT / READPREV जब हम एक STARTBR कमांड जारी करते हैं, तो यह रिकॉर्ड उपलब्ध नहीं कराता है। |
3 | RESETBR RESETBR कमांड हमें अपने शुरुआती बिंदु को एक ब्राउज़ के बीच में रीसेट करने की अनुमति देता है। |
4 | ENDBR जब हमने फ़ाइल को क्रमिक रूप से पढ़ना समाप्त कर दिया है, तो हम ENDBR कमांड का उपयोग करके ब्राउज़ को समाप्त कर देते हैं। |
कई प्रकार के होते हैं abendsऔर एक CICS एप्लिकेशन का उपयोग करते समय त्रुटियों का सामना कर सकता है। सॉफ़्टवेयर समस्याओं के हार्डवेयर के कारण त्रुटियां उत्पन्न हो सकती हैं। हम इस मॉड्यूल में त्रुटियों और त्रुटि से निपटने के बारे में चर्चा करेंगे।
सीआईसी त्रुटियां
CICS की गलतियाँ निम्नलिखित हैं जो CICS अनुप्रयोगों के निष्पादन के दौरान उत्पन्न हो सकती हैं -
CICS प्रणाली में स्थितियां सामान्य नहीं होने पर CICS की कुछ त्रुटियां उत्पन्न होती हैं। उदाहरण के लिए, यदि हम एक विशेष रिकॉर्ड पढ़ रहे हैं और रिकॉर्ड नहीं मिला है, तो हमें "Not Found" त्रुटि मिलती है।Mapfailएक समान त्रुटि है। इस श्रेणी में त्रुटियों को कार्यक्रम में स्पष्ट तर्क द्वारा नियंत्रित किया जाता है।
कुछ कारणों से तार्किक त्रुटियां उत्पन्न होती हैं जैसे कि विभाजन द्वारा शून्य, संख्यात्मक क्षेत्र में अवैध चरित्र या लेनदेन आईडी त्रुटि।
हार्डवेयर या अन्य सिस्टम स्थितियों से संबंधित त्रुटियां एक एप्लिकेशन प्रोग्राम के नियंत्रण से परे हैं। उदाहरण के लिए, फ़ाइल एक्सेस करते समय इनपुट / आउटपुट त्रुटि प्राप्त करना।
कमांड को संभालने में त्रुटि
सीआईसी त्रुटियों की पहचान करने और उन्हें हमारे कार्यक्रमों में संभालने के लिए कई तंत्र प्रदान करता है। निम्नलिखित कमांड्स हैं जिनका उपयोग CICS त्रुटियों को संभालने के लिए किया जाता है -
अनु क्रमांक | हैंडलिंग कमांड और विवरण |
---|---|
1 | स्थिति को संभालें हैंडल की स्थिति का उपयोग प्रोग्राम के नियंत्रण को एक पैराग्राफ या एक प्रक्रिया लेबल में स्थानांतरित करने के लिए किया जाता है। |
2 | संभालना यदि कोई प्रोग्राम इनपुट-आउटपुट त्रुटि जैसे कुछ कारणों के कारण निरस्त हो जाता है, तो इसे हैंडल एबल्ड सीआईसी कमांड का उपयोग करके नियंत्रित किया जा सकता है। |
3 | Abend जानबूझकर कार्य को समाप्त करने के लिए एबेंड कमांड का उपयोग किया जाता है। |
4 | शर्त पर ध्यान न दें इग्नोर कंडीशन का उपयोग तब किया जाता है जब हम चाहते हैं कि यदि कोई विशेष एबेंड या त्रुटि होती है जो इग्नोर कंडीशन के अंदर उल्लिखित है तो कोई कार्रवाई नहीं की जाएगी। |
5 | Nohandle Noicsle को किसी CICS कमांड के लिए निर्दिष्ट किया जा सकता है। |
CICS कार्यक्रम नियंत्रण कार्यक्रम (PCP) अनुप्रयोग कार्यक्रमों के प्रवाह का प्रबंधन करता है। सभी आवेदन कार्यक्रमों में प्रसंस्करण कार्यक्रम तालिका में एक प्रविष्टि होनी चाहिए। प्रोग्राम नियंत्रण सेवाओं के लिए उपयोग की जाने वाली कमांड निम्नलिखित हैं -
- XCTL
- Link
- Load
- Release
- Return
कार्यक्रम तार्किक स्तर
CICS के तहत निष्पादित होने वाले एप्लिकेशन प्रोग्राम में विभिन्न तार्किक स्तर होते हैं। पहला प्रोग्राम जो सीधे नियंत्रण प्राप्त करता है वह उच्चतम तार्किक स्तर पर है, अर्थात, स्तर 1। लिंक्ड प्रोग्राम लिंक प्रोग्राम से अगले तार्किक स्तर पर है। XCTL कार्यक्रम समान स्तर पर चलते हैं। यह स्पष्ट होगा जब हम लिंक और XCTL से गुजरेंगे, बाद में इस मॉड्यूल में। निम्न छवि तार्किक स्तर दिखाती है -
XCTL
XCTL की मौलिक व्याख्या इस प्रकार है -
XCTL कमांड का उपयोग नियंत्रण को एक प्रोग्राम से दूसरे प्रोग्राम में समान स्तर पर पास करने के लिए किया जाता है।
यह नियंत्रण वापस की उम्मीद नहीं करता है।
यह गो टू स्टेटमेंट के समान है।
एक XCTL प्रोग्राम एक छद्म संवादी हो सकता है।
उदाहरण
निम्न उदाहरण से पता चलता है कि नियंत्रण को दूसरे प्रोग्राम में पास करने के लिए XCTL कमांड का उपयोग कैसे किया जाता है -
IDENTIFICATION DIVISION.
PROGRAM-ID. PROG1.
WORKING-STORAGE SECTION.
01 WS-COMMAREA PIC X(100).
PROCEDURE DIVISION.
EXEC CICS XCTL
PROGRAM ('PROG2')
COMMAREA (WS-COMMAREA)
LENGTH (100)
END-EXEC.
यह कमांड 'PROG2' को 100 बाइट्स डेटा के साथ प्रोग्राम में पारित करने के लिए नियंत्रण स्थानांतरित करता है। COMMAREA एक वैकल्पिक पैरामीटर है और उस क्षेत्र का नाम है जिसमें डेटा पारित किया जाना है या जिस क्षेत्र के परिणाम वापस करने हैं।
संपर्क
लिंक कमांड का उपयोग नियंत्रण को निचले स्तर पर किसी अन्य कार्यक्रम में स्थानांतरित करने के लिए किया जाता है। यह नियंत्रण वापस की उम्मीद करता है। एक लिंक्ड प्रोग्राम छद्म संवादी नहीं हो सकता है।
उदाहरण
निम्न उदाहरण दिखाता है कि नियंत्रण को किसी अन्य प्रोग्राम में पास करने के लिए लिंक कमांड का उपयोग कैसे करें -
IDENTIFICATION DIVISION.
PROGRAM-ID. PROG1.
WORKING-STORAGE SECTION.
01 WS-COMMAREA PIC X(100).
PROCEDURE DIVISION.
EXEC CICS LINK
PROGRAM ('PROG2')
COMMAREA (WS-COMMAREA)
LENGTH (100)
END-EXEC.
भार
लोड कमांड का उपयोग प्रोग्राम या टेबल लोड करने के लिए किया जाता है। निम्नलिखित लोड कमांड का सिंटैक्स है -
EXEC CICS LOAD
PROGRAM ('name')
END-EXEC.
रिहाई
रिलीज कमांड का उपयोग प्रोग्राम या टेबल को रिलीज करने के लिए किया जाता है। निम्नलिखित रिलीज कमांड का सिंटैक्स है -
EXEC CICS RELEASE
PROGRAM ('name')
END-EXEC.
वापसी
रिटर्न कमांड का उपयोग नियंत्रण को अगले उच्च तार्किक स्तर पर वापस करने के लिए किया जाता है। निम्नलिखित रिटर्न कमांड का सिंटैक्स है -
EXEC CICS RETURN
PROGRAM ('name')
COMMAREA (data-value)
LENGTH (data-value)
END-EXEC.
अंतराल नियंत्रण संचालन
अंतराल नियंत्रण संचालन निम्नलिखित दो प्रकार के होते हैं -
ASKTIME
ASKTIME का उपयोग वर्तमान समय और दिनांक या टाइमस्टैम्प के लिए अनुरोध करने के लिए किया जाता है। हम इस मान को प्रोग्राम के अंदर काम कर रहे स्टोरेज वैरिएबल में ले जाते हैं। निम्नलिखित ASKTIME कमांड का सिंटैक्स है -
EXEC CICS ASKTIME
[ABSTIME(WS-TIMESTAMP)]
END-EXEC.
FORMATTIME
FORMATTIME विकल्पों के आधार पर टाइमस्टैम्प को प्रारूपित करता है, जो कि YYDDD, YYMMDD या YYDDMM हो सकते हैं। DatesEP DATE के लिए विभाजक को इंगित करता है जैसे TIMEESEP समय के लिए चर करता है। निम्नलिखित FORMATTIME कमांड का सिंटैक्स है -
EXEC CICS FORMATTIME
ABSTIME(WS-TIMESTAMP)
[YYDDD(WS-DATE)]
[YYMMDD(WS-DATE)]
[YYDDMM(WS-DATE)]
[DATESEP(WS-DATE-SEP)]
[TIME(WS-TIME)]
[TIMESEP(WS-TIME-SEP)]
END-EXEC.
अलग-अलग खरोंच पैड हैं जो डेटा बचाने या लेनदेन के बीच डेटा स्थानांतरित करने के लिए सीआईसी में उपलब्ध हैं। पांच भंडारण क्षेत्र हैं जो सीआईसी द्वारा प्रदान किए गए हैं, जिनके बारे में हम इस मॉड्यूल में चर्चा करेंगे।
COMMAREA
COMMAREA एक स्क्रैच पैड की तरह व्यवहार करता है जिसका उपयोग एक प्रोग्राम से दूसरे प्रोग्राम में डेटा को पास करने के लिए किया जा सकता है, या तो एक ही लेनदेन के भीतर या अलग-अलग लेनदेन के लिए। इसे DFHCOMMAREA नाम का उपयोग करके लिंकेज अनुभाग में परिभाषित किया जाना चाहिए।
सामान्य कार्य क्षेत्र
CICS क्षेत्र में कोई भी लेन-देन आम कार्य क्षेत्र तक पहुंच सकता है और इसलिए इस प्रणाली के सभी लेनदेन के प्रारूप और उपयोग पर सहमति होनी चाहिए जो इसका उपयोग करने का निर्णय लेता है। पूरे सीआईसी क्षेत्र में केवल एक ही CWA है।
लेनदेन कार्य क्षेत्र
लेन-देन कार्य क्षेत्र का उपयोग अनुप्रयोग प्रोग्रामों के बीच डेटा पारित करने के लिए किया जाता है जो उसी लेनदेन में निष्पादित होते हैं। TWA केवल लेनदेन की अवधि के लिए मौजूद है। इसका आकार कार्यक्रम नियंत्रण तालिका में परिभाषित किया गया है।
अस्थायी संग्रहण कतार
अस्थाई संग्रहण कतार (TSQ) एक विशेषता है जो अस्थायी संग्रहण नियंत्रण कार्यक्रम (TSP) द्वारा प्रदान की जाती है।
एक TSQ रिकॉर्ड्स की एक कतार है, जिसे एक ही CICS क्षेत्र में विभिन्न कार्यों या कार्यक्रमों द्वारा बनाया, पढ़ा और हटाया जा सकता है।
TSQ की पहचान करने के लिए एक कतार पहचानकर्ता का उपयोग किया जाता है।
TSQ के भीतर के रिकॉर्ड को आइटम नंबर के रूप में जाना जाने वाले सापेक्ष स्थान से पहचाना जाता है।
TSQ में रिकॉर्ड तब तक सुलभ रहता है जब तक कि पूरे TSQ को स्पष्ट रूप से हटा नहीं दिया जाता है।
TSQ में रिकॉर्ड क्रमिक रूप से या सीधे पढ़ा जा सकता है।
टीएसक्यू को मुख्य भंडारण या डीएएसडी में सहायक भंडारण में लिखा जा सकता है।
WRITEQ टीएस
इस कमांड का उपयोग मौजूदा TSQ में आइटम जोड़ने के लिए किया जाता है। साथ ही, हम इस कमांड का उपयोग करके एक नया TSQ बना सकते हैं। निम्नलिखित WRITEQ TS कमांड का सिंटैक्स है -
वाक्य - विन्यास
EXEC CICS WRITEQ TS
QUEUE ('queue-name')
FROM (queue-record)
[LENGTH (queue-record-length)]
[ITEM (item-number)]
[REWRITE]
[MAIN /AUXILIARY]
END-EXEC.
WRITEQ TS कमांड में उपयोग किए जाने वाले मापदंडों का विवरण निम्नलिखित है -
QUEUE की पहचान उस नाम से होती है जिसका उल्लेख इस पैरामीटर में किया गया है।
FROM और LENGTH विकल्पों का उपयोग उस रिकॉर्ड को निर्दिष्ट करने के लिए किया जाता है जिसे कतार और उसकी लंबाई के लिए लिखा जाना है।
यदि ITEM विकल्प निर्दिष्ट किया जाता है, तो CICS कतार में रिकॉर्ड करने के लिए एक आइटम नंबर प्रदान करता है, और उस विकल्प में दिए गए डेटा क्षेत्र को आइटम नंबर पर सेट करता है। यदि रिकॉर्ड एक नई कतार शुरू करता है, तो निर्दिष्ट आइटम नंबर 1 है और बाद के आइटम नंबर क्रमिक रूप से अनुसरण करते हैं।
REWRITE विकल्प का उपयोग कतार में पहले से मौजूद रिकॉर्ड को अपडेट करने के लिए किया जाता है।
मुख्य या सहायक भंडारण में रिकॉर्ड को संग्रहीत करने के लिए MAIN / AUXILIARY विकल्प का उपयोग किया जाता है। डिफ़ॉल्ट सहायक है।
READQ TS
इस कमांड का उपयोग टेम्परेरी स्टोरेज क्यू पढ़ा जाता है। निम्नलिखित READQ TS का वाक्य विन्यास है -
वाक्य - विन्यास
EXEC CICS READQ TS
QUEUE ('queue-name')
INTO (queue-record)
[LENGTH (queue-record-length)]
[ITEM (item-number)]
[NEXT]
END-EXEC.
DELETEQ टीएस
इस कमांड का उपयोग अस्थाई संग्रहण कतार को हटाने के लिए किया जाता है। निम्नलिखित DELETEQ TS का वाक्य विन्यास है -
वाक्य - विन्यास
EXEC CICS DELETEQ TS
QUEUE ('queue-name')
END-EXEC.
क्षणिक डेटा कतार
क्षणिक डेटा कतार प्रकृति में क्षणिक है क्योंकि इसे जल्दी से बनाया और हटाया जा सकता है। यह केवल अनुक्रमिक पहुंच की अनुमति देता है।
कतार की सामग्री को केवल एक बार पढ़ा जा सकता है क्योंकि यह एक बार पढ़ने के बाद नष्ट हो जाता है और इसलिए इसका नाम क्षणिक है।
इसे अपडेट नहीं किया जा सकता।
इसके लिए डीसीटी में एक प्रविष्टि की आवश्यकता होती है।
WRITEQ टीडी
इस कमांड का उपयोग क्षणिक डेटा कतारों को लिखने के लिए किया जाता है और उन्हें हमेशा एक फ़ाइल में लिखा जाता है। निम्नलिखित WRITEQ टीडी कमांड का सिंटैक्स है -
वाक्य - विन्यास
EXEC CICS WRITEQ TD
QUEUE ('queue-name')
FROM (queue-record)
[LENGTH (queue-record-length)]
END-EXEC.
READQ टीडी
इस कमांड का उपयोग Transient data queue को पढ़ने के लिए किया जाता है। निम्नलिखित READQ टीडी का वाक्य विन्यास है -
वाक्य - विन्यास
EXEC CICS READQ TD
QUEUE ('queue-name')
INTO (queue-record)
[LENGTH (queue-record-length)]
END-EXEC.
DELETEQ टीडी
इस आदेश का उपयोग क्षणिक डेटा कतार को हटाने के लिए किया जाता है। निम्नलिखित DELETEQ टीडी का वाक्य विन्यास है -
वाक्य - विन्यास
EXEC CICS DELETEQ TD
QUEUE ('queue-name')
END-EXEC.
दो या अधिक प्रणालियों के बीच होने वाले आपसी संचार को कहा जाता है intercommunication।
अंतर-संचार के लाभ
अंतर-संचार के महत्वपूर्ण लाभ इस प्रकार हैं -
हमें सभी प्रणालियों पर डेटा को दोहराने की आवश्यकता नहीं है।
उपयोगकर्ताओं को उन पर संग्रहीत डेटा तक पहुंचने के लिए कई प्रणालियों से कनेक्शन रखने की आवश्यकता नहीं है।
यह एप्लिकेशन के प्रदर्शन में सुधार करता है।
बुनियादी शब्दावली
CICS प्रणाली में प्रयुक्त मूल शब्दावली का ज्ञान होना चाहिए। निम्नलिखित मूल शर्तें हैं -
स्थानीय प्रणाली
एक स्थानीय प्रणाली एक प्रणाली है जो अंतर-संचार के लिए अनुरोध शुरू करती है।
स्थानीय संसाधन
स्थानीय संसाधन एक संसाधन है जो स्थानीय प्रणाली पर आधारित है।
रिमोट सिस्टम
एक दूरस्थ प्रणाली एक प्रणाली है जिसे एक अंतर-संचार अनुरोध के परिणामस्वरूप शुरू किया जाता है।
दूरस्थ संसाधन
एक दूरस्थ संसाधन एक संसाधन है जो दूरस्थ प्रणाली पर स्थित है।
MVS Sysplex
MVS Sysplex कई MVS ऑपरेटिंग सिस्टम का कॉन्फ़िगरेशन है। वे कार्यों और कार्यक्रमों को साझा करके एकल प्रणाली के रूप में काम करते हैं।
CICSPlex
CICSPlex को आमतौर पर इंटरकनेक्टेड CICS क्षेत्रों का एक सेट के रूप में वर्णित किया जाता है जो ग्राहक के कार्यभार को संसाधित करते हैं। एक CICSPlex इंटरकनेक्टेड CICS क्षेत्रों का एक समूह है जो टर्मिनलों, अनुप्रयोगों, संसाधनों आदि का स्वामी है।
इंटरकॉम संचार के तरीके
दो तरीके हैं जिनमें CICS अन्य प्रणालियों के साथ संचार कर सकती है -
MRO - मल्टी रीजन ऑपरेशन का उपयोग तब किया जाता है जब एक ही MVSPLEX के दो CICS क्षेत्रों को एक दूसरे के साथ संवाद करने की आवश्यकता होती है।
ISC - इंटर सिस्टम कम्युनिकेशन का उपयोग तब किया जाता है जब LOCAL सर्वर में CICS क्षेत्र को REMOTE सर्वर में CICS क्षेत्र के साथ संचार करना होता है।
CICS के साथ काम करते समय, आपका सामना हो सकता है उनके विवरण के साथ आम संक्षिप्त कोड निम्नलिखित हैं जो आपको मुद्दों को हल करने में मदद करेंगे -
अनु क्रमांक | कोड और विवरण |
---|---|
1 | ASRA कार्यक्रम की जाँच अपवाद |
2 | AEI0 प्रोग्राम आईडी त्रुटि |
3 | AEI9 नक्शा विफल स्थिति |
4 | AEIO नकली चाबी |
5 | AEIN डुप्लिकेट रिकॉर्ड |
6 | AEID फ़ाइल के अंत तक पहुँच गया |
7 | AEIS फाइल खुली नहीं है |
8 | AEIP अमान्य अनुरोध स्थिति |
9 | AEY7 संसाधन का उपयोग करने के लिए अधिकृत नहीं है |
10 | APCT प्रोग्राम नहीं मिला |
1 1 | AFCA डेटासैट नहीं मिला |
12 | AKCT टाइम आउट एरर |
13 | ABM0 निर्दिष्ट नक्शा नहीं मिला |
14 | AICA अनंत लूप में कार्यक्रम |
15 | AAOW आंतरिक तर्क त्रुटि |