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