ONLYOFFICE डॉक्स में JavaScript मैक्रो कैसे लिखें


क्या आपको Word दस्तावेज़ों, एक्सेल स्प्रेडशीट या PowerPoint प्रस्तुतियों के साथ काम करना पड़ता है और जटिल कार्यों को बार-बार दोहराना पड़ता है? उदाहरण के लिए, आपको किसी शीट में डुप्लीकेट मानों को हाइलाइट करना होगा या किसी प्रस्तुति की स्लाइड्स से आकृतियों को निकालना होगा।

यदि ऐसा है, तो एक लिनक्स उपयोगकर्ता के रूप में यह आपके लिए चुनौतीपूर्ण हो सकता है। ऐसे कार्यों को मैन्युअल रूप से करना अर्थहीन है। Microsoft Office में VBA मैक्रोज़ के साथ कई अलग-अलग ऑपरेशन आसानी से स्वचालित रूप से किए जा सकते हैं। हालाँकि, एक गंभीर समस्या है - वे मूल रूप से लिनक्स मशीनों पर नहीं चलती हैं।

हालाँकि, इस समस्या का एक सरल समाधान है। नीरस संचालन करने के लिए आप ONLYOFFICE डॉक्स में जावास्क्रिप्ट मैक्रोज़ लिख और चला सकते हैं।

कैसे पता लगाने के लिए इस लेख को पढ़ें।

विषयसूची

ONLYOFFICE डॉक्स क्या है?

ONLYOFFICE डॉक्स एक ओपन-सोर्स और सेल्फ-होस्टेड ऑफिस सूट है जिसे लिनक्स या विंडोज सर्वर पर स्थानीय सहयोगी वातावरण बनाने के लिए डिज़ाइन किया गया है।

यह बड़ी संख्या में फ़ाइल-साझाकरण समाधानों, ई-लर्निंग प्लेटफ़ॉर्म और दस्तावेज़ प्रबंधन प्रणालियों के लिए रीयल-टाइम दस्तावेज़ संपादन और सह-लेखन का लाभ लाता है।

वर्तमान में, यह Moodle, Drupal और अन्य सॉफ़्टवेयर के साथ संगत है। GitHub पर उपलब्ध रेडी-टू-यूज़ कनेक्टर के माध्यम से एकीकरण संभव है।

ONLYOFFICE डॉक्स का उपयोग करके, आप सभी लोकप्रिय प्रकार की कार्यालय फ़ाइलों के साथ काम कर सकते हैं, जिनमें टेक्स्ट दस्तावेज़, स्प्रेडशीट, भरने योग्य फ़ॉर्म, स्लाइड और PDF शामिल हैं।

ONLYOFFICE डॉक्स का मूल स्वरूप OOXML (DOCX, XLSX, PPTX) है, इसलिए यह Linux मशीनों पर Microsoft Office को आसानी से बदल सकता है। अन्य लोकप्रिय प्रारूप, जैसे ओडीएफ, ओओएक्सएमएल में स्वत: रूपांतरण के माध्यम से समर्थित हैं।

इसके स्व-होस्ट किए गए संस्करण के अलावा, ONLYOFFICE डॉक्स के पास व्यक्तिगत उपयोग के लिए निःशुल्क क्लाउड संस्करण है। साथ ही, विंडोज, मैकओएस, लिनक्स, एंड्रॉइड और आईओएस सहित सभी लोकप्रिय डेस्कटॉप और मोबाइल प्लेटफॉर्म के लिए मुफ्त ऐप हैं।

जब कार्य स्वचालन की बात आती है, तो ONLYOFFICE डॉक्स Microsoft के VBA मैक्रोज़ के साथ संगत नहीं है। यह जावास्क्रिप्ट मैक्रोज़ का उपयोग करता है जो समान संचालन को अधिक सुरक्षित तरीके से करने में सक्षम हैं।

ONLYOFFICE डॉक्स के लिए मैक्रोज़ के साथ शुरुआत करना

मैक्रो एक छोटी स्क्रिप्ट होती है जो एक निश्चित कार्य को स्वचालित करके विभिन्न प्रकार के दस्तावेज़ों के साथ काम करना आसान बनाती है। दूसरे शब्दों में, यह प्रोग्रामिंग कोड का एक टुकड़ा है जिसमें क्रियाओं का एक सेट होता है जिसे आप जितनी बार चाहें उतनी बार चला सकते हैं।

उदाहरण के लिए, आप अपनी स्प्रैडशीट में विभिन्न रंगों के साथ चयनित क्षेत्र में डुप्लिकेट को हाइलाइट करने के लिए संबंधित मैक्रो चला सकते हैं।

