Docs की ऐडवांस सेवा की मदद से, Apps Script में Google Docs API का इस्तेमाल किया जा सकता है. Apps Script की Docs सेवा की तरह ही, यह एपीआई स्क्रिप्ट को Google Docs में कॉन्टेंट पढ़ने, उसमें बदलाव करने, और उसे फ़ॉर्मैट करने की अनुमति देता है. ज़्यादातर मामलों में, डिवाइस में पहले से मौजूद सेवा को इस्तेमाल करना आसान होता है. हालांकि, इस ऐडवांस सेवा में कुछ अतिरिक्त सुविधाएं मिलती हैं.
रेफ़रंस
इस सेवा के बारे में ज़्यादा जानकारी के लिए, Docs API के रेफ़रंस दस्तावेज़ देखें. Apps Script में उपलब्ध सभी ऐडवांस सेवाओं की तरह, Docs की ऐडवांस सेवा भी सार्वजनिक एपीआई के ऑब्जेक्ट, तरीकों, और पैरामीटर का इस्तेमाल करती है. ज़्यादा जानकारी के लिए, तरीके के सिग्नेचर कैसे तय किए जाते हैं लेख पढ़ें.
समस्याओं की शिकायत करने और अन्य सहायता पाने के लिए, Docs API की सहायता गाइड देखें.
नमूना कोड
नीचे दिए गए सैंपल कोड में, एपीआई के वर्शन 1 का इस्तेमाल किया गया है.
दस्तावेज़ बनाएँ
यह सैंपल, एक नया दस्तावेज़ बनाता है.
टेक्स्ट ढूंढना और बदलना
यह सैंपल, किसी दस्तावेज़ के सभी टैब में टेक्स्ट के जोड़े ढूंढता है और उन्हें बदलता है. यह तब काम आ सकता है, जब आपको टेंप्लेट दस्तावेज़ की कॉपी में मौजूद प्लेसहोल्डर को डेटाबेस से मिली वैल्यू से बदलना हो.
टेक्स्ट डालना और उसे स्टाइल करना
इस सैंपल में, दस्तावेज़ के पहले टैब की शुरुआत में नया टेक्स्ट डाला जाता है. साथ ही, उसे किसी खास फ़ॉन्ट और साइज़ में स्टाइल किया जाता है. ध्यान दें कि जब भी हो सके, आपको कई कार्रवाइयों को एक साथ एक ही batchUpdate
कॉल में बैच करना चाहिए, ताकि बेहतर तरीके से काम किया जा सके.
पहला पैराग्राफ़ पढ़ो
यह सैंपल, दस्तावेज़ के पहले टैब के पहले पैराग्राफ़ के टेक्स्ट को लॉग करता है. Docs API में पैराग्राफ़ का स्ट्रक्चर तय होता है. इसलिए, इसमें कई सब-एलिमेंट के टेक्स्ट को एक साथ जोड़ा जाता है.
सबसे सही तरीके
बैच अपडेट
Docs की ऐडवांस सेवा का इस्तेमाल करते समय, कई अनुरोधों को एक ऐरे में मिलाएं. इसके बजाय, लूप में batchUpdate
को कॉल करें.
नहीं — batchUpdate
को लूप में कॉल करें.
var textToReplace = ['foo', 'bar'];
for (var i = 0; i < textToReplace.length; i++) {
Docs.Documents.batchUpdate({
requests: [{
replaceAllText: ...
}]
}, docId);
}
करो — अपडेट की एक सीरीज़ के साथ batchUpdate
को कॉल करो.
var requests = [];
var textToReplace = ['foo', 'bar'];
for (var i = 0; i < textToReplace.length; i++) {
requests.push({ replaceAllText: ... });
}
Docs.Documents.batchUpdate({
requests: requests
}, docId);