किसी स्क्रिप्ट के उपयोग से कोई प्रपत्र टेम्लपेट अनुकूलित करना

यदि आप स्क्रिप्ट लिखने से परिचित हैं, तो आप Microsoft JScript या Microsoft Visual Basic Scripting Edition (VBScript) स्क्रिप्टिंग भाषा के उपयोग से आपके Microsoft Office InfoPath प्रपत्र टेम्पलेट पर कोई स्क्रिप्ट जोड़ सकते हैं. स्क्रिप्ट जोड़ने से आप आपके प्रपत्र टेम्लपेट को नियमों, सूत्रों, डेटा मान्यता, या सशर्त स्वरूपण द्वारा उपलब्ध सुविधाओं से अधिक अनुकूलित करने में सक्षम होते हैं. उदाहरण के लिए, आप कोई ऐसी स्क्रिप्ट जोड़ सकते हैं जो किसी आपके प्रपत्र टेम्पलेट पर आधारित किसी प्रपत्र में उपयोगकर्ता द्वारा दृश्य बदलने पर कोई ई-मेल संदेश बनाता और भेजता है. किसी प्रपत्र टेम्पलेट को कोई ई-मेल संदेश बनाने और भेजने के लिए आप केवल किसी स्क्रिप्ट के उपयोग से कॉन्फ़िगर कर सकते हैं.

इस आलेख में

ओवरव्यू

संगतता सावधानियाँ

किसी प्रपत्र टेम्पलेट के‍ लिए स्क्रिप्टिंग भाषा सेट करना

प्रत्येक बार कोई ईवेंट आने पर कोई संदेश प्रदर्शित करना

किसी उपयोगकर्ता द्वारा प्रपत्र डेटा सहेजे जाने पर चलने वाली कोई स्क्रिप्ट जोड़ना

किसी उपयोगकर्ता द्वारा प्रपत्र डेटा सबमिट किए जाने पर चलने वाली कोई स्क्रिप्ट जोड़ना

किसी उपयोगकर्ता द्वारा कोई बटन क्लिक किए जाने पर चलने वाली कोई स्क्रिप्ट जोड़ना

मौजूदा प्रपत्रों को मर्ज किए जाने पर चलने वाली कोई स्क्रिप्ट जोड़ना

मौजूदा प्रपत्र अद्यतन करने के लिए कोई स्क्रिप्ट जोड़ना

अन्य ईवेंट्स के लिए कोई स्क्रिप्ट जोड़ना

ओवरव्यू

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

जब आप किसी प्रपत्र टेम्पलेट पर कोई स्क्रिप्ट जोड़ते हैं, तो InfoPath Microsoft Script Editor (MSE) प्रारंभ करता है, जो आपको किसी प्रपत्र टेम्पलेट में स्क्रिप्ट जोड़ने, संपादित करने, और डीबग करने की सुविधा देता है और कर्सर को आपके चयनित ईवेंट में रखता है. InfoPath स्वचालित रूप से स्क्रिप्ट में कोई ईवेंट हैंडलर जोड़ता है. कोई ईवेंट हैंडलर किसी InfoPath प्रपत्र टेम्पलेट में फ़ंक्शन कोड है जो किसी उपयोगकर्ता क्रिया या किसी प्रपत्र के XML डेटा में किसी परिवर्तन पर प्रतिक्रिया देता है. उदाहरण के लिए, यदि आप चाहते हैं कि आपके उपयोगकर्ता उनके प्रपत्रों को कई नेटवर्क स्थानों पर सहेजें, तो आप OnSaveRequest ईवेंट हैंडलर पर कोई स्क्रिप्ट जोड़ सकते हैं. जब आप उपयोगकर्ता द्वारा आपके प्रपत्र टेम्पलेट पर आधारित कोई प्रपत्र सहेजने पर चलाने के लिए कोई स्क्रिप्ट जोड़ते हैं, तो InfoPath स्क्रिप्ट एडिटर प्रारंभ करता है और स्क्रिप्ट में निम्न में से कोई एक कोड जोड़ता है.

नोट: InfoPath द्वारा जोड़ा जाने वाला कोड आपकी चयनित स्क्रिप्ट भाषा पर निर्भर करता है.

JScript

