fx शुरुआत
ENहिन्दी

स्क्रिप्ट एडिटर: bound बनाम standalone स्क्रिप्ट

⏱ 12 मिनट

आप क्या सीखेंगे

  • Apps Script editor के हिस्से
  • bound script और standalone script में फ़र्क़
  • पहली बार code चलाने पर permission (authorization) कैसे काम करता है

समझिए

दो तरह के scripts

Bound script — किसी एक file (Sheet, Doc, Form या Slides) से जुड़ा होता है।

  • file के अंदर से बनता है: Extensions → Apps Script।
  • "active" helpers जैसे SpreadsheetApp.getActiveSpreadsheet() इस्तेमाल कर सकता है।
  • उस file में custom menu जोड़ सकता है और onOpen / onEdit triggers चला सकता है।
  • कोई file की copy बनाए तो script भी साथ copy हो जाता है।

Standalone script — Drive में अपना अलग project।

  • script.google.com → New project से बनता है।
  • किसी file से जुड़ा नहीं, इसलिए files को ID से खोलता है: SpreadsheetApp.openById('...')।
  • कई files पर काम करने वाले jobs या web apps के लिए अच्छा।

आसान नियम: automation एक spreadsheet का है तो bound script लें। अगर tool कई files पर काम करता है तो standalone लें।

Editor की सैर

हिस्सा क्या करता है
Files (बाएँ) .gs files में code; .html files में dialogs और web apps के pages। + से और जोड़ें।
Libraries / Services shared libraries या advanced Google services (जैसे Drive API) जोड़ें।
Function dropdown + Run कौन-सा function चलाना है चुनें, फिर Run दबाएँ।
Debug breakpoints के साथ step-by-step चलाएँ।
Execution log मौजूदा run का console.log / Logger.log output दिखाता है।
Triggers (घड़ी icon) functions को schedule करें या events पर चलाएँ।
Executions (list icon) हर run का इतिहास — status और errors के साथ।
Project Settings (gear) time zone, runtime और Script Properties (keys और settings के लिए)।
Deploy web app, add-on या API executable के रूप में publish करें।

Authorization: पहली बार का permission

कोई script पहली बार किसी service (Sheets, Gmail, Drive…) को इस्तेमाल करता है तो Google permission माँगता है:

  1. Review permissions पर click करें और अपना account चुनें।
  2. अपने scripts के लिए "Google hasn't verified this app" दिख सकता है। Advanced → Go to (project name) पर click करें। personal scripts के लिए यह सामान्य है — लेकिन ऐसा सिर्फ़ उसी code के लिए करें जो आपने लिखा है या जिस पर भरोसा है।
  3. Allow पर click करें।

बाद में code में कोई नई service जोड़ेंगे तो Google फिर पूछेगा।

Time zone सेट करें

Project Settings में time zone (GMT+05:30) India Standard Time (या अपना) सेट करें। तारीख़ें और समय-आधारित triggers इसी setting पर चलते हैं — "trigger ग़लत समय पर चला" की आम वजह ग़लत time zone होती है।

करके देखें: standalone script से शीट खोलें

function readFromAnotherFile() {
  // Copy the ID from the sheet URL: docs.google.com/spreadsheets/d/<THIS_PART>/edit
  const ss = SpreadsheetApp.openById('PASTE_SHEET_ID_HERE');
  const name = ss.getName();
  console.log('Opened: ' + name);
}

मुख्य बातें

  • Bound = एक file के अंदर; standalone = अपना अलग project।
  • Standalone scripts files को "active" से नहीं, ID से खोलते हैं।
  • कुछ काम न करे तो Executions देखें — error वहीं दर्ज होता है।

अभ्यास

अभ्यासअभ्यास 1

एक standalone project बनाइए, अपनी किसी शीट को ID से खोलिए और log कीजिए कि उसमें कितने tabs हैं। Hint: ss.getSheets().length।

प्रश्नोत्तरी

कौन-सा script spreadsheet में custom menu जोड़ सकता है? a) Bound script b) Standalone script c) कोई नहीं
Bound script
पुराने runs का इतिहास कहाँ दिखता है? a) Libraries b) Executions c) Deploy
Executions
स्क्रिप्ट एडिटर: bound बनाम standalone स्क्रिप्ट · हिंदी | ExcelWalaa