प्रॉपर्टी सर्विस

प्रॉपर्टी सेवा की मदद से, की-वैल्यू पेयर में आसान डेटा को स्टोर किया जा सकता है. इसका इस्तेमाल एक स्क्रिप्ट, स्क्रिप्ट के एक उपयोगकर्ता या किसी ऐसे दस्तावेज़ में किया जा सकता है जिसमें ऐड-ऑन का इस्तेमाल किया गया है. आम तौर पर, इसका इस्तेमाल डेवलपर कॉन्फ़िगरेशन या उपयोगकर्ता की प्राथमिकताओं को सेव करने के लिए किया जाता है. प्रॉपर्टी को स्क्रिप्ट के बीच कभी शेयर नहीं किया जाता.

प्रॉपर्टी की सेवा के लिए हर दिन के कोटा और स्टोरेज की सीमाएं देखने के लिए, Google की सेवाओं के लिए कोटा देखें.

प्रॉपर्टी स्टोर की तुलना

PropertiesService ग्लोबल ऑब्जेक्ट तीन तरीके देता है. हर ऑब्जेक्ट एक मिलता-जुलता Properties ऑब्जेक्ट दिखाता है, लेकिन अलग-अलग ऐक्सेस अधिकार देता है, जैसा कि इस टेबल में दिखाया गया है:

स्क्रिप्ट गुण उपयोगकर्ता प्रॉपर्टी दस्तावेज़ गुण
ऐक्सेस करने का तरीका getScriptProperties() getUserProperties() getDocumentProperties()
इनके बीच शेयर किया गया डेटा किसी स्क्रिप्ट, ऐड-ऑन या वेब ऐप्लिकेशन के सभी उपयोगकर्ता स्क्रिप्ट, ऐड-ऑन या वेब ऐप्लिकेशन का मौजूदा उपयोगकर्ता खुले दस्तावेज़ में किसी ऐड-ऑन के सभी उपयोगकर्ता
आम तौर पर, इनके लिए इस्तेमाल होता है पूरे ऐप्लिकेशन के लिए कॉन्फ़िगरेशन डेटा, जैसे कि डेवलपर के बाहरी डेटाबेस के लिए उपयोगकर्ता नाम और पासवर्ड उपयोगकर्ता के लिए खास सेटिंग, जैसे कि मेट्रिक या इंपीरियल यूनिट दस्तावेज़ के हिसाब से डेटा, जैसे कि एम्बेड किए गए चार्ट का स्रोत यूआरएल

डेटा फ़ॉर्मैट

प्रॉपर्टी सेवा, सभी डेटा को की-वैल्यू पेयर में स्ट्रिंग के तौर पर स्टोर करती है. जो डेटा टाइप पहले से स्ट्रिंग नहीं हैं वे अपने-आप स्ट्रिंग में बदल जाते हैं. इनमें सेव किए गए ऑब्जेक्ट में शामिल मेथड शामिल हैं.

डेटा सेव हो रहा है

किसी एक वैल्यू को सेव करने के लिए, सही स्टोर के Properties.setProperty(key, value) तरीके को कॉल करें, जैसा कि इस उदाहरण में दिखाया गया है:

Service/propertyService.gs
try {
  // Set a property in each of the three property stores.
  const scriptProperties = PropertiesService.getScriptProperties();
  const userProperties = PropertiesService.getUserProperties();
  const documentProperties = PropertiesService.getDocumentProperties();

  scriptProperties.setProperty('SERVER_URL', 'http://www.example.com/');
  userProperties.setProperty('DISPLAY_UNITS', 'metric');
  documentProperties.setProperty('SOURCE_DATA_ID',
      '1j3GgabZvXUF177W0Zs_2v--H6SPCQb4pmZ6HsTZYT5k');
} catch (err) {
  // TODO (developer) - Handle exception
  Logger.log('Failed with error %s', err.message);
}

एक साथ कई डेटा सेव करने के लिए, की-वैल्यू पेयर का मैप Properties.setProperties(properties) को पास करें. पैरामीटर में ऑब्जेक्ट के हर की-वैल्यू पेयर को एक अलग प्रॉपर्टी के तौर पर स्टोर किया जाता है:

Service/propertyService.gs
try {
  // Set multiple script properties in one call.
  const scriptProperties = PropertiesService.getScriptProperties();
  scriptProperties.setProperties({
    'cow': 'moo',
    'sheep': 'baa',
    'chicken': 'cluck'
  });
} catch (err) {
  // TODO (developer) - Handle exception
  Logger.log('Failed with error %s', err.message);
}

डेटा पढ़ना

पहले सेव की गई वैल्यू को वापस पाने के लिए, Properties.getProperty(key) पर कॉल करें:

Service/propertyService.gs
try {
  // Get the value for the user property 'DISPLAY_UNITS'.
  const userProperties = PropertiesService.getUserProperties();
  const units = userProperties.getProperty('DISPLAY_UNITS');
  Logger.log('values of units %s', units);
} catch (err) {
  // TODO (developer) - Handle exception
  Logger.log('Failed with error %s', err.message);
}

मौजूदा प्रॉपर्टी स्टोर की सभी वैल्यू वापस पाने के लिए, Properties.getProperties() पर कॉल करें:

Service/propertyService.gs
try {
  // Get multiple script properties in one call, then log them all.
  const scriptProperties = PropertiesService.getScriptProperties();
  const data = scriptProperties.getProperties();
  for (const key in data) {
    Logger.log('Key: %s, Value: %s', key, data[key]);
  }
} catch (err) {
  // TODO (developer) - Handle exception
  Logger.log('Failed with error %s', err.message);
}

