خدمات املاک

سرویس Properties به شما امکان می‌دهد داده‌های ساده را در جفت‌های کلید-مقدار با محدوده یک اسکریپت، یک کاربر از یک اسکریپت یا یک سند که در آن یک افزونه استفاده می‌شود، ذخیره کنید. معمولاً برای ذخیره تنظیمات برنامه‌نویس یا تنظیمات برگزیده کاربر استفاده می‌شود. ویژگی ها هرگز بین اسکریپت ها به اشتراک گذاشته نمی شوند.

برای مشاهده سهمیه‌های روزانه و محدودیت‌های فضای ذخیره‌سازی برای سرویس Properties، به سهمیه‌های خدمات Google مراجعه کنید.

مقایسه فروشگاه های املاک

شیء جهانی PropertiesService سه روش ارائه می دهد که هر کدام یک شیء Properties مشابه اما با حقوق دسترسی متفاوت را برمی گرداند، همانطور که در جدول زیر نشان داده شده است:

ویژگی های اسکریپت ویژگی های کاربر ویژگی های سند
روش دسترسی getScriptProperties() getUserProperties() getDocumentProperties()
داده های به اشتراک گذاشته شده بین همه کاربران یک اسکریپت، افزونه یا برنامه وب کاربر فعلی یک اسکریپت، افزونه یا برنامه وب همه کاربران یک افزونه در سند باز
به طور معمول برای استفاده می شود داده‌های پیکربندی گسترده برنامه، مانند نام کاربری و رمز عبور پایگاه داده خارجی برنامه‌نویس تنظیمات خاص کاربر، مانند واحدهای متریک یا امپریال داده‌های خاص سند، مانند URL منبع برای نمودار جاسازی شده

فرمت داده

سرویس Properties تمام داده ها را به صورت رشته ها در جفت های کلید-مقدار ذخیره می کند. انواع داده‌هایی که قبلاً رشته‌ای نیستند، به‌طور خودکار به رشته‌ها تبدیل می‌شوند، از جمله روش‌های موجود در اشیاء ذخیره‌شده.

ذخیره داده ها

برای ذخیره یک مقدار واحد، روش 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);
}

ویژگی های اسکریپت را به صورت دستی مدیریت کنید

می توانید به صورت دستی تا پنجاه ویژگی سفارشی را به عنوان رشته ها در جفت کلید-مقدار از صفحه تنظیمات پروژه اضافه کنید. برای افزودن بیش از پنجاه ویژگی، باید با استفاده از روش‌هایی که در بالا در Saving data توضیح داده شد، آنها را به صورت برنامه‌نویسی اضافه کنید. وقتی ویژگی های اسکریپت را از صفحه تنظیمات پروژه تنظیم می کنید، نمی توانید به متغیرهای اسکریپت ارجاع دهید.

ویژگی های اسکریپت را اضافه کنید

  1. پروژه Apps Script خود را باز کنید.
  2. در سمت چپ، روی تنظیمات پروژه کلیک کنید نماد تنظیمات پروژه .
  3. برای افزودن اولین ویژگی، در زیر ویژگی های اسکریپت ، روی افزودن ویژگی اسکریپت کلیک کنید.
  4. برای افزودن ویژگی‌های دوم و بعدی، در زیر ویژگی‌های اسکریپت، روی ویرایش ویژگی‌های اسکریپت > افزودن ویژگی اسکریپت کلیک کنید.
  5. برای Property ، نام کلید را وارد کنید.
  6. برای مقدار ، مقدار کلید را وارد کنید.
  7. (اختیاری) برای افزودن ویژگی های بیشتر، روی افزودن ویژگی اسکریپت کلیک کنید.
  8. روی ذخیره خصوصیات اسکریپت کلیک کنید.

ویژگی های اسکریپت را ویرایش کنید

  1. پروژه Apps Script خود را باز کنید.
  2. در سمت چپ، روی تنظیمات پروژه کلیک کنید نماد تنظیمات پروژه .
  3. در زیر ویژگی های اسکریپت ، روی ویرایش ویژگی های اسکریپت کلیک کنید.
  4. برای هر ویژگی که می خواهید تغییر دهید، نام کلید و مقدار کلید را تغییر دهید.
  5. روی ذخیره خصوصیات اسکریپت کلیک کنید.

ویژگی های اسکریپت را حذف کنید

  1. پروژه Apps Script خود را باز کنید.
  2. در سمت چپ، روی تنظیمات پروژه کلیک کنید نماد تنظیمات پروژه .
  3. در زیر ویژگی های اسکریپت ، روی ویرایش ویژگی های اسکریپت کلیک کنید.
  4. در کنار ویژگی که می‌خواهید حذف کنید، روی Remove کلیک کنید.
  5. روی ذخیره خصوصیات اسکریپت کلیک کنید.