प्रॉपर्टी सेवा

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

प्रॉपर्टी सेवा के लिए, हर दिन के कोटे और स्टोरेज की सीमाएं देखने के लिए, 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
  console.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
  console.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');
  console.log('values of units %s', units);
} catch (err) {
  // TODO (developer) - Handle exception
  console.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) {
    console.log('Key: %s, Value: %s', key, data[key]);
  }
} catch (err) {
  // TODO (developer) - Handle exception
  console.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
  console.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
  console.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
  console.log('Failed with error %s', err.message);
}

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

प्रोजेक्ट सेटिंग पेज से, की-वैल्यू पेयर में स्ट्रिंग के तौर पर, ज़्यादा से ज़्यादा 50 कस्टम प्रॉपर्टी मैन्युअल तरीके से जोड़ी जा सकती हैं. अगर आपको 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. स्क्रिप्ट प्रॉपर्टी सेव करें पर क्लिक करें.