//=======
// The following function handler is created by Microsoft Office InfoPath.
// Do not modify the name of the function, or the name and number of arguments.
//=======
function XDocument::OnSaveRequest(eventObj)
{
// Write the code to be run before saving here.
eventObj.IsCancelled = eventObj.PerformSaveOperation();
// Write the code to be run after saving here.
eventObj.ReturnStatus = true;
}

VBScript

'=======
' The following function handler is created by Microsoft Office InfoPath.
' Do not modify the name of the function, or the name and number of arguments.
'=======
Sub XDocument_OnSaveRequest(eventObj)
' Write the code to be run before saving here.
eventObj.IsCancelled = eventObj.PerformSaveOperation
' Write the code to be run after saving here.
eventObj.ReturnStatus = True
End Sub

इसके बाद आप कोड को ईवेंट हैंडलर में उपयुक्त स्थानों पर जोड़ सकते हैं जो प्रपत्र को भिन्न नेटवर्क स्थान पर सहेजता है. जब कोई उपयोगकर्ता इस प्रपत्र टेम्पलेट पर आधारित कोई प्रपत्र सहेजता है, तो InfoPath OnSaveRequest ईवेंट हैंडलर का कोड चलाता है.

नोट: यह आलेख किसी प्रपत्र टेम्पलेट में स्क्रिप्ट्स बनाने का एक उच्च-स्तर दृश्य प्रदान करता है. Microsoft Script Editor और InfoPath में उपयोग‍ किए जाने वाले विशिष्ट ऑब्जेक्ट्स, पद्धतियों, ईवेंट्स, और गुणों के बारे में और जानने के लिए, InfoPath Developer का संदर्भ देखें.

InfoPath सभी परंतु निम्न ईवेंट्स में से एक ईवेंट के लिए ईवेंट हैंडलर्स स्वचालित रूप से जोड़ता है.

इवेंट हैंडलर

वर्णन

बनाने के चरण

बदलने के बाद पर

किसी फ़ील्ड में बाउंड निर्दिष्ट नियंत्रण में उपयोगकर्ता द्वारा मान बदलने के बाद यह इवेंट चलाया जाता है. उदाहरण के लिए, आप उपयोगकर्ता द्वारा सूची बॉक्स नियंत्रण में किसी आइटम का चयन करने के बाद कोई कस्टम HTML कार्यफलक प्रदर्शित कर सकते हैं. यह इवेंट मान्य करें पर इवेंट के बाद चलाया जाता है.

प्रपत्र टेम्पलेट पर कोई नियंत्रण या डेटा स्रोत कार्यफलक में कोई फ़ील्ड राइट-क्लिक करें, शॉर्टकट मेनू पर प्रोग्रामिंग को इंगित करें, और तब बदलने के बाद ईवेंट पर क्लिक करें.

आयात के बाद पर

उपयोगकर्ता द्वारा कई प्रपत्रों को सफलतापूर्वक एक प्रपत्र में मर्ज करने के बाद यह इवेंट चलाया जाता है.

MSE का उपयोग करके सीधे स्क्रिप्ट फ़ाइल में आयात के बाद पर इवेंट हैंडलर घोषणा को मैन्युअली जोड़ें. इस इवेंट हैंडलर को डिज़ाइन मोड में नहीं बनाया जा सकता.

बदलने के पहले

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

प्रपत्र टेम्पलेट पर नियंत्रण या डेटा स्रोत कार्यफलक में फ़ील्ड को राइट-क्लिक करें, शॉर्टकट मेनू पर प्रोग्रामिंग को इंगित करें, और तब बदलने के पहले ईवेंट पर क्लिक करें.

क्लिक पर

उपयोगकर्ता द्वारा इस इवेंट से संबद्ध बटन क्लिक करने पर यह इवेंट चलाया जाता है. प्रपत्र टेम्पलेट में बटन जोड़ने के बाद यह इवेंट उपलब्ध होता है. उदाहरण के लिए, उपयोगकर्ता द्वारा बटन क्लिक करने पर, मुख्य डेटा स्रोत में फ़ील्ड में मानों का उपयोग करके आप कोई जटिल परिकलन कर सकते हैं.

बटन नियंत्रण डबल-क्लिक करें, और तब बटन गुण संवाद बॉक्स के सामान्य टैब पर, प्रपत्र कोड संपादित करें क्लिक करें.

प्रसंग बदलने पर