ONLYOFFICE डॉक्स में, यह ऐसा दिखता है:

इस मैक्रो की व्यावहारिक उपयोगिता क्या है? डेटा के साथ काम करते समय, आप जितनी बार चाहें डुप्लिकेट मानों को हाइलाइट करने के लिए संबंधित बटन पर क्लिक करके सेकंड के भीतर सहेजे गए मैक्रो को चला सकते हैं, जिससे आपका समय बचेगा।

ONLYOFFICE डॉक्स में, मैक्रोज़ JavaScript सिंटैक्स और ONLYOFFICE दस्तावेज़ बिल्डर की API विधियों पर आधारित होते हैं। कुछ स्पष्ट कारण हैं कि वे VBA मैक्रोज़ से बेहतर क्यों हैं:

  • ONLYOFFICE मैक्रोज़ क्रॉस-प्लेटफ़ॉर्म हैं - विजुअल बेसिक के विपरीत, जावास्क्रिप्ट एक अधिक सामान्य प्रोग्रामिंग भाषा है। इसलिए, जावास्क्रिप्ट मैक्रोज़ विंडोज, लिनक्स और मैकओएस प्लेटफॉर्म पर आसानी से चल सकते हैं।
  • ONLYOFFICE मैक्रोज़ उपयोग में आसान हैं - जावास्क्रिप्ट को अक्सर नौसिखियों के लिए अनुशंसित किया जाता है और इसमें तेजी से बढ़ने वाला समुदाय है। बहुत से लोग जावास्क्रिप्ट को अपनी पहली प्रोग्रामिंग भाषा के रूप में चुनते हैं क्योंकि इंटरनेट पर बहुत सारे विस्तृत ट्यूटोरियल और गाइड हैं।
  • ONLYOFFICE मैक्रोज़ सुरक्षित हैं - ONLYOFFICE मैक्रोज़ का जावास्क्रिप्ट कोड संपादकों के समान विंडो में चलता है। इसलिए, हमलावरों द्वारा आपके सिस्टम से समझौता करने के लिए उनका उपयोग नहीं किया जा सकता क्योंकि उनकी उस तक पहुंच नहीं है।

ONLYOFFICE मैक्रो, ONLYOFFICE दस्तावेज़ निर्माता के JavaScript सिंटैक्स और API विधियों का एक संयोजन है।

ONLYOFFICE दस्तावेज़ बिल्डर एक C++ लाइब्रेरी है जिसका उपयोग Office Open XML फ़ाइलों को बनाने और संपादित करने के साथ-साथ गैर-OOXML फ़ाइलों को DOCX, XSLX, PPTX, और PDF स्वरूपों में सहेजने के लिए किया जाता है। यह जावास्क्रिप्ट एपीआई के साथ काम करता है।

बहुत सारे ONLYOFFICE API तरीके हैं, और आप उनमें से अधिकांश का उपयोग करने की संभावना नहीं रखते हैं। ये कुछ व्यावहारिक उदाहरण हैं:

  • SetFillColor पद्धति को वर्तमान सेल श्रेणी के पृष्ठभूमि रंग को पहले बनाए गए रंग ऑब्जेक्ट के रंग में बदलने के लिए डिज़ाइन किया गया है।
  • GetValue पद्धति निर्दिष्ट श्रेणी का मान लौटाती है।
  • GetSlideByIndex पद्धति किसी स्लाइड को प्रस्तुतिकरण में उसके स्थान पर लौटाती है।
  • और भी बहुत कुछ।

सभी ONLYOFFICE API विधियों का विस्तृत विवरण और वे क्या करते हैं, आधिकारिक दस्तावेज में पाया जा सकता है।

ONLYOFFICE डॉक्स में, मैक्रोज़ को शीर्ष टूलबार पर एक विशेष प्लगइन के माध्यम से बनाया और हटाया जा सकता है। इसे एक्सेस करने के लिए, प्लगइन्स टैब खोलें और मैक्रोज़ बटन पर क्लिक करें। आपको एक विंडो दिखाई देगी जहां आप अपने मैक्रोज़ के लिए जावास्क्रिप्ट कोड लिख सकेंगे।

संबंधित बटनों का उपयोग करके, आप नए मैक्रो बना सकते हैं और मौजूदा को हटा सकते हैं। आपको मैक्रोज़ का नाम बदलने और यहां तक कि ऑटोस्टार्ट सुविधा को सक्रिय करने की भी अनुमति है।

