پارامترهای پیکربندی قابل جبران

پارامترهای پیکربندی قابل لغو (Overridable config parameters) این امکان را فراهم می‌کنند که ویرایشگران گزارش بتوانند مقادیر پیش‌فرض را در یک منبع داده تغییر دهند. تعریف پارامترهای پیکربندی به عنوان قابل لغو، منبع داده را انعطاف‌پذیرتر می‌کند و به کاربران راهی برای ایجاد الگوهای گزارش قابل تنظیم توسط کاربر می‌دهد.

برای مثال، یک رابط که داده‌های آب و هوا را ارائه می‌دهد می‌تواند شامل یک پارامتر موقعیت مکانی باشد که به بینندگان گزارش اجازه می‌دهد گزارش آب و هوا را از محلی متفاوت از محلی که پیش‌فرض است، درخواست کنند.

این سند نحوه تعریف پارامترهای قابل لغو، فعال‌سازی برای تغییر و نحوه تغییر مقادیر پارامترها توسط کاربران گزارش را شرح می‌دهد. برای کسب اطلاعات بیشتر در مورد نحوه استفاده از پارامترها در Data Studio، به پارامترهای منبع داده مراجعه کنید.

نقش‌ها

نقش‌های کاربری که در سراسر سند به آنها اشاره شده است:

نقش تعریف
توسعه دهنده کانکتور کاربری که یک رابط انجمنی ساخته است.
مالک منبع داده کاربری که یک منبع داده ایجاد کرده و مالک آن است .
ویرایشگر گزارش کاربری با دسترسی حالت ویرایش به یک گزارش .
نمایشگر گزارش کاربری با دسترسی حالت مشاهده به یک گزارش .

تعریف پارامترهای قابل لغو

توسعه‌دهنده‌ی کانکتور ، پارامترهای پیکربندی را در تابع getConfig() از یک کانکتور community تعریف می‌کند. برای تعریف یک پارامتر پیکربندی به عنوان overridable، کانکتور setAllowOverride(true) را فراخوانی می‌کند.

مثال زیر دو پارامتر قابل لغو را تعریف می‌کند: zipcode و units و یک پارامتر که قابل لغو نیست: days-to-forcecast .

تصویر دو پارامتر قابل لغو

function getConfig(request) {
  var config = cc.getConfig();

  // A
  config
      .newTextInput()
      .setId("zipcode")
      .setName("ZIP Code")
      .setAllowOverride(true);

  // B
  config
    .newSelectSingle()
    .setId("units")
    .setName("Units")
    .addOption(
        config
          .newOptionBuilder()
          .setLabel("Metric")
          .setValue("metric")
    )
    .addOption(
      config
        .newOptionBuilder()
        .setLabel("Imperial")
        .setValue("imperial")
    )
    .setAllowOverride(true);

  // C
  config
    .newTextInput()
    .setId("days-to-forecast")
    .setName("Days to forecast")
      .setAllowOverride(false);


  return config.build();
}

چه زمانی از تعریف پارامتر به عنوان overridable خودداری کنیم؟

توصیه می‌شود با مرور [نحوه اتصال دیتا استودیو به داده‌های شما]، نحوه عملکرد رابط‌ها، منابع داده و گزارش‌ها را در ارتباط با یکدیگر بیاموزید.

در موارد زیر از تعریف پارامتر به عنوان overridable خودداری کنید:

  1. وقتی مقدار یک پارامتر روی طرحواره تأثیر می‌گذارد.
    • اگر کاربر مقدار پارامتر را تغییر دهد و طرح داده جدید برگشتی با آنچه در منبع داده تعریف شده است متفاوت باشد، هر گزارشی که به منبع داده وابسته است می‌تواند به دلیل فیلدهای از دست رفته از کار بیفتد.
  2. اگر مقدار پارامتر، داده‌های حساس را کنترل کند. مثلاً انتخاب حساب.
    • اگر می‌خواهید از مشاهده یا اشتراک‌گذاری ناخواسته داده‌های حساس جلوگیری کنید، پارامتری را به عنوان overridable تعریف نکنید.