प्रपत्र में फ़ोकस के बदलने पर यह इवेंट चलाया जाता है. उदाहरण के लिए, उपयोगकर्ता द्वारा पाठ बॉक्स से दिनांक पिकर में नेविगेट करने पर या उपयोगकर्ता द्वारा दृश्यों में स्विच करने पर यह इवेंट चलाया जाता है. अन्य सभी इवेंट्‍स हो जाने के बाद यह इवेंट होता है.

उपकरण मेनू पर, प्रोग्रामिंग को इंगित करें, और तब प्रसंग बदलने ईवेंट पर क्लिक करें.

लोड पर

जब उपयोगकर्ता आपके प्रपत्र टेम्पलेट पर आधारित नया प्रपत्र बनाता या कोई मौजूदा प्रपत्र खोलता है, तो यह इवेंट चलाया जता है. उदाहरण के लिए, उपयोगकर्ता द्वारा प्रपत्र खोलने पर आप आइटम्स की सूची की द्वितीयक डेटा स्रोत से मुख्य डेटा स्रोत में प्रतिलिपि बना सकते हैं.

उपकरण मेनू पर, प्रोग्रामिंग को इंगित करें, और तब लोड पर इवेंट क्लिक करें.

मर्ज अनुरोध पर

आपके प्रपत्र टेम्पलेट पर आधारित प्रपत्रों को मर्ज करने पर यह इवेंट चलाया जाता है. उदाहरण के लिए, आप मर्ज की कार्रवाई के दौरान उपयोगकर्ता स्थिति देने के लिए मर्ज किए गए प्रपत्रों की संख्या प्रदर्शित कर सकते हैं.

उपकरण मेनू पर, प्रपत्र विकल्प क्लिक करें. श्रेणी सूची में, उन्नत क्लिक करें. मर्ज प्रपत्र के तहत, कस्टम कोड उपयोग करके मर्ज करें चेक बॉक्स का चयन करें, और तब संपादित करें क्लिक करें.

सहेजें अनुरोध पर

उपयोगकर्ता द्वारा आपके प्रपत्र टेम्पलेट पर आधारित प्रपत्र सहेजने पर यह इवेंट चलाया जाता है. उदाहरण के लिए, आप उपयोगकर्ता द्वारा प्रपत्र सहेजे जाने पर एक से अधिक स्थानों पर इस प्रपत्र टेम्पलेट पर आधारित प्रपत्र सहेज सकते हैं. InfoPath इस इवेंट में कोड की दो अति‍रिक्त पंक्तियाँ जोड़ता है: एक प्रपत्र को सहेजने वाली पंक्ति और दूसरी वह पंक्ति, जो बताती है कि InfoPath ने सफलतापूर्वक प्रपत्र सहेजा.

उपकरण मेनू पर, प्रपत्र विकल्प क्लिक करें. श्रेणी सूची में, खोलें और सहेजें क्लिक करें. सहेजने का व्यवहार के तहत, कस्टम कोड का उपयोग करके सहेजें चेक बॉक्स का चयन करें, और तब संपादित करें क्लिक करें.

साइन पर

उपयोगकर्ता द्वारा किसी प्रपत्र पर डिजिटल लागू करने पर यह इवेंट चलाया जाता है. उदाहरण के लिए, आप किसी व्यय रिपोर्ट प्रपत्र को उपयोगकर्ता द्वारा हस्ताक्षरित करने पर उसके डिजिटल हस्ताक्षर में अतिरिक्त डेटा जोड़ सकते हैं.

उपकरण मेनू पर, प्रोग्रामिंग को इंगित करें, और तब साइन ईवेंट पर क्लिक करें.

सबमिट अनुरोध पर

उपयोगकर्ता द्वारा अपना प्रपत्र डेटा सबमिट करने पर यह इवेंट चलाया जाता है. उदाहरण के लिए, उपयोगकर्ता द्वारा फ़ाइल मेनू पर सबमिट क्लिक करने पर आप प्रपत्र डेटा को किसी सुरक्षित वेब सेवा में सबमिट कर सकते हैं. चूँकि InfoPath किसी सुरक्षित वेब सेवा पर डेटा कनेक्शन का समर्थन नहीं करता, इसलिए आपको अपनी सुरक्षित वेब सेवा के साथ कार्य करने वाला कस्टम डेटा कनेक्शन जोड़ना आवश्यक है.

