يتناول هذا المستند كيفية استخدام الفلاتر لفرز البيانات وتصفيتها في جدول بيانات.
تتيح لك الفلاتر ترتيب البيانات وتصفيتها عند عرض جدول بيانات. لا تغيّر الفلاتر قيم البيانات في جدول البيانات. يمكنك استخدام الفلاتر لإخفاء المعلومات أو ترتيبها مؤقتًا. لا تظهر البيانات التي تتطابق مع معايير الفلتر المحدّدة أثناء تفعيل الفلتر. باستخدام طرق عرض الفلتر، يمكنك أيضًا حفظ فلاتر مختلفة مُسمّاة والتبديل بينها وقتما تشاء.
لفلترة البيانات التي يتم عرضها في طلب Google Sheets API، استخدِم العنصر
DataFilter. لمزيد من المعلومات، يُرجى الاطّلاع على قراءة البيانات الوصفية وكتابتها والبحث فيها.
فلترة حالات الاستخدام
في ما يلي بعض الأمثلة على حالات استخدام الفلاتر:
- ترتيب البيانات حسب عمود معيّن على سبيل المثال، يمكنك ترتيب سجلّات المستخدمين حسب الاسم الأخير.
- إخفاء البيانات التي تستوفي شرطًا معيّنًا على سبيل المثال، يمكنك إخفاء جميع السجلّات التي مرّ عليها أكثر من عامَين.
- إخفاء البيانات التي تطابق قيمة معيّنة على سبيل المثال، إخفاء جميع المشاكل التي تحمل الحالة "مغلقة".
الفلتر الأساسي
عنصر
BasicFilter
لجدول البيانات هو الفلتر التلقائي الذي يتم تطبيقه كلما عرض أي مستخدم جدول البيانات. يمكن أن يتضمّن جدول البيانات عامل تصفية أساسيًا واحدًا فقط لكل ورقة. يمكنك إيقاف الفلتر الأساسي من خلال محوه. يؤدي هذا الإجراء إلى إزالة الفلتر وجميع إعداداته من جدول البيانات. إذا أردت إعادة تفعيل الفلتر نفسه، عليك ضبط المعايير مرة أخرى.
إدارة الفلتر الأساسي
لضبط الفلتر الأساسي أو محوه، استخدِم طريقة
spreadsheets.batchUpdate
مع نوع الطلب المناسب:
- لضبط الفلتر الأساسي، استخدِم طريقة
SetBasicFilterRequest. - لمحو الفلتر الأساسي، استخدِم طريقة
ClearBasicFilterRequest.
لعرض الفلتر الأساسي، استخدِم طريقة
spreadsheets.get
وضَع مَعلمة عنوان URL fields على sheets/basicFilter. يوضّح نموذج الرمز التالي spreadsheets.get عنوان URL لجداول بيانات Google يتضمّن قناع حقل:
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID?fields=sheets/basicFilter
عروض الفلاتر
FilterView هو فلتر يحمل اسمًا ويمكنك إيقافه وتفعيله متى شئت. يمكن أن يتضمّن جدول بيانات عروض فلاتر متعدّدة محفوظة، ولكن يمكنك تطبيق عرض واحد فقط في كل مرة. يمكن أن تحتوي ورقة
على فلتر أساسي وعروض فلاتر متعددة، ولكن لا يمكنك تطبيق كليهما في الوقت نفسه على نطاق البيانات نفسه.
حالات استخدام عروض الفلاتر
في ما يلي بعض الأمثلة على حالات استخدام عروض الفلاتر:
- لديك عدة فلاتر مختلفة تريد التبديل بينها عند عرض البيانات.
- ليس لديك الإذن بتعديل جدول بيانات، ولكنك تريد تطبيق فلتر. في هذه الحالة، يمكنك إنشاء عرض فلتر مؤقت لا يمكن لأحد سواك رؤيته.
تريد أن يعرض كل مستخدم تشارك معه جدول البيانات البيانات بشكل مختلف. يمكنك تحديد طريقة عرض الفلتر التي تريد تطبيقها من خلال توفير
spreadsheetIdوfilterViewIdفي عنوان URL لجدول البيانات. لإجراء ذلك، استخدِمfilterViewIdالذي تم عرضه في الرد عند إنشاء عرض الفلتر.يعرض نموذج الرمز التالي عنوان URL لجدول بيانات Google مع طريقة عرض فلتر:
https://docs.google.com/spreadsheets/d/SPREADSHEET_ID/edit#gid=0&fvid=FILTER_VIEW_ID
إدارة عروض الفلاتر
لإنشاء عروض فلاتر أو تكرارها أو تعديلها أو حذفها، استخدِم طريقة
spreadsheets.batchUpdate
مع نوع الطلب المناسب:
- لإنشاء عرض فلتر، استخدِم طريقة
AddFilterViewRequest. - لإنشاء نسخة من عرض فلتر، استخدِم طريقة
DuplicateFilterViewRequest. - لتعديل خصائص عرض الفلتر، استخدِم طريقة
UpdateFilterViewRequest. - لحذف عرض فلتر، استخدِم طريقة
DeleteFilterViewRequest.
لعرض قائمة بجميع طرق عرض الفلاتر، استخدِم طريقة
spreadsheets.get
واضبط مَعلمة عنوان URL fields على sheets/filterViews. يعرض نموذج الرمز التالي عنوان URL لجدول بيانات Google مع قناع
حقل:spreadsheets.get
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID?fields=sheets/filterViews
تمثيل JSON لفلتر
يعرض نموذج الرمز البرمجي التالي تمثيل JSON الخاص بكائن
FilterView. يكون العنصر
BasicFilter
مشابهًا باستثناء أنّه لا يتضمّن الحقلَين filterViewId وtitle،
ولا يمكنه استخدام نطاق مُعنوَن.
{
"filterViewId": number,
"title": string,
"range": {
object(GridRange)
},
"namedRangeId": string,
"sortSpecs": [
{
object(SortSpec)
}
],
"criteria": {
string: {
object(FilterCriteria)
},
...
}
}
عيّنة من بيانات المبيعات
تشير بقية هذا المستند إلى جدول بيانات المبيعات النموذجية التالي:
| A | ب | C | D | ج | ح | G | |
| 1 | فئة العنصر | رقم الطراز | التكلفة | الكمية | المنطقة | مندوب مبيعات | تاريخ الشحن |
| 2 | العجلة | W-24 | $20.50 | 4 | الغرب | Beth | 2016/3/1 |
| 3 | باب | D-01X | $15.00 | 2 | الجنوب | أمير | 3/15/2016 |
| 4 | إطار | FR-0B1 | $34.00 | 8 | الشرق | هانا | 2016/3/12 |
| 5 | اللوحة | P-034 | 6.00 دولار أمريكي | 4 | الشمال | Devyn | 3/15/2016 |
| 6 | اللوحة | P-052 | $11.50 | 7 | الشرق | إريك | 2016/5/16 |
| 7 | العجلة | W-24 | $20.50 | 11 | الجنوب | Sheldon | 2016/4/30 |
| 8 | المحرّك | ENG-0161 | $330.00 | 2 | الشمال | Jessie | 2016/7/2 |
ترتيب المواصفات
يمكن أن يحتوي الفلتر على مواصفات ترتيب متعددة. تحدّد هذه المواصفات طريقة ترتيب البيانات ويتم تطبيقها بالترتيب المحدّد. تحدّد السمة
SortSpec.dimensionIndex
فهرس العمود الذي يجب تطبيق الترتيب عليه.
تعرض عيّنة الرمز البرمجي التالية مواصفات ترتيب:
[
{
"dimensionIndex": 3,
"sortOrder": "ASCENDING"
},
{
"dimensionIndex": 6,
"sortOrder": "ASCENDING"
}
]
عند تطبيق هذا التحديد على بيانات مبيعات العيّنة، يتم ترتيب البيانات حسب عمود "الكمية" أولاً، ثم حسب "تاريخ الشحن" إذا كان صفان يتضمّنان الكمية نفسها.
| A | ب | C | D | ج | ح | G | |
| 1 | فئة العنصر | رقم الطراز | التكلفة | الكمية | المنطقة | مندوب مبيعات | تاريخ الشحن |
| 2 | باب | D-01X | $15.00 | 2 | الجنوب | أمير | 3/15/2016 |
| 3 | المحرّك | ENG-0161 | $330.00 | 2 | الشمال | Jessie | 2016/7/2 |
| 4 | العجلة | W-24 | $20.50 | 4 | الغرب | Beth | 2016/3/1 |
| 5 | اللوحة | P-034 | 6.00 دولار أمريكي | 4 | الشمال | Devyn | 3/15/2016 |
| 6 | اللوحة | P-052 | $11.50 | 7 | الشرق | إريك | 2016/5/16 |
| 7 | إطار | FR-0B1 | $34.00 | 8 | الشرق | هانا | 2016/3/12 |
| 8 | العجلة | W-24 | $20.50 | 11 | الجنوب | Sheldon | 2016/4/30 |
معايير الفلتر
يحدّد العنصر
FilterCriteria
البيانات التي يتم عرضها أو إخفاؤها في جدول البيانات ضمن فلتر أساسي أو طريقة عرض مفلترة. يعتمد كل معيار على القيم الواردة في عمود معيّن. يمكنك تقديم معايير الفلتر كخريطة تكون فيها المفاتيح هي فهارس الأعمدة والقيم هي المعايير.
بالنسبة إلى المعايير المحدّدة باستخدام قيمة منطقية
condition،
يجب أن تكون الحالة true ليتم عرض القيم. لا يتجاوز الشرط
hiddenValues.
إذا تم إدراج قيمة ضمن hiddenValues، سيظل يتم إخفاء جميع النتائج المطابقة لتلك القيمة.
تعرض عيّنة الرمز البرمجي التالية خريطة لمعايير الفلتر:
{
0: {
'hiddenValues': ['Panel']
},
6: {
'condition': {
'type': 'DATE_BEFORE',
'values': {
'userEnteredValue': '4/30/2016'
}
}
}
}
عند تطبيق هذا المعيار على بيانات مبيعات العيّنة، لن يعرض سوى الصفوف التي لا تساوي فيها قيمة عمود "فئة السلعة" القيمة "لوحة"، والتي تكون فيها قيمة عمود "تاريخ الشحن" قبل "30 أبريل 2016".
| A | ب | C | D | ج | ح | G | |
| 1 | فئة العنصر | رقم الطراز | التكلفة | الكمية | المنطقة | مندوب مبيعات | تاريخ الشحن |
| 2 | العجلة | W-24 | $20.50 | 4 | الغرب | Beth | 2016/3/1 |
| 3 | باب | D-01X | $15.00 | 2 | الجنوب | أمير | 3/15/2016 |
| 4 | إطار | FR-0B1 | $34.00 | 8 | الشرق | هانا | 2016/3/12 |
فلترة عيّنة التعليمات البرمجية الخاصة بطريقة العرض
يوضّح نموذج الرمز البرمجي التالي كيفية إنشاء طريقة عرض مفلترة ونسخها، ثم تعديل النسخة المكرّرة باستخدام بيانات المبيعات النموذجية.