الفلاتر

إذا كان التقرير يحتوي على فلاتر وعرض موصِّل منتدى بيانات لم تتم فلترتها لجميع الحقول المطلوبة، ستعمل أداة Looker Studio على تطبيق الفلاتر على استجابة الموصِّل. ومع ذلك، يمكن تطبيق الفلاتر على مستوى موصل المنتدى، ما قد يؤدي إلى تحسين الأداء بشكل كبير في بعض الحالات. يتم تمرير معلومات الفلتر في كائن طلب getData()، ويمكن للموصل استخدام هذه المعلومات لفلترة البيانات قبل إرسالها مرة أخرى إلى Looker Studio.

على سبيل المثال، إذا كنت تتصل بقاعدة بيانات SQL، يمكن أن يؤدي تطبيق الفلاتر مباشرةً في عبارة WHERE (B3 في الرسم التخطيطي أدناه) إلى تقليل عدد الصفوف التي يتم عرضها إلى Looker Studio بشكل كبير. وهذا بدوره يحد من كمية البيانات التي يجب معالجتها وإرسالها إلى Looker Studio (B5).

فلترة الرسم البياني الانسيابي

قواعد تطبيق الفلاتر

  1. يمكنك تطبيق جميع الفلاتر أو عدم تطبيق أي منها. راجِع الفلاتر غير المتوافقة.
  2. لا تضمِّن حقول forFilterOnly في الرد.
  3. AND لكل إدخال معًا في المصفوفة request.dimensionsFilters.

    على سبيل المثال، بالنسبة إلى الفلتر التالي، يجب أن يتضمّن الموصِّل فقط القيم التي تحتوي على country في USA وsource لـ Social.

    {
      "dimensionsFilters": [
        [{
          "fieldName": "country",
          "values": ["USA"],
          "type": "INCLUDE",
          "operator": "EQUALS"
        }],
        [{
          "fieldName": "source",
          "values": ["Social"],
          "type": "INCLUDE",
          "operator": "EQUALS"
        }]
      ]
    }
    
  4. OR معًا في كل مصفوفة فرعية في المصفوفة request.dimensionsFilters.

    على سبيل المثال، بالنسبة إلى الفلتر التالي، يجب أن يتضمّن الموصل فقط القيم التي تحتوي على country في USA أو country لـ Canada.

    {
      "dimensionsFilters": [
        [{
          "fieldName": "country",
          "values": ["Canada"],
          "type": "INCLUDE",
          "operator": "EQUALS"
        }, {
          "fieldName": "country",
          "values": ["USA"],
          "type": "INCLUDE",
          "operator": "EQUALS"
        }]
      ]
    }
    
.

مثال

يوضِّح المثال التالي تدفقًا شاملًا من مستخدِم التقرير الذي يحدِّد الفلاتر إلى موصّل المنتدى الذي يعرِض البيانات التي تمّت فلترتها.

مثال على الفلتر

  1. لقد ضبط مستخدِم التقرير فلترَين:

    1. country هو IN_LIST من Canada, USA
    2. source هو IN_LIST من Social, Organic
  2. لقد ضبط مستخدم التقرير مكون رسم بياني باستخدام السمة source والمقياس sessions.

  3. يتم تنفيذ getData() بواسطة Looker Studio باستخدام كائن الطلب التالي:

    {
      "fields": [
        {"name": "source"},
        {"name": "sessions"},
        {"name": "country", "forFilterOnly": true}
      ],
      "dimensionsFilters": [
        [{
          "fieldName": "country",
          "values": ["Canada", "USA"],
          "type": "INCLUDE",
          "operator": "IN_LIST"
        }],
        [{
          "fieldName": "source",
          "values": ["Social", "Organic"],
          "type": "INCLUDE",
          "operator": "IN_LIST"
        }]
      ]
    }
    
  4. يستجيب الموصل بالبيانات التي تمت تصفيتها.

    بالنسبة إلى نموذج الطلب، اعرض source وsessions حيث تكون country هي "Canada" أو "USA" و source هي "Social" أو "Organic". اضبِط filtersApplied على true، لأنّه تم تطبيق جميع الفلاتر بنجاح.

البيانات الأصلية

source الجلسات بلد
الاجتماعية 60 الولايات المتحدة الأمريكية
الاجتماعية 50 كندا
الاجتماعية 40 المملكة المتحدة
منتجات عضوية 90 الولايات المتحدة الأمريكية
منتجات عضوية 80 كندا
منتجات عضوية 70 المملكة المتحدة
صحيفة 30 الولايات المتحدة الأمريكية
صحيفة 20 كندا
صحيفة 10 المملكة المتحدة

البيانات التي تمت فلترتها

source الجلسات
الاجتماعية 60
الاجتماعية 50
منتجات عضوية 90
منتجات عضوية 80

ردّ واحد (getData())

{
  "schema": [
    {"name": "source",   "dataType": "STRING"},
    {"name": "sessions", "dataType": "NUMBER"},
  ],
  "rows": [
    {"values": ["Social", 60]},
    {"values": ["Social", 50]},
    {"values": ["Organic", 90]},
    {"values": ["Organic", 80]}
  ],
  "filtersApplied": true
}

فلاتر غير متوافقة

إذا لم يتمكن الموصل من تطبيق جميع الفلاتر في الطلب، فلن يتم إجراء أي تصفية. اعرض جميع الحقول المطلوبة (بما في ذلك الحقول forFilterOnly) واضبط المفتاح filtersApplied في ردك على false.

مثال:

{
  "schema": [
    {"name": "source",   "dataType": "STRING"},
    {"name": "sessions", "dataType": "NUMBER"},
    {"name": "country",  "dataType": "STRING"}
  ],
  "rows": [
    {"values": ["Social", 60, "USA"]},
    {"values": ["Social", 50, "Canada"]},
    {"values": ["Social", 40, "UK"]},
    {"values": ["Organic", 90, "USA"]},
    {"values": ["Organic", 80, "Canada"]},
    {"values": ["Organic", 70, "UK"]},
    {"values": ["Newspaper", 30, "USA"]},
    {"values": ["Newspaper", 20, "Canada"]},
    {"values": ["Newspaper", 10, "UK"]},
  ],
  "filtersApplied": false
}