उपकरण मेनू पर, सबमिट विकल्प क्लिक करें. उपयोगकर्ताओं को यह प्रपत्र सबमिट करने की अनुमति दें चेक बॉक्स का चयन करें, कोड का उपयोग कर कस्टम क्रिया करें क्लिक करें, और तब कोड संपादित करें क्लिक करें.

दृश्य स्विच पर

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

उपकरण मेनू पर, प्रोग्रामिंग क्लिक करें, और तब दृश्य स्विच करने ईवेंट पर क्लिक करें.

मान्यता पर

उपयोगकर्ता द्वारा फ़ील्ड में बाउंड नियंत्रण में मान बदलने पर यह इवेंट चलाया जाता है. उदाहरण के लिए, उपयोगकर्ता द्वारा किसी निर्दिष्ट नियंत्रण में मान बदलने पर, आप उपयोगकर्ता द्वारा दर्ज की गई संख्या और स्क्रिप्ट वाली संख्या का उपयोग करके दूसरे नियंत्रण के लिए नया मान परिकलित कर सकते हैं. यह इवेंट परिवर्तन से पहले पर इवेंट हैंडलर चलाए जाने के बाद आता है.

प्रपत्र टेम्पलेट पर या डेटा स्रोत कार्यफलक में फ़ील्ड पर किसी नियंत्रण को राइट-क्लिक करें, शॉर्टकट मेनू पर प्रोग्रामिंग को इंगित करें, और तब On After Validate Event क्लिक करें.

संस्‍करण के नवीनीकरण पर

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

उपकरण मेनू पर, प्रपत्र विकल्प क्लिक करें. श्रेणी सूची में, संस्करण क्लिक करें. संस्करण नवीनीकरण पर सूची में, कस्टम इवेंट का उपयोग करें क्लिक करें, और तब संपादित करें क्लिक करें.

पृष्ठ का शीर्ष

संगतता सावधानियाँ

आप किसी ब्राउज़र-संगत प्रपत्र टेम्पलेट पर स्क्रिप्ट नहीं जोड़ सकते हैं. आप केवल किसी ऐसे प्रपत्र टेम्पलेट पर स्क्रिप्ट जोड़ सकते हैं जिसके प्रपत्र InfoPath में भरे जाएँगे. आप किसी ब्राउज़र-संगत प्रपत्र टेम्पलेट को केवल प्रबंधित कोड के उपयोग से अनुकूलित कर सकते हैं.

पृष्ठ का शीर्ष

किसी प्रपत्र टेम्पलेट के‍ लिए स्क्रिप्टिंग भाषा सेट करना

स्क्रिप्ट का उपयोग करके प्रपत्र टेम्पलेट अनुकूलित करने के लिए, आप या तो Microsoft JScript या Microsoft Visual Basic Scripting Edition (VBScript) का उपयोग कर सकते हैं. डिफ़ॉल्ट रूप से, InfoPath को JScript का उपयोग करके स्क्रिप्ट जोड़ने के लिए कॉन्फ़िगर किया गया है. यदि आपके प्रपत्र में कोई भी स्क्रिप्ट या प्रबंधित कोड नहीं है और आप अपनी स्क्रिप्टिंग भाषा के रूप में VBScript का उपयोग करना पसंद करते हैं, तो आप अपने प्रपत्र टेम्पलेट के लिए स्क्रिप्टिंग भाषा को VBScript में बदल सकते हैं. आप एक प्रपत्र टेम्पलेट में दोनों स्क्रिप्टिंग भाषाओं का उपयोग नहीं कर सकते.