अब जब आप समझ गए हैं कि ONLYOFFICE मैक्रो कैसे काम करते हैं, तो चलिए एक लिखते हैं। शुरू करने से पहले, यह तय करना आवश्यक है कि यह हमारे मैक्रो के साथ कौन सा कार्य करने जा रहा है।

आइए कुछ सरल से शुरू करें और कल्पना करें कि हमें अपने एक्सेल वर्कशीट में सेल की पृष्ठभूमि का रंग बदलने की आवश्यकता है। यह कार्य केक का टुकड़ा है लेकिन हम जो मैक्रो बनाने जा रहे हैं, वह इसे बहुत आसान बना देगा।

आरंभ करने के लिए, प्लगइन्स टैब पर जाएं और मैक्रोज़ पर क्लिक करें। यदि आप इस विंडो को पहली बार खोलते हैं, तो आपको वहां पहले से बना हुआ मैक्रो मिलेगा। हालाँकि, इस मैक्रो में कोई जावास्क्रिप्ट कोड नहीं होगा। आप जो देखेंगे वह एक साधारण फंक्शन रैपर है:

(function()
{
    // ... your code here ...
})();

यदि आवश्यक हो तो अपने मैक्रो का नाम बदलें।

अब आप अपना कोड लिखना शुरू कर सकते हैं। ONLYOFFICE दस्तावेज़ बिल्डर एपीआई प्रलेखन से परामर्श करने के बाद, जिसका उल्लेख पिछले अध्याय में पहले ही किया जा चुका है, आप जानेंगे कि आपके मैक्रो के लिए निम्नलिखित विधियों का उपयोग किया जाना चाहिए:

  • सक्रिय शीट प्राप्त करने के लिए Api.GetActiveSheet विधि।
  • आवश्यक सीमा निर्धारित करने के लिए GetRange विधि।
  • आवश्यक सेल की पृष्ठभूमि का रंग सेट करने के लिए SetFillColor विधि।
  • वांछित रंग सेट करने के लिए Api.CreateColorFromRGB

सबसे पहले, आपको सक्रिय शीट प्राप्त करने और संबंधित विधियों को टाइप करके आवश्यक श्रेणी सेट करने की आवश्यकता है आइए सेल A2 को लक्षित करें। फ़ंक्शन रैपर में विधियों के नाम टाइप करना प्रारंभ करें, और आप सभी उपलब्ध टूलटिप्स देखेंगे, जो बहुत सुविधाजनक है।

फिर, आपको वर्तमान सेल की पृष्ठभूमि का रंग सेट करना होगा। ऐसा करने के लिए, SetFillColor विधि का उपयोग करें। Api.CreateColorFromRGB विधि आपको अपना पसंदीदा रंग सेट करने देगी। आपका कोड इस प्रकार होना चाहिए:

(function()
{
    // Api.GetActiveSheet().GetRange("A2").SetFillColor(Api.CreateColorFromRGB(0, 0, 210));
})();

अब मैक्रो चलाने और परिणाम देखने का समय आ गया है। रन बटन पर क्लिक करने के बाद, आप देखेंगे कि सेल A2 रंगीन है। आप Api.CreateColorFromRGB पद्धति में मान बदलकर विभिन्न रंगों के साथ खेल सकते हैं।

यदि आप ONLYOFFICE मैक्रोज़ बनाने के लिए जावास्क्रिप्ट कोडिंग की मूल बातें नहीं सीखना चाहते हैं, तो आप हमेशा आधिकारिक वेबसाइट से तैयार मैक्रो उदाहरणों का उपयोग कर सकते हैं और उन्हें अपनी आवश्यकताओं के अनुसार संशोधित कर सकते हैं।

जैसा कि आप देख सकते हैं, ONLYOFFICE डॉक्स में मैक्रोज़ बनाना उतना मुश्किल नहीं है जितना पहली नज़र में लगता है। बेशक, दर्जनों कोड लाइनों के साथ जटिल मैक्रोज़ बनाने के लिए आपको जावास्क्रिप्ट कोडिंग के मूल सिद्धांतों को जानना होगा।

हालाँकि, दिन-प्रतिदिन की नियमित गतिविधियों के लिए सरल मैक्रोज़ बनाने के लिए आपको जावास्क्रिप्ट गुरु होने की आवश्यकता नहीं है। अपने स्वयं के प्लगइन्स बनाने का प्रयास करते समय आप मूल सिद्धांतों को सीख सकते हैं।

महत्वपूर्ण बात यह है कि ONLYOFFICE कार्यालय सुइट विस्तृत एपीआई प्रलेखन और तैयार-से-उपयोग के उदाहरणों के साथ मैक्रो बनाने की प्रक्रिया को यथासंभव सरल बनाने के लिए आता है।