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

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

प्रॉपर्टी सेवा के लिए रोज़ का कोटा और स्टोरेज की सीमाएं देखने के लिए, 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 कस्टम प्रॉपर्टी जोड़ी जा सकती हैं. पचास से ज़्यादा प्रॉपर्टी जोड़ने के लिए, आपको उन्हें ऊपर डेटा सेव करना सेक्शन में बताए गए तरीकों का इस्तेमाल करके, प्रोग्राम के हिसाब से जोड़ना होगा. प्रोजेक्ट सेटिंग पेज से स्क्रिप्ट प्रॉपर्टी सेट करने पर, स्क्रिप्ट वैरिएबल का रेफ़रंस नहीं दिया जा सकता.

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

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

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

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

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

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