यदि प्रपत्र टेम्पलेट में पहले से ही एक भाषा में स्क्रिप्ट हो और आप दूसरी भाषा का उपयोग करना चाहते हों, तो आपको मौजूदा स्क्रिप्ट सहेजना आवश्यक है, ताकि आप स्क्रिप्ट को दूसरी भाषा में कनवर्ट कर सकें, प्रपत्र विकल्प संवाद बॉक्स में प्रपत्र टेम्पलेट से स्क्रिप्ट निकालें, और तब प्रपत्र टेम्पलेट में वापस कनवर्ट की गई स्क्रिप्ट जोड़ें. InfoPath स्क्रिप्ट्‍स को नई स्क्रिप्टिंग भाषा में कनवर्ट नहीं कर सकता. प्रपत्र विकल्प संवाद बॉक्स में स्क्रिप्ट भाषा बदलने से केवल इस प्रपत्र टेम्पलेट पर ही प्रभाव पड़ता है. अन्य प्रपत्र टेम्पलेट्‍स की डिफ़ॉल्ट स्क्रिप्टिंग भाषा के रूप में JScript होगी.

  1. उपकरण मेनू पर, प्रपत्र विकल्प क्लिक करें.

  2. श्रेणी सूची में, प्रपत्र विकल्प संवाद बॉक्स में, प्रोग्रामिंग क्लिक करें.

  3. प्रपत्र टेम्पलेट कोड भाषा सूची में, प्रोग्रामिंग भाषा के तहत, VBScript क्लिक करें.

    नोट्स: 

    • प्रपत्र के लिए स्क्रिप्टिंग भाषा सेट करने और एक या एक से अधिक इवेंट हैंडलर्स बनाने के बाद, आप प्रपत्र टेम्पलेट की स्क्रिप्टिंग भाषा को नहीं बदल सकते.

    • यदि आपने Microsoft Visual Studio 2005 Tools for Applications स्थापित किया है, तो डिफ़ॉल्ट भाषा Microsoft Visual Basic .NET होती है. आप अभी भी स्क्रिप्टिंग भाषा को VBScript में बदलने के लिए इस कार्यविधि का उपयोग कर सकते हैं.

पृष्ठ का शीर्ष

प्रत्येक बार कोई ईवेंट आने पर कोई संदेश प्रदर्शित करना

यदि आप यह जानना चाहते हैं कि किसी क्रिया या अन्य ईवेंट की प्रतिक्रिया में कौनसे ईवेंट हैंडलर्स चलते हैं, तो जब भी ईवेंट हैंडलर चले तब कोई संदेश बॉक्स प्रदर्शित करने के लिए आप अस्थायी कोड जोड़ सकते हैं. आपको केवल यह निर्धारित करने के लिए इस कोड का उपयोग करना चाहिए कि कोई ईवेंट हैंडलर कब चले. यह कोड जोड़ने के बाद, इस प्रपत्र टेम्पलेट पर आधारित कोई प्रपत्र देखने या प्रपत्र टेम्पलेट प्रकाशित करने और तब कोई नया प्रपत्र टेम्पलेट बनाने पूर्वावलोकन का उपयोग कर सकते हैं. कुछ ईवेंट हैंडलर्स केवल तभी चलते हैं यदि आप प्रपत्र टेम्पलेट प्रकाशित करने के बाद कोई प्रपत्र बनाते हैं. इसके बाद आप कोई ऐसी क्रिया निष्पादित कर सकते हैं जो संभवत: ईवेंट हैंडलर चलाती है. जब ईवेंट हैंडलर चलता है, तो आपको एक संदेश बॉक्स दिखाई देता है.

कौनसी क्रियाएँ या ईवेंट्स, ईवेंट हैंडलर चलाते हैं यह निर्धारित करने के बाद, कोड निकालें और तब प्रपत्र टेम्पलेट डिज़ाइन करना जारी रखें. यदि आप यह कोड नहीं निकालते हैं और तब आप प्रपत्र टेम्पलेट प्रकाशित करते हैं, तो ईवेंट हैंडलर चलने पर आपके उपयोगकर्ताओं को यह संदेश बॉक्स दिखाई देगा.

  1. आपका ईवेंट हैंडलर जोड़ें.

  2. JScript में कोड जोड़ने के लिए, XDocument.UI.Alert("The Event name event just ran"); लिखें, आपके ईवेंट हैंडलर के नाम से बदलें. उदाहरण के लिए, यदि आप यह कोड OnValidate ईवेंट हैंडलर पर जोड़ते हैं, तो आप XDocument.UI.Alert("The OnValidate event handler just ran"); लिखेंगे

  3. VBScript में कोड जोड़ने के लिए, XDocument.UI.Alert("The Event name event just ran") लिखें, उदाहरण के लिए, यदि आप यह कोड OnSaveRequest ईवेंट हैंडलर पर जोड़ते हैं, तो आप XDocument.UI.Alert("The OnSaveRequest event handler just ran") लिखेंगे

  4. कोड का परीक्षण करने के लिए, फ़ाइल मेनू पर पूर्वावलोकन क्लिक करें, या CTRL+SHIFT+B दबाएँ, और तब कोई ऐसी उपयोगकर्ता क्रिया निष्पादित करें जो ईवेंट प्रारंभ कर सकती हो. जब कोड की पंक्ति वाली ईवेंट आता है, तो एक संदेश बॉक्स को आपका संदेश प्रदर्शित करना चाहिए.

    नोट: ईवेंट प्रारंभ करने के लिए कोई उपयोगकर्ता क्रिया निष्‍पादित करने के पहले कुछ ईवेंट्स आपको प्रपत्र टेम्लपेट प्रकाशित करना और तब इस प्रप‍‍‍त्र टेम्पलेट पर आधारित कोई प्रपत्र बनाना आवश्यक कर सकते हैं.

  5. प्रपत्र टेम्पलेट प्रकाशित करने और आपके उपयोगकर्ताओं को इस प्रपत्र टेम्पलेट पर आधारित प्रपत्र भरने में सक्षम करने के लिए, संदेश बॉक्स प्रदर्शित करने के लिए उपयोग किया गया कोड हटाएँ.

