कोडिंग का लेवल: शुरुआती
अवधि: पांच मिनट
प्रोजेक्ट का टाइप: कस्टम फ़ंक्शन
मकसद
- समझें कि समाधान क्या करता है.
- समझें कि Apps Script की सेवाएं, समाधान में क्या करती हैं.
- स्क्रिप्ट सेट अप करें.
- स्क्रिप्ट चलाएं.
इस समाधान के बारे में जानकारी
अगर आपकी स्प्रेडशीट की कई शीट में एक जैसा स्ट्रक्चर वाला डेटा है, जैसे कि टीम के सदस्यों के लिए ग्राहक सहायता मेट्रिक, तो इस कस्टम फ़ंक्शन का इस्तेमाल करके हर शीट की खास जानकारी बनाई जा सकती है. यह समाधान, ग्राहक सहायता टिकट पर फ़ोकस करता है. हालांकि, अपनी ज़रूरतों के हिसाब से इसे बदला जा सकता है.
यह कैसे काम करता है
getSheetsData()
नाम का यह कस्टम फ़ंक्शन, स्प्रेडशीट की हर शीट से डेटा इकट्ठा करता है. यह डेटा, शीट के Status कॉलम के आधार पर इकट्ठा किया जाता है. यह स्क्रिप्ट उन शीट को अनदेखा करती है जिन्हें एग्रीगेशन में शामिल नहीं किया जाना चाहिए. जैसे, ReadMe और Summary शीट.
Apps Script की सेवाएं
इस समाधान में, इस सेवा का इस्तेमाल किया जाता है:
- Spreadsheet service–यह उन शीट को ऐक्सेस करती है जिनमें मौजूद डेटा की खास जानकारी देनी है. साथ ही, यह उन आइटम की संख्या का पता लगाती है जो किसी तय की गई स्ट्रिंग से मेल खाते हैं. इसके बाद, स्क्रिप्ट कैलकुलेट की गई जानकारी को उस रेंज में जोड़ती है जहां स्प्रेडशीट में कस्टम फ़ंक्शन को कॉल किया गया था.
ज़रूरी शर्तें
इस सैंपल का इस्तेमाल करने के लिए, आपको इन ज़रूरी शर्तों को पूरा करना होगा:
- Google खाता (Google Workspace खातों के लिए, एडमिन की अनुमति ज़रूरी हो सकती है).
- इंटरनेट ऐक्सेस करने की सुविधा वाला वेब ब्राउज़र.
स्क्रिप्ट सेट अप करना
स्प्रेडशीट डेटा की खास जानकारी देने वाले कस्टम फ़ंक्शन स्प्रेडशीट की कॉपी बनाने के लिए, नीचे दिए गए बटन पर क्लिक करें. इस समाधान के लिए Apps Script प्रोजेक्ट, स्प्रेडशीट से अटैच किया गया है.
कॉपी बनाएं
स्क्रिप्ट चलाना
- कॉपी की गई स्प्रेडशीट में, खास जानकारी शीट पर जाएं.
- सेल
A4
पर क्लिक करें. इस सेल मेंgetSheetsData()
फ़ंक्शन है. - मालिक की किसी शीट पर जाएं और शीट में डेटा अपडेट करें या जोड़ें. यहां दी गई कार्रवाइयां करके देखें:
- टिकट की जानकारी के साथ एक नई लाइन जोड़ें.
- स्टेटस कॉलम में जाकर, किसी मौजूदा टिकट का स्टेटस बदलें.
- स्थिति कॉलम की जगह बदलें. उदाहरण के लिए, मालिक1 शीट में, स्टेटस कॉलम को कॉलम C से कॉलम D में ले जाएं.
- खास जानकारी वाली शीट पर जाएं और अपडेट की गई खास जानकारी वाली टेबल देखें. यह टेबल,
A4
सेल सेgetSheetsData()
ने बनाई है. कस्टम फ़ंक्शन के कैश किए गए नतीजों को रीफ़्रेश करने के लिए, आपको 10वीं लाइन में मौजूद चेकबॉक्स पर सही का निशान लगाना पड़ सकता है. Google, कस्टम फ़ंक्शन को कैश मेमोरी में सेव करता है, ताकि परफ़ॉर्मेंस को ऑप्टिमाइज़ किया जा सके.- अगर आपने पंक्तियां जोड़ी हैं या उन्हें अपडेट किया है, तो स्क्रिप्ट टिकट और स्टेटस की संख्या को अपडेट करती है.
- अगर आपने स्टेटस कॉलम की जगह बदल दी है, तो स्क्रिप्ट अब भी नए कॉलम इंडेक्स के साथ काम करेगी.
कोड की समीक्षा करना
इस समाधान के लिए, Apps Script कोड की समीक्षा करने के लिए, यहां दिए गए सोर्स कोड देखें पर क्लिक करें:
सोर्स कोड देखें
Code.gs
बदलाव
अपनी ज़रूरतों के हिसाब से, कस्टम फ़ंक्शन में जितने चाहें उतने बदलाव किए जा सकते हैं. यहां कस्टम फ़ंक्शन के नतीजों को मैन्युअल तरीके से रीफ़्रेश करने के लिए, एक और विकल्प दिया गया है.
कैश मेमोरी में सेव किए गए नतीजों को रीफ़्रेश करना
पहले से मौजूद फ़ंक्शन के उलट, Google कस्टम फ़ंक्शन को कैश मेमोरी में सेव करता है, ताकि परफ़ॉर्मेंस को ऑप्टिमाइज़ किया जा सके. इसका मतलब है कि अगर आपने कस्टम फ़ंक्शन में कोई बदलाव किया है, जैसे कि कैलकुलेट की जा रही वैल्यू, तो हो सकता है कि वह तुरंत अपडेट न हो. फ़ंक्शन के नतीजे को मैन्युअल तरीके से रीफ़्रेश करने के लिए, यह तरीका अपनाएं:
- शामिल करें > चेकबॉक्स पर क्लिक करके, किसी खाली सेल में चेकबॉक्स जोड़ें.
- कस्टम फ़ंक्शन के पैरामीटर के तौर पर, उस सेल को जोड़ें जिसमें चेकबॉक्स है. उदाहरण के लिए,
getSheetsData(B11)
. - कस्टम फ़ंक्शन के नतीजों को रीफ़्रेश करने के लिए, चेकबॉक्स पर सही का निशान लगाएं या हटाएं.
योगदानकर्ता
इस सैंपल को Google, Google Developer Experts की मदद से मैनेज करता है.