فعال کردن پارامترها برای کاربران گزارش

مالکان منبع داده کنترل می‌کنند که کدام پارامترهای قابل لغو (overridable parameters) اجازه تغییر توسط ویرایشگرهای گزارش را دارند. به طور مشابه، ویرایشگرهای گزارش کنترل می‌کنند که کدام پارامترها می‌توانند توسط بینندگان گزارش تغییر کنند.

به ویرایشگران گزارش اجازه دهید مقادیر پارامترها را تغییر دهند

مالک منبع داده، پارامترهای مجاز برای تغییر در گزارش‌ها را کنترل می‌کند. این امر در طول ایجاد یا ویرایش یک منبع داده پیکربندی می‌شود و فقط برای پارامترهایی که توسط توسعه‌دهنده Connector به عنوان overridable تعریف شده‌اند، قابل اجرا است. در صورت فعال بودن، ویرایشگران گزارش می‌توانند پارامترها را در یک گزارش تغییر دهند .

در مثال زیر، یک کانکتور دو پارامتر دارد که به عنوان overridable تعریف شده‌اند: zipcode و units . مالک منبع داده فقط اجازه داده است که zipcode در گزارش‌ها تغییر کند. در گزارش، ویرایشگر گزارش این گزینه را دارد که مقدار پارامتر zipcode را تغییر دهد.

فعال کردن گزینه لغو

به بینندگان گزارش اجازه دهید مقادیر پارامترها را تغییر دهند

ویرایشگرهای گزارش، پارامترهایی را که می‌توانند توسط بینندگان گزارش تغییر داده شوند، کنترل می‌کنند. سپس مقادیر پارامترها می‌توانند از طریق URL گزارش توسط هر بیننده‌ای از گزارش تغییر داده شوند.

برای مثال، یک رابط را در نظر بگیرید که دو پارامتر آن به صورت overridable تعریف شده‌اند: zipcode و units (شکل 1). اگر مالک منبع داده اجازه داده باشد که zipcode در گزارش‌ها تغییر کند (شکل 2)، ویرایشگرهای گزارش فقط قادر خواهند بود که به بینندگان گزارش اجازه دهند zipcode را تغییر دهند. ویرایشگر گزارش دسترسی یا قابلیت دید برای تغییر پارامتر units توسط بینندگان گزارش را نخواهد داشت.

پارامتر کد پستی فعال شد
شکل 1 : پیکربندی کانکتور.

فقط پارامتر کد پستی قابل تغییر است
شکل ۲ : مدیریت پارامترها.

پارامترهای آدرس اینترنتی

برای اینکه به بینندگان گزارش اجازه دهید مقادیر پارامترها را از طریق URL گزارش ویرایش کنند:

  1. گزارش را ویرایش کنید.
  2. گزینه Resource -> Manage report parameters را انتخاب کنید.
  3. برای مجاز یا غیرمجاز کردن تغییر مقادیر پارامترها در URL گزارش، از کادرهای انتخاب «اجازه دهید در URL گزارش اصلاح شود» استفاده کنید. تغییرات به طور خودکار ذخیره می‌شوند.
  4. روی بستن در بالا سمت راست کلیک کنید.

اصلاح مقادیر پارامترها

ویرایشگران گزارش می‌توانند مقادیر پارامترها را با استفاده از پنل ویژگی‌های گزارش تغییر دهند، در حالی که بینندگان گزارش می‌توانند مقادیر پارامترها را از طریق URL گزارش تغییر دهند.

پنل ویژگی‌های گزارش

برای آشنایی با نحوه تنظیم مقادیر پارامترها توسط ویرایشگر گزارش ، به بخش «تغییر پارامترها در گزارش» مراجعه کنید.

پارامترهای URL را گزارش دهید

برای پارامترهایی که اجازه تغییر در URL گزارش را دارند، می‌توان مقادیر را از طریق یک شیء JSON کدگذاری شده با URL که در حالت مشاهده به URL گزارش اضافه می‌شود، تنظیم کرد.