डेटा में बदलाव करना

getProperty() और getProperties() तरीकों से, स्टोर किए गए डेटा की कॉपी मिलती है, न कि लाइव व्यू की. इसलिए, रिटर्न किए गए ऑब्जेक्ट में बदलाव करने पर, प्रॉपर्टी स्टोर में कोई वैल्यू अपडेट नहीं होती. स्टोर में डेटा अपडेट करने के लिए, बस उसे फिर से सेव करें:

Service/propertyService.gs
try {
  // Change the unit type in the user property 'DISPLAY_UNITS'.
  const userProperties = PropertiesService.getUserProperties();
  let units = userProperties.getProperty('DISPLAY_UNITS');
  units = 'imperial'; // Only changes local value, not stored value.
  userProperties.setProperty('DISPLAY_UNITS', units); // Updates stored value.
} catch (err) {
  // TODO (developer) - Handle exception
  Logger.log('Failed with error %s', err.message);
}

डेटा हटाना

एक वैल्यू को मिटाने के लिए, Properties.deleteProperty(key) पर कॉल करें:

Service/propertyService.gs
try {
  // Delete the user property 'DISPLAY_UNITS'.
  const userProperties = PropertiesService.getUserProperties();
  userProperties.deleteProperty('DISPLAY_UNITS');
} catch (err) {
  // TODO (developer) - Handle exception
  Logger.log('Failed with error %s', err.message);
}

मौजूदा स्टोर की सभी प्रॉपर्टी मिटाने के लिए, Properties.deleteAllProperties() को कॉल करें:

Service/propertyService.gs
try {
  // Get user properties in the current script.
  const userProperties = PropertiesService.getUserProperties();
  // Delete all user properties in the current script.
  userProperties.deleteAllProperties();
} catch (err) {
  // TODO (developer) - Handle exception
  Logger.log('Failed with error %s', err.message);
}

स्क्रिप्ट प्रॉपर्टी को मैन्युअल तरीके से मैनेज करें

आप प्रोजेक्ट सेटिंग पेज पर जाकर, मैन्युअल तौर पर ज़्यादा से ज़्यादा 50 कस्टम प्रॉपर्टी जोड़ सकते हैं. जैसे, की-वैल्यू पेयर में स्ट्रिंग. पचास से ज़्यादा प्रॉपर्टी जोड़ने के लिए, आपको ऊपर बताए गए तरीके से डेटा सेव करना में बताए गए तरीके का इस्तेमाल करना होगा. प्रोजेक्ट सेटिंग पेज से स्क्रिप्ट प्रॉपर्टी सेट करने पर, स्क्रिप्ट वैरिएबल का रेफ़रंस नहीं दिया जा सकता.

स्क्रिप्ट प्रॉपर्टी जोड़ें

  1. अपना Apps Script प्रोजेक्ट खोलें.
  2. बाईं ओर, प्रोजेक्ट सेटिंग प्रोजेक्ट सेटिंग का आइकॉन पर क्लिक करें.
  3. पहली प्रॉपर्टी जोड़ने के लिए, स्क्रिप्ट प्रॉपर्टी में जाकर स्क्रिप्ट प्रॉपर्टी जोड़ें पर क्लिक करें.
  4. दूसरी और उसके बाद की प्रॉपर्टी जोड़ने के लिए, स्क्रिप्ट प्रॉपर्टी में जाकर स्क्रिप्ट प्रॉपर्टी में बदलाव करें > स्क्रिप्ट प्रॉपर्टी जोड़ें पर क्लिक करें.
  5. प्रॉपर्टी के लिए कुंजी का नाम डालें.
  6. वैल्यू के लिए, कुंजी के लिए वैल्यू डालें.
  7. (ज़रूरी नहीं) ज़्यादा प्रॉपर्टी जोड़ने के लिए, स्क्रिप्ट प्रॉपर्टी जोड़ें पर क्लिक करें.
  8. स्क्रिप्ट प्रॉपर्टी सेव करें पर क्लिक करें.

स्क्रिप्ट प्रॉपर्टी में बदलाव करें

  1. अपना Apps Script प्रोजेक्ट खोलें.
  2. बाईं ओर, प्रोजेक्ट सेटिंग प्रोजेक्ट सेटिंग का आइकॉन पर क्लिक करें.
  3. स्क्रिप्ट प्रॉपर्टी में जाकर, स्क्रिप्ट प्रॉपर्टी में बदलाव करें पर क्लिक करें.
  4. आपको जिस प्रॉपर्टी को बदलना है उसके मुख्य नाम और वैल्यू में बदलाव करें.
  5. स्क्रिप्ट प्रॉपर्टी सेव करें पर क्लिक करें.

स्क्रिप्ट प्रॉपर्टी मिटाएं

  1. अपना Apps Script प्रोजेक्ट खोलें.
  2. बाईं ओर, प्रोजेक्ट सेटिंग प्रोजेक्ट सेटिंग का आइकॉन पर क्लिक करें.
  3. स्क्रिप्ट प्रॉपर्टी में जाकर, स्क्रिप्ट प्रॉपर्टी में बदलाव करें पर क्लिक करें.
  4. आपको जिस प्रॉपर्टी को मिटाना है उसके बगल में मौजूद, हटाएं पर क्लिक करें.
  5. स्क्रिप्ट प्रॉपर्टी सेव करें पर क्लिक करें.