अगर स्क्रिप्ट को स्टैंडअलोन स्क्रिप्ट के बजाय किसी दस्तावेज़ से बनाया गया है, तो वह Google Sheets, Docs, Slides या Forms फ़ाइल से जुड़ी होती है. जिस फ़ाइल से बाउंड स्क्रिप्ट जुड़ी होती है उसे "कंटेनर" कहा जाता है. आम तौर पर, बाउंड स्क्रिप्ट, स्टैंडअलोन स्क्रिप्ट की तरह ही काम करती हैं. हालांकि, ये Google Drive में नहीं दिखती हैं. साथ ही, इन्हें उस फ़ाइल से अलग नहीं किया जा सकता जिससे ये बाउंड होती हैं. इसके अलावा, इन्हें पैरंट फ़ाइल के मुकाबले कुछ खास सुविधाएं भी मिलती हैं.
ध्यान दें कि स्क्रिप्ट को Google Sites से भी बंधा जा सकता है. हालांकि, इन स्क्रिप्ट को ज़्यादातर मामलों में वेब ऐप्लिकेशन के तौर पर डिप्लॉय किया जाता है. Google Sheets, Docs, Slides या Forms से जुड़ी स्क्रिप्ट, वेब ऐप्लिकेशन भी बन सकती हैं. हालांकि, ऐसा आम तौर पर नहीं होता.
बाउंड स्क्रिप्ट बनाना
Google Docs, Sheets या Slides
Google Docs, Sheets या Slides में बाउंड स्क्रिप्ट बनाने के लिए, Docs में कोई दस्तावेज़, Sheets में कोई स्प्रेडशीट या Slides में कोई प्रज़ेंटेशन खोलें. इसके बाद, एक्सटेंशन > Apps Script पर क्लिक करें. आने वाले समय में स्क्रिप्ट को फिर से खोलने के लिए, यही तरीका अपनाएं या Apps Script के डैशबोर्ड से स्क्रिप्ट खोलें.
Google Forms
Google Forms में बाउंड स्क्रिप्ट बनाने के लिए, कोई फ़ॉर्म खोलें और ज़्यादा > स्क्रिप्ट एडिटर पर क्लिक करें. आने वाले समय में स्क्रिप्ट को फिर से खोलने के लिए, यही तरीका अपनाएं या Apps Script डैशबोर्ड से स्क्रिप्ट खोलें.
खास तरीके
बाउंड स्क्रिप्ट, कुछ ऐसे तरीकों को कॉल कर सकती हैं जिन्हें स्टैंडअलोन स्क्रिप्ट नहीं कर सकतीं:
getActiveSpreadsheet()
,getActiveDocument()
,getActivePresentation()
, औरgetActiveForm()
के इस्तेमाल से, बाउंड स्क्रिप्ट, फ़ाइल के आईडी के बजाय अपनी पैरंट फ़ाइल को रेफ़र कर सकती हैं.getUi
की मदद से, बाउंड स्क्रिप्ट अपनी पैरंट फ़ाइल के यूज़र इंटरफ़ेस को ऐक्सेस कर सकती हैं, ताकि कस्टम मेन्यू, डायलॉग, और साइडबार जोड़े जा सकें.- Google Sheets में,
getActiveSheet()
,getActiveRange()
, औरgetActiveCell()
के ज़रिए, स्क्रिप्ट को उपयोगकर्ता की मौजूदा शीट, चुनी गई सेल की रेंज या चुनी गई किसी सेल का पता लगाने की अनुमति दें.setActiveSheet(sheet)
औरsetActiveRange(range)
के ज़रिए, स्क्रिप्ट को उन विकल्पों में बदलाव करने दें. - Google Docs में,
getActiveTab()
,getCursor()
, औरgetSelection()
के लिए, स्क्रिप्ट से उपयोगकर्ता के मौजूदा टैब, कर्सर की पोज़िशन या चुने गए टेक्स्ट का पता चलता है.setActiveTab(tabId)
,setCursor(position)
औरsetSelection(range)
के ज़रिए, स्क्रिप्ट को उन विकल्पों में बदलाव करने की अनुमति दें.
ज़्यादा जानकारी के लिए, Google Sheets का ऐक्सेस देने के बारे में गाइड या Google Docs का ऐक्सेस देने के बारे में गाइड देखें.
कस्टम मेन्यू, डायलॉग, और साइडबार
बाउंड की गई स्क्रिप्ट, Google Sheets, Docs, और Forms को पसंद के मुताबिक बना सकती हैं. इसके लिए, वे कस्टम मेन्यू और डायलॉग बॉक्स या साइडबार जोड़ती हैं. हालांकि, ध्यान रखें कि स्क्रिप्ट सिर्फ़ खुली फ़ाइल के मौजूदा इंस्टेंस के यूज़र इंटरफ़ेस के साथ इंटरैक्ट कर सकती है. इसका मतलब है कि किसी एक दस्तावेज़ से जुड़ी स्क्रिप्ट, किसी दूसरे दस्तावेज़ के यूज़र इंटरफ़ेस पर असर नहीं डाल सकती.
ट्रिगर
बाउंड स्क्रिप्ट में onOpen()
फ़ंक्शन जैसे साधारण ट्रिगर का इस्तेमाल किया जा सकता है. यह फ़ंक्शन, जब भी कोई उपयोगकर्ता बदलाव करने का ऐक्सेस लेकर फ़ाइल खोलता है, तो अपने-आप चलता है. सभी तरह की स्क्रिप्ट की तरह, ये भी इंस्टॉल किए जा सकने वाले ट्रिगर का इस्तेमाल कर सकती हैं.
कस्टम फ़ंक्शन
कस्टम फ़ंक्शन, Google Sheets से जुड़ी स्क्रिप्ट में मौजूद एक फ़ंक्शन होता है. इसे सीधे किसी सेल से, सिंटैक्स =myFunctionName()
का इस्तेमाल करके कॉल किया जाता है. इसलिए, कस्टम फ़ंक्शन, Sheets में मौजूद सैकड़ों बिल्ट-इन फ़ंक्शन जैसे कि AVERAGE
या SUM
जैसे ही होते हैं. हालांकि, कस्टम फ़ंक्शन के काम करने का तरीका, आपके तय करने पर निर्भर करता है.
बाउंड की गई स्क्रिप्ट का ऐक्सेस
जिन उपयोगकर्ताओं के पास कंटेनर में बदलाव करने की अनुमति है वे ही उसकी बाउंड स्क्रिप्ट चला सकते हैं. जिन लोगों के पास सिर्फ़ देखने का ऐक्सेस है वे स्क्रिप्ट एडिटर नहीं खोल सकते. हालांकि, अगर वे कंटेनर फ़ाइल की कॉपी बनाते हैं, तो वे कॉपी के मालिक बन जाते हैं. साथ ही, वे स्क्रिप्ट की कॉपी देख और चला सकते हैं.
स्क्रिप्ट की कंटेनर फ़ाइल शेयर करने का तरीका जानने के लिए, Google Drive से फ़ाइलें शेयर करना लेख पढ़ें.