कोडिंग का लेवल: शुरुआती
अवधि: 10 मिनट
प्रोजेक्ट का टाइप: कस्टम फ़ंक्शन
मकसद
- समझें कि समाधान क्या करता है.
- समझें कि Google Apps Script की सेवाएं, समाधान में क्या करती हैं.
- स्क्रिप्ट सेट अप करें.
- स्क्रिप्ट चलाएं.
इस समाधान के बारे में जानकारी
अगर आपने खरीदारों के लिए, कीमत तय करने का अलग-अलग लेवल वाला सिस्टम उपलब्ध कराया है, तो इस कस्टम फ़ंक्शन की मदद से, Google Sheets में अपनी कीमतों के लिए छूट की रकम का हिसाब आसानी से लगाया जा सकता है.
टियर के हिसाब से कीमत तय करने के लिए, SUMPRODUCT बिल्ट-इन फ़ंक्शन का इस्तेमाल किया जा सकता है. हालांकि, SUMPRODUCT का इस्तेमाल करना, इस समाधान के कस्टम फ़ंक्शन की तुलना में ज़्यादा मुश्किल है. साथ ही, यह कम फ़्लेक्सिबल है.

यह कैसे काम करता है
टियर के हिसाब से कीमत तय करने वाले मॉडल का मतलब है कि खरीदे गए सामान या सेवाओं की संख्या के आधार पर उनकी कीमत कम हो जाती है.
उदाहरण के लिए, मान लें कि आपके पास दो टियर हैं. एक टियर की रेंज 0 से 50,000 रुपये है और इस पर 10% की छूट दी जाती है. वहीं, दूसरे टियर की रेंज 50,100 से 1,00,000 रुपये है और इस पर 20% की छूट दी जाती है. अगर आपको 700 डॉलर की कुल कीमत पर छूट का हिसाब लगाना है, तो स्क्रिप्ट पहले 500 डॉलर को 10% से और बाकी 200 डॉलर को 20% से गुणा करती है. इस तरह, कुल छूट 90 डॉलर मिलती है.
किसी दी गई कुल कीमत के लिए, स्क्रिप्ट, टियर के हिसाब से कीमत तय करने वाली टेबल में दिए गए टियर के हिसाब से लूप करती है. कुल कीमत का जो हिस्सा किसी टियर में आता है उसे उस टियर से जुड़ी प्रतिशत वैल्यू से गुणा किया जाता है. नतीजा, हर टियर की कैलकुलेशन का कुल योग होता है.
Apps Script की सेवाएं
इस समाधान में, इस सेवा का इस्तेमाल किया जाता है:
- स्प्रेडशीट सेवा: यह दी गई वैल्यू को लेती है और यह हिसाब लगाती है कि वैल्यू के किस हिस्से को हर टियर के हिसाब से मिलने वाली छूट के प्रतिशत से गुणा करना है.
ज़रूरी शर्तें
इस सैंपल का इस्तेमाल करने के लिए, आपको इन ज़रूरी शर्तों को पूरा करना होगा:
- Google खाता (Google Workspace खातों के लिए, एडमिन की मंज़ूरी ज़रूरी हो सकती है).
- इंटरनेट ऐक्सेस करने की सुविधा वाला वेब ब्राउज़र.
स्क्रिप्ट सेट अप करना
टियर के हिसाब से कीमत तय करने वाले कस्टम फ़ंक्शन स्प्रेडशीट की कॉपी बनाने के लिए, इस बटन पर क्लिक करें:
इस समाधान के लिए Apps Script प्रोजेक्ट, स्प्रेडशीट से अटैच किया गया है.
स्क्रिप्ट चलाना
- कॉपी की गई आपकी स्प्रेडशीट में, 16वीं लाइन पर मौजूद टेबल में, सॉफ़्टवेयर एज़ अ सर्विस (एसएएएस) प्रॉडक्ट के लिए कीमत की गणना का सैंपल दिखाया गया है.
- छूट की रकम का हिसाब लगाने के लिए, सेल
C20में=tierPrice(C19,$B$3:$D$6)डालें. आखिरी कीमत, सेलC21में अपडेट हो जाती है. अगर आप ऐसी जगह पर हैं जहां दशमलव के लिए कॉमा का इस्तेमाल किया जाता है, तो आपको=tierPrice(C19;$B$3:$D$6)डालना पड़ सकता है.
कोड की समीक्षा करना
इस समाधान के लिए, Apps Script कोड की समीक्षा करने के लिए, सोर्स कोड देखें पर क्लिक करें:
सोर्स कोड देखें
Code.gs
बदलाव
अपनी ज़रूरतों के हिसाब से, कस्टम फ़ंक्शन में जितने चाहें उतने बदलाव किए जा सकते हैं. कस्टम फ़ंक्शन के नतीजों को मैन्युअल तरीके से रीफ़्रेश करने के लिए, यहां एक और विकल्प दिया गया है. इसे देखने के लिए, कैश किए गए नतीजों को रीफ़्रेश करें पर क्लिक करें:
कैश मेमोरी में सेव किए गए नतीजों को रीफ़्रेश करना
पहले से मौजूद फ़ंक्शन के उलट, Google कस्टम फ़ंक्शन को कैश मेमोरी में सेव करता है, ताकि परफ़ॉर्मेंस को ऑप्टिमाइज़ किया जा सके. इसलिए, अगर आपने कस्टम फ़ंक्शन में कोई बदलाव किया है, जैसे कि कैलकुलेट की जा रही कोई वैल्यू, तो हो सकता है कि वह तुरंत अपडेट न हो. फ़ंक्शन के नतीजे को मैन्युअल तरीके से रीफ़्रेश करने के लिए, यह तरीका अपनाएं:
- शामिल करें > चेकबॉक्स पर क्लिक करके, किसी खाली सेल में चेकबॉक्स जोड़ें.
- चेकबॉक्स वाली सेल को कस्टम फ़ंक्शन के अतिरिक्त पैरामीटर के तौर पर जोड़ें. उदाहरण के लिए, अगर आपको सेल
D20में कोई चेकबॉक्स जोड़ना है, तो सेलC20में मौजूदtierPrice()फ़ंक्शन को=tierPrice(C19,$B$3:$D$6,D20)पर अपडेट करें. - कस्टम फ़ंक्शन के नतीजों को रीफ़्रेश करने के लिए, चेकबॉक्स पर सही का निशान लगाएं या हटाएं.
योगदानकर्ता
इस सैंपल को Google, Google Developer के विशेषज्ञ की मदद से मैनेज करता है.