برای ایجاد پیکربندی URL:

  1. جمع‌آوری نام پارامترها

    1. گزارش را ویرایش کنید.
    2. گزینه Resource -> Manage report parameters را انتخاب کنید.
    3. نام پارامترهایی را که قصد تنظیم آنها را از طریق آدرس اینترنتی گزارش دارید، یادداشت کنید.

    برای مثال، در شکل زیر نام پارامتر ds0.zipcode است.

    فعال کردن پارامترهای url

  2. شیء پارامتر را ایجاد کنید

    پارامترها از طریق یک شیء JSON تعریف می‌شوند. کلیدهای مربوط به مقادیر پارامترها، نام پارامترها هستند.

    {
      "parameterName": parameterValue
    }
    

    انواع مقادیر پارامتر می‌توانند یکی از انواع STRING ، NUMBER یا BOOLEAN باشند. برای پارامترهایی که چندین مقدار می‌پذیرند (مثلاً منوهای کشویی چند انتخابی) از آرایه‌ای از مقادیر استفاده کنید.

    برای مثال، اگر نام پارامتر ds0.zipcode باشد، برای تنظیم ZIP Code روی 94094 ، JSON به صورت زیر خواهد بود:

    {
      "ds0.zipcode": "94094"
    }
    
  3. شیء پارامتر را رمزگذاری کنید.

    بعد از اینکه شیء پارامتر را ایجاد کردید، از JSON.stringify() برای تبدیل آن به یک رشته استفاده کنید، سپس از [encodeURIComponent] برای رمزگذاری URL آن استفاده کنید.

    var params = {
      "ds0.zipcode": "94094"
    };
    var paramsAsString = JSON.stringify(params);
    var encodedParams = encodeURIComponent(paramsAsString)
    

    این منجر به رشته کدگذاری شده زیر می‌شود:

    "%7B%22ds0.zipcode%22%3A%2294094%22%7D"
    
  4. ساخت آدرس اینترنتی گزارش

    وقتی شیء پارامتر کدگذاری شده URL را دارید، آن را با استفاده از پارامتر query params به URL نمای گزارش اضافه کنید.

    https://lookerstudio.google.com/reporting/ REPORT_ID /page/ PAGE_ID ?params=%7B%22ds0.zipcode%22%3A%2294094%22%7D

    مطمئن شوید که REPORT_ID و PAGE_ID را با مقادیر گزارش و صفحه خود جایگزین می‌کنید.

  5. از آدرس اینترنتی (URL) استفاده کنید

    URL گزارش، پارامترهایی را که در شیء پارامترهای JSON بر اساس وراثت پارامتر تعریف شده‌اند، نادیده می‌گیرد.

مثال شیء پارامتر

شیء پارامتر زیر نحوه تنظیم چندین پارامتر را نشان می‌دهد. همچنین تنظیم مقادیر پارامتر برای انواع ورودی‌های مختلف را شرح می‌دهد.

  • ds0.includeToday یک ورودی چک‌باکس است.
  • ds0.units یک ورودی تک انتخابی است
  • ds1.countries یک ورودی چند انتخابی است
  • ds1.labelName یک ورودی متنی است.
  {
    "ds0.includeToday": true,
    "ds0.units": "Metric",
    "ds1.countries": ["Canada", "Mexico"],
    "ds1.labelName": "Population"
  }

وراثت پارامتر

مقداری که برای یک پارامتر استفاده می‌شود، بر اساس محل تنظیم پارامتر، از ترتیب تقدمی پیروی می‌کند. پارامترهایی که در مکان‌های با تقدم بالاتر تنظیم می‌شوند، پارامترهایی را که در مکان‌های با تقدم پایین‌تر تنظیم شده‌اند، لغو می‌کنند. ترتیب تقدم (از کمترین به بیشترین) به شرح زیر است:

  1. منبع داده (پیش‌فرض)
  2. گزارش URL
  3. پنل ویژگی‌های گزارش، با پیروی از قوانین وراثت پارامترهای منبع داده.