خدمات املاک

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

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

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

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

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

قالب داده

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

ذخیره داده

برای ذخیره یک مقدار واحد، متد Properties.setProperty(key, value) را از حافظه‌ی مربوطه فراخوانی کنید، همانطور که در مثال زیر نشان داده شده است:

سرویس/ویژگیService.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.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 را فراخوانی کنید:

سرویس/ویژگیService.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.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.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 را فراخوانی کنید:

سرویس/ویژگیService.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.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);
}

مدیریت دستی ویژگی‌های اسکریپت

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

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

  1. پروژه اسکریپت گوگل اپس خود را باز کنید.
  2. در سمت چپ، روی تنظیمات پروژه کلیک کنید آیکون مربوط به تنظیمات پروژه .
  3. برای افزودن اولین ویژگی، در قسمت Script Properties روی Add script property کلیک کنید.
  4. برای افزودن ویژگی‌های دوم و بعدی، در بخش «ویژگی‌های اسکریپت» روی «ویرایش ویژگی‌های اسکریپت» > «افزودن ویژگی اسکریپت» کلیک کنید.
  5. برای Property ، نام کلید را وارد کنید.
  6. برای Value ، مقدار مربوط به کلید را وارد کنید.
  7. (اختیاری) برای افزودن ویژگی‌های بیشتر، روی افزودن ویژگی اسکریپت کلیک کنید.
  8. روی ذخیره ویژگی‌های اسکریپت کلیک کنید.

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

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

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

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