मैं स्प्रेडशीट के लिए कस्टम फ़ंक्शंस बनाने के लिए Google Apps स्क्रिप्ट का उपयोग करना चाहता हूं। मैंने एक बेहद सरल कार्य किया है:सेवा बहुत बार टाइम्स (Google Apps स्क्रिप्ट)
function foo(){
return "bar";
};
समस्या यह है कि मुझे इस कार्य को दो सौ कोशिकाओं में चाहिए। जब मैं इन सभी कक्षों में फ़ंक्शन =foo()
फ़ंक्शन पेस्ट करता हूं, तो फ़ंक्शन कुछ कक्षों में काम करता है, लेकिन अधिकांश में मुझे यह त्रुटि मिलती है: "सेवा कई बार आती है: स्प्रेडशीट। कॉल के बीच Utilities.sleep(1000)
आज़माएं।"
मुझे लगता है कि क्यों इस समारोह, सरल रूप में यह है, स्प्रेडशीट सेवा की एक मंगलाचरण माना जाता है मुझे समझ नहीं आता। मैं किसी भी डेटा का अनुरोध भी नहीं कर रहा हूं (फ़ंक्शन को छोड़कर)। क्या यह समस्या है? और यदि हां, तो क्या कोई कामकाज है? कस्टम फ़ंक्शंस Google स्प्रेडशीट्स को असीम रूप से अधिक शक्तिशाली बना सकता है, लेकिन यह समस्या एकाधिक कोशिकाओं में कस्टम फ़ंक्शन का उपयोग करने की संभावना को रोकती है। सुझाव?
(पी एस - के रूप में त्रुटि संदेश ने सुझाव दिया जब कोशिकाओं के सभी एक साथ उनके कार्यों फोन बिल्कुल मदद नहीं करता है Utilities.sleep()
समारोह का उपयोग करना;। यह केवल जिस दर पर व्यक्तिगत कोशिकाओं को बार-बार फ़ंक्शन को कॉल धीमा कर देती है)
मुझे लगता है कि
इस तरह आपके मामले मेंतो मुझे अपने प्रश्न में अपने अंतिम उद्देश्य के बारे में और अधिक पता होना चाहिए था। संक्षेप में, मैंने एक ऐसा फ़ंक्शन लिखा है जो "3 डी" योग (चादरों में एक योग) करता है।जबकि मुझे पता है कि आप अंतर्निहित कार्यों के साथ ऐसा कर सकते हैं, समस्या यह है कि मैं चादरें साप्ताहिक आधार पर जोड़ता हूं, जिसका अर्थ है कि मुझे नई शीट्स को शामिल करने के लिए उन कार्यों को वापस लेना और अपडेट करना होगा। जो मैं चाहता था वह सिर्फ एक ऐसा कार्य था जिसने सभी चादरों से मूल्यों को उठाया और हर हफ्ते समारोह को अपडेट किए बिना अपना योग वापस कर दिया। – jrc03c
और मेरे पास एक और सवाल है: मेरे प्रश्न में एक साधारण कार्य के लिए एक सर्वर आवश्यक क्यों है? इस तरह की साधारण चीजों को क्लाइंट-साइड की गणना क्यों नहीं की जा सकती और फिर कोशिकाओं में धक्का दिया जा सकता है (या कम से कम स्प्रेडशीट पर एचयूडी की तरह दिखाया गया है)? मैं मानता हूं कि यह प्रक्रिया सभी प्रकार की अनुमतियों और सुरक्षा प्रश्नों का कारण बनती है, लेकिन क्या Google Apps स्क्रिप्ट्स में पहले से ही उपयोगकर्ता डेटा के साथ झुकाव से पहले अनुमति मांगने की क्षमता नहीं है? – jrc03c
कृपया इस "3 डी" राशि की प्रकृति, या अधिक सहायता के लिए कुछ उदाहरण कोड के रूप में अधिक जानकारी प्रदान करें। Google Apps स्क्रिप्ट में जो कोड आप लिखते हैं वह अनिवार्य रूप से सर्वर-साइड कोड है। यह स्प्रेडशीट का हिस्सा नहीं है। मैं शर्त लगा रहा हूं कि यह एक सेवा की तरह काम करता है। प्रत्येक स्क्रिप्ट को अपना छोटा डेटाबेस दिया जाता है, इसमें सीपीयू भत्ते, टाइमआउट प्रतिबंध इत्यादि हैं। स्प्रेडशीट फ़ंक्शन के रूप में "' = "बार" 'का उपयोग करने के बजाय बहुत कुछ चल रहा है। भले ही, मुझे यकीन है कि एक तरीका है इन प्रतिबंधों को मारने के बिना अपना योग पूरा करने के लिए। – fooby