पृष्ठ का शीर्ष

किसी उपयोगकर्ता द्वारा प्रपत्र डेटा सहेजे जाने पर चलने वाली कोई स्क्रिप्ट जोड़ना

  1. उपकरण मेनू पर, प्रपत्र विकल्प क्लिक करें.

  2. श्रेणी सूची में, प्रपत्र विकल्प संवाद बॉक्स में, खोलें और सहेजें क्लिक करें.

  3. सहेजने का व्यवहार के तहत, कस्टम कोड का उपयोग करके सहेजें चेक बॉक्स का चयन करें, और तब संपादन क्लिक करें. Microsoft Script Editor OnSaveRequest ईवेंट हैंडलर पर कर्सर के साथ प्रारंभ होता है.

    JScript

    //=======
    // The following function handler is created by Microsoft Office InfoPath.
    // Do not modify the name of the function, or the name and number of arguments.
    //=======
    function XDocument::OnSaveRequest(eventObj)
    {
    // Write the code to be run before saving here.
    eventObj.IsCancelled = eventObj.PerformSaveOperation();
    // Write the code to be run after saving here.
    eventObj.ReturnStatus = true;
    }

    VBScript

    '=======
    ' The following function handler is created by Microsoft Office InfoPath.
    ' Do not modify the name of the function, or the name and number of arguments.
    '=======
    Sub XDocument_OnSaveRequest(eventObj)
    ' Write the code to be run before saving here.
    eventObj.IsCancelled = eventObj.PerformSaveOperation
    ' Write the code to be run after saving here.
    eventObj.ReturnStatus = True
    End Sub
  4. निम्न में से कोई एक या दोनों कार्य करें:

    • InfoPath द्वारा प्रपत्र सहेजने के पहले चलने वाली कोई स्क्रिप्ट जोड़ने के लिए, टिप्पणी Write the code to be run before saving here. को आपके कोड से बदलें.

    • InfoPath द्वारा प्रपत्र सहेजने के बाद चलने वाली कोई स्क्रिप्ट जोड़ने के लिए, टिप्पणी Write the code to be run after saving here. को आपके कोड से बदलें.

  5. अपने परिवर्तनों का परीक्षण करने के लिए, मानक उपकरण पट्‍टी पर पूर्वावलोकन क्लिक करें, या CTRL+SHIFT+B दबाएँ.

    नोट: यदि ईवेंट हैंडलर केवल आपके द्वारा आपके प्रपत्र टेम्पलेट पर आधारित कोई प्रपत्र बनाने के बाद चलता है, तो फ़ाइल मेनू पर प्रकाशित करें क्लिक कर प्रपत्र टेम्पलेट प्रकाशित करें, और तब प्रकाशन विज़ार्ड पूर्ण करें. प्रपत्र टेम्पलेट प्रकाशित करने के बाद, कोई प्रपत्र बनाएँ और तब ईवेंट हैंडलर चलाने के लिए कोई क्रिया निष्पादित करें.

पृष्ठ का शीर्ष

