التحديدات الخارجية والمتتالية

تُستخدم التحديدات المتتالية لتقييد قائمة الإجابات المتاحة بناءً على الإجابة على سؤال سابق، ويمكن تخزين محتواها داخل ملف XLSForm نفسه، أو في ملف خارجي.

التحديدات المتتالية

يتم استخدام التحديدات المتتالية لتقييم قائمة بإجابات متاحة بناءً على إجابة السؤال السابق وهو ما يجعل استخدام الاستطلاعات أكثر سهولة، وهو بدوره ما يقوم بتصغير قائمة الاختيار من خلال عرض الخيارات ذات الصلة فقط على المستخدمين.

لكل قائمة اختيار في التسلسل الهيكلي، أكمل ما يلي:

  • أدخل قيم قوائم الخيارات في علامة تبويب خيارات.
  • أضف عمودًا واحدًا أو أكثر لمعايير التحديد المتتالي (مثل البلد أو الولاية أو المدينة أو الضاحية).
  • أدخل القيمة ذات الصلة لكل خيار في الأعمدة الإضافية.

لا يوصى بأن تقوم بتضمين أسماء اختيارات مكررة في قائمة الاختيار. لمزيد من المعلومات، راجع أسئلة الاختيار من متعدد.

بمجرد اكتمال قوائم الاختيار، يجب عليك إنشاء عمود choice_filter في علامة تبويب استطلاع. يحتوي هذا العمود على التعبير المستخدم لتقييد قوائم الاختيار. يمكن أن يقبل العمود choice_filter محتويات حقل آخر، على سبيل المثال، state=${state_1}، أو تعبير، على سبيل المثال، selected(${states_visited},state_code).

لرؤية التحديدات المتتالية أثناء التنفيذ، راجع عوامل تصفية الخيار ونموذج التحديدات المتتالية في Survey123 Connect.

يمكنك استخدام التحديدات المتتالية مع أسئلة select_one وselect_multiple وrank. التحديدات المتتالية غير مدعومة لأسئلة rank في تطبيق الويب Survey123.

تلميح:

عند عرض نتائج استطلاع بسؤال يستخدم تحديدًا متتاليًا، يتم عرض اسم الاختيار المرسل فقط. يختلف ذلك عن سلوك أسئلة select_one أو select_multiple بدون عامل تصفية الاختيار، إذ يتم عرض تسمية الاختيار بدلاً من ذلك.

استخدم دالة jr:choice-name() في سؤال آخر لإرجاع التسمية المقترنة بالاختيار وتخزينها من سؤال. من الناحية المفاهيمية، يمكن تمثيل ذلك من قبل jr:choice-name(string value, 'question name').

في jr:choice-name(${city_choice}, '${city_choice}')، تمثل المعلمة الأولى القيمة المحددة بينما تكون المعلمة الثانية هي اسم السؤال. يجب تحديد اسم السؤال داخل علامات اقتباس.

بالنسبة لأسئلة select_multiple، يجب عليك استخدام دالة selected-at() لاستخراج تسمية الإجابات الفردية. على سبيل المثال:

jr:choice-name(selected-at(${city_choice}, 1), '${city_choice}')

يمكنك استخدام دالة jr:choice-name() في أي سؤال سلسلة. عند استخدام سؤال مخفي، قم بتحديد bind::esri:fieldType وbind::esri:fieldAlias له أيضًا.

تنبيه:

بدءًا من الإصدار 3.12 لـ Survey123، تُدار قوائم الاختيار من خلال قاعدة بيانات داخلية. هذا يعني أنه لا يمكنك استخدام كلمات SQLite الأساسية المحجوزة لأسماء الأعمدة في التحديدات المتتالية والخارجية.

التحديدات الخارجية

يمكن لقوائم الخيارات المقترنة بالتحديدات المتتالية الازدياد والتأثير على أداء النماذج. يتوفر لدى Survey123 خيار حفظ هذه القوائم في ملف خارجي وتحميلها في الاستطلاع عند الطلب.

لتنفيذ هذا الخيار، أنشئ علامة تبويب في جدول البيانات للاستطلاع المسمى external_choices. يجب أن تحتوي علامة التبويب الجديدة على نفس رؤوس الأعمدة الموجودة في علامة تبويب الاختيارات. عند نشر الاستطلاع، سيتم حفظ القيم من علامة تبويب external_choices في ملف باسم itemsets.csv في مجلد الوسائط في مشروع الاستطلاع، بدلاً من حفظها كجزء من عنصر النموذج. لإسناد قوائم الاختيار في علامة تبويب external_choices استخدم select_one_external لتحديد اسم القائمة.

تختلف التحديدات الخارجية عن قائمة الاختيار الخارجية التي لا تتطلب ورقة عمل external_choices.

ملاحظة:‏

التحديدات الخارجية ممكنة فقط لأسئلة select_one. لا يتم دعمها لأسئلة select_multiple.

صُمّمت التحديدات الخارجية خصيصًا للتعامل مع قوائم الخيارات المرتبطة بتحديد متتالي فقط. تتم فقط إضافة الاختيارات التي تحتوي على عامل تصفية مطبق إلى ملف itemsets.csv.