किसी उपयोगकर्ता द्वारा प्रपत्र डेटा सबमिट किए जाने पर चलने वाली कोई स्क्रिप्ट जोड़ना

  1. उपकरण मेनू पर, सबमिट विकल्प क्लिक करें.

  2. सबमिट विकल्प संवाद बॉक्स में, उपयोगकर्ताओं को यह प्रपत्र सबमिट करने दें चेक बॉक्स का चयन करें.

  3. Perform custom action using Code क्लिक करें, और तब Edit Code क्लिक करें. Microsoft Script Editor OnSubmitRequest ईवेंट हैंडलर पर कर्सर के साथ प्रारंभ होता है.

    JScript

    //=======
    // The following function handler is created by Microsoft Office InfoPath.
    // Do not modify the name of the function, or the name and number of arguments.
    //=======
    function XDocument::OnSubmitRequest(eventObj)
    {
    // If the submit operation is successful, set
    // eventObj.ReturnStatus = true;
    // Write your code here
    }

    VBScript

    '=======
    ' The following function handler is created by Microsoft Office InfoPath.
    ' Do not modify the name of the function, or the name and number of arguments.
    '=======
    Sub XDocument_OnSubmitRequest(eventObj)
    ' If the submit operation is successful, set
    ' eventObj.ReturnStatus = True
    ' Write your code here
    End Sub
  4. टिप्पणी If the submit operation is successful, set eventObj.ReturnStatus = true Write your code here को आपके कोड से बदलें.

  5. अपने परिवर्तनों का परीक्षण करने के लिए, मानक उपकरण पट्‍टी पर पूर्वावलोकन क्लिक करें, या CTRL+SHIFT+B दबाएँ.

पृष्ठ का शीर्ष

किसी उपयोगकर्ता द्वारा कोई बटन क्लिक किए जाने पर चलने वाली कोई स्क्रिप्ट जोड़ना

  1. प्रपत्र टेम्पलेट में किसी दृश्य पर कोई नया बटन जोड़ें, और तब बटन को डबल-क्लिक करें.

    नोट: यदि आप किसी मौजूदा बटन पर स्क्रिप्ट जोड़ रहे हैं, तो इससके बजाय मौजूदा बटन को डबल-क्लिक करें.

  2. सामान्य टैब क्लिक करें.

  3. प्रपत्र कोड संपादित करें क्लिक करें. Microsoft Script Editor उस बटन के लिए OnClick ईवेंट हैंडलर पर कर्सर के साथ प्रारंभ होता है.

    JScript

    //=======
    // The following function handler is created by Microsoft Office InfoPath.
    // Do not modify the name of the function, or the name and number of arguments.
    //=======
    function Button Name::OnClick(eventObj)
    {
    // Write your code here
    }

    VBScript

    '=======
    ' The following function handler is created by Microsoft Office InfoPath.
    ' Do not modify the name of the function, or the name and number of arguments.
    '=======
    Sub Button Name_OnClick(eventObj)
    ' Write your code here
    End Sub
  4. टिप्पणी Write your code here को आपके कोड से बदलें.

  5. अपने परिवर्तनों का परीक्षण करने के लिए, मानक उपकरण पट्‍टी पर पूर्वावलोकन क्लिक करें, या CTRL+SHIFT+B दबाएँ.

पृष्ठ का शीर्ष

मौजूदा प्रपत्रों को मर्ज किए जाने पर चलने वाली कोई स्क्रिप्ट जोड़ना

  1. उपकरण मेनू पर, प्रपत्र विकल्प क्लिक करें.

  2. श्रेणी सूची में, प्रपत्र विकल्प संवाद बॉक्स में, उन्नत क्लिक करें.

  3. प्रपत्र मर्ज करें के तहत, प्रपत्र मर्जिंग सक्षम करें चेक बॉक्स का चयन करें.

  4. कस्टम कोड का उपयोग करके मर्ज करें चेक बॉक्स का चयन करें, और तब संपादन क्लिक करें. Microsoft Script Editor OnMergeRequest ईवेंट हैंडलर पर कर्सर के साथ प्रारंभ होता है.

    JScript

    //=======
    // The following function handler is created by Microsoft Office InfoPath.
    // Do not modify the name of the function, or the name and number of arguments.
    //=======
    function XDocument::OnMergeRequest(eventObj)
    {
    // Write the code that handles each form being merged here.
    XDocument.ImportDOM(eventObj.DOM);
    eventObj.ReturnStatus = true;
    }

    VBScript

    '=======
    ' The following function handler is created by Microsoft Office InfoPath.
    ' Do not modify the name of the function, or the name and number of arguments.
    '=======
    Sub XDocument_OnMergeRequest(eventObj)
    ' Write the code that handles each form being merged here.
    XDocument.ImportDOM(eventObj.DOM)
    eventObj.ReturnStatus = True
    End Sub
  5. टिप्पणी Write the code that handles each form being merged here. को आपके कोड से बदलें.

  6. इस ईवेंट में कोड का परीक्षण करने के लिए, प्रपत्र टेम्पलेट प्रकाशित करें, इस प्रपत्र टेम्पलेट पर आधारित कई प्रपत्र बनाएँ, और तब प्रपत्र टेम्पलेट्स को मर्ज करें.

    नोट: यह भी देखें अनुभाग में आपका प्रपत्र टेम्पलेट प्रकाशित करने के बारे में अधिक जानाकारी की लिंक्स ढूँढें.

पृष्ठ का शीर्ष

मौजूदा प्रपत्र अद्यतन करने के लिए कोई स्क्रिप्ट जोड़ना

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

  1. उपकरण मेनू पर, प्रपत्र विकल्प क्लिक करें.

  2. श्रेणी सूची में, प्रपत्र विकल्प संवाद बॉक्स में, वर्ज़निंग क्लिक करें.

  3. संस्करण नवीनीकरण पर सूची में, कस्टम ईवेंट का प्रयोग करें क्लिक करें, और तब संपादन क्लिक करें. Microsoft Script Editor OnVersionUpgrade ईवेंट हैंडलर पर कर्सर के साथ प्रारंभ होता है.

    JScript

    //=======
    // The following function handler is created by Microsoft Office InfoPath.
    // Do not modify the name of the function, or the name and number of arguments.
    //=======
    function XDocument::OnVersionUpgrade(eventObj)
    {
    // Write your code here
    }

    VBScript

    '=======
    ' The following function handler is created by Microsoft Office InfoPath.
    ' Do not modify the name of the function, or the name and number of arguments.
    '=======
    Sub XDocument_OnVersionUpgrade(eventObj)
    ' Write your code here
    End Sub
  4. टिप्पणी Write your code here को आपके कोड से बदलें.

  5. इस ईवेंट में कोड का परीक्षण करने के लिए, प्रपत्र टेम्पलेट प्रकाशित करें, इस प्रपत्र टेम्पलेट पर आधारित कई प्रपत्र बनाएँ, प्रपत्र टेम्पलेट का कोई अद्यतन संस्करण संशोधित और प्रकाशित करें, और तब इस प्रपत्र टेम्पलेट के पुराने संस्करण पर आधारित कोई मौजूदा प्रपत्र खोलें.

    नोट: यह भी देखें अनुभाग में आपका प्रपत्र टेम्पलेट प्रकाशित करने के बारे में अधिक जानाकारी की लिंक्स ढूँढें.

पृष्ठ का शीर्ष

अन्य ईवेंट्स के लिए कोई स्क्रिप्ट जोड़ना

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

  • OnAfterChange

  • OnBeforeChange

  • OnContextChange

  • OnLoad

  • OnSwitchView

  • OnSign

  • OnValidate

  • उपकरण मेनू पर, प्रोग्रामिंग इंगित करें, और तब ईवेंट हैंडलर जोड़ने के लिए ईवेंट क्लिक करें. Microsoft Script Editor आपके चयनित ईवेंट हैंडलर पर कर्सर के साथ प्रारंभ होता है.

  • टिप्पणी Write your code here को आपके कोड से बदलें.

पृष्ठ का शीर्ष

अपने कौशल का विस्तार करें
प्रशिक्षण का अन्वेषण करें
पहले नई सुविधाएँ प्राप्त करें
Office प्रतिभागी में शामिल हों

क्या यह जानकारी मददगार थी?

आपकी प्रतिक्रिया के लिए आपको धन्यवाद!

आपकी प्रतिक्रिया के लिए धन्यवाद! ऐसा लगता है आपको हमारे किसी Office सहायता एजेंट से कनेक्ट करना मददगार हो सकता है.

×