تكرار

يمكن لـ XLSForm تكرار مجموعة من الأسئلة مرات عديدة. تشمل أمثلة كيفية استخدام التكرارات ما يلي:

  • التقاط الإجابات المتعددة لنفس السؤال في استطلاع واحد.
  • التقاط مجموعات منفصلة أصغر من السجلات، مثل اسم وعمر وجنس كل شخص في المنزل.
  • التقاط العديد من أسئلة الخرائط في استطلاع واحد.

تكرار لتوفير العديد من الإجابات لسؤال فردي

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

استخدام التكرارات

لتكرار مجموعة من الأسئلة في لالتقاط العديد من الإجابات، أكمل الخطوات التالية في علامة تبويب الاستطلاع من جدول البيانات:

  1. في الصف الذي تريد بدء التكرار فيه، اكتب بدء التكرار في عمود النوع.
  2. قم بتوفير اسم للتكرار في عمود الاسم.
  3. في الصفوف أدنى هذا الإدخال، أدخل الأسئلة التي تريد تضمينها في التكرار الخاص بك.
  4. فورًا بعد الأسئلة، اكتب إنهاء التكرار في عمود النوع.

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

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

المظهر

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

مظهر الحد الأدنى للتكرار في التطبيق الميداني

في حال تعيين تكرار على تصغير مع وجود عدد تكرار صفر، فستكون عناصر التحكم في التكرار والتسمية غير مرئية.

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

وعلى عكس المظاهر الأخرى، يمكن للتكرار استخدام كل من الحد الأدنى والمدمج في نفس الوقت بتعيين المظهر على دمج الحد الأدنى. يمثل ذلك الأسئلة في التكرار بطريقة مطوية (مدمجة) ومخفية (تصغير).

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

ملاحظة:‏

في Survey123 Connect، يمكنك أيضاً تحديد المظاهر التالية للتكرارات في الاستطلاعات المستخدمة مع التطبيق الميداني Survey123 أو تطبيق الويب Survey123:

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

تكرارات جدولية

ملاحظة:‏

يصف هذا القسم الوظائف المتاحة فقط في Survey123 Studio وSurvey123 Mobile.

في Survey123 Connect، يتم تجاهل تطبيق Survey123 الميداني وتطبيق الويب Survey123 ومظهر جدولي ومعلمات XLSForm ذات الصلة.

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

يرد العرض الجدولي في الصورة التالية:

عرض جدولي لتكرار

فيما يلي توضيح وسائل الشرح في الصورة أعلاه كما يلي:

  1. انقر فوق زر القائمة لكل صف للوصول إلى خيارات تحرير في عرض النموذج ونسخ إلى سجل جديد وحذف.
  2. تشير أيقونة للقراءة فقط إلى أنه لا يمكن تحرير السؤال (ألعمود) في عرض جدولي.
  3. انقر فوق عنوان العمود لفرز العرض الجدولي بترتيب تصاعدي، وبشكل اختياري قم بما يلي:
    • انقر فوق عنوان العمود مرة أخرى للفرز بترتيب تنازلي.
    • انقر فوق عنوان العمود لثالث مرة لإيقاف الفرز (يعود إلى ترتيب الصف الأصلي) وبدلاً من ذلك، انقر فوق عنوان عمود آخر لفرز ذلك العمود.
  4. انقر على خلية لتحرير قيمتها. لا يمكن تحرير سوى أنواع معينة من الأسئلة في العرض الجدولي.
  5. انقر فوق زر المسح في خلية لحذف قيمتها.

يمكنك أيضًا تحرير سجلات منفصلة في عرض النموذج. يعرض عرض النموذج سجلات تكرار منفصلة في نموذج استطلاع منفصل بكامل الميزات.

يمكن استخدام المظهر الجدولي بالاقتران مع مظاهر التصغير والمدمج.

للبدء باستخدام التكرارات الجدولية، أكمل الخطوات التالية في Survey123 Studio:

  1. تعيين المظهر إلى جدولي لسؤال تكرار البدء.

    يظل العرض الجدولي فارغًا حتى تضيف له الأسئلة.

  2. أضف سؤالاً واحدًا أو أكثر إلى العرض الجدولي من خلال كتابة showInTabularView=true في عمود body::esri:style لكل سؤال.
  3. تكوين العرض الجدولي باستخدام معلمات اختيارية.

أضف أسئلة إلى العرض الجدولي

يمكنك إضافة أسئلة إلى العرض الجدولي من خلال كتابة showInTabularView=true في عمود body::esri:style لكل سؤال في التكرار. يمكنك تحرير أنواع الأسئلة التالية في العرض الجدولي:

  • النص
  • عدد صحيح
  • عشري
  • تاريخ
  • الوقت
  • dateTime

تُعرض كل أنواع الأسئلة الأخرى كأعمدة للقراءة فقط في العرض الجدولي.

تنبيه:

يُرجى مراعاة ما يلي عند إضافة أسئلة إلى العرض الجدولي:

  • لا يمكن تحرير الأسئلة الموجودة في التكرارات التي بها تعبير (بما في ذلك yes) في عمود للقراءة فقط في العرض الجدولي.
  • لا تظهر الأسئلة الموجودة في التكرارات التي بها تعبير في عمود body::esri:visible أو التي بها المظهر مخفي ضمن العرض الجدولي.
  • لا تظهر الأسئلة الموجودة في التكرارات التي بها تعبير في عمود ذي الصلة في العرض الجدولي.
  • تظهر الأسئلة الموجودة في التكرارات التي بها تعبير (بما في ذلك yes) في عمود المطلوب أو تعبير في عمود المقيد في العرض الجدولي. عندما لا يتم استيفاء شرط أو أكثر من الشروط المطلوبة أو المقيدة، يتم عرض تحذير عام أعلى العرض الجدولي مع أيقونة تحذير بجانب كل سجل (صف) يحتوي على أخطاء. لا يمكنك إرسال الاستطلاع حتى تتم معالجة هذه المسائل. يمكنك تحرير السجلات في عرض النموذج للاطلاع على القيود والرسائل التنبيهية اللازمة للأسئلة المنفصلة. عندما تكون هناك أعطال في التكرارات، يتوفر خيار تحرير في عرض النموذج، حتى عند تعيين المعلمة editInFormView الموجودة في عمود body::esri:style إلى false.

خيارات العرض الجدولي

يمكنك تكوين خيارات مرتبطة بالسجلات (صفوف) في العرض الجدولي من خلال تحديد معلمات في عمود body::esri:style لسؤال تكرار البدء. يرد في الجدول أدناه توضيحًا للمعلمات الاختيارية. يمكنك إضافة العديد من المعلمات من خلال فصلها بمسافات. فيما يلي أحد الأمثلة:

addRecordMode=form copyToNewRecord=false

عند تعيين الظهور لسؤال تكرار البدء إلى جدولي وعدم تحديد أي معلمات في عمود body::esri:style لهذا السؤال، تتوفر خيارات التحرير في عرض النموذج ونسخ إلى سجل جديد وحذف في العرض الجدولي افتراضيًا.

المعلمةالوصف
addRecordMode

حدد الوضع الخاص بزر إضافة سجل وخيار النسخ إلى سجل جديد في العرض الجدولي. الوضع الافتراضي هو row. عندما تكون القيمة row، يُلحَق السجل الجديد بالعرض الجدولي. عندما تكون القيمة form، يُفتح السجل الجديد في عرض النموذج.

القيم: row | form

مثال:

addRecordMode=form
editInFormView

قم بإظهار أو إخفاء خيار التحرير في عرض النموذج ضمن العرض الجدولي. الوضع الافتراضي هو true.

ملاحظة:‏

عندما يحتوي عنصر التكرار على أخطاء، يتم تفعيل خيار التحرير في عرض النموذج حتى في حال ضبط المعلمة editInFormView على القيمة false.

القيم: true | false

مثال:

editInFormView=false
copyToNewRecord

قم بإظهار أو إخفاء خيار نسخ إلى سجل جديد ضمن العرض الجدولي. يتيح هذا الخيار للمستخدمين تكرار سجلٍّ ضمن التكرار. الوضع الافتراضي هو true. تحدد المعلمة addRecordMode كيفية إضافة السجل المكرر.

القيم: true | false

مثال:

copyToNewRecord=true
editInTabularView

تمكين أو تعطيل التحرير ضمن العرض الجدولي. الوضع الافتراضي هو true. عندما تكون القيمة false، تكون جميع الخلايا في العرض الجدولي للقراءة فقط.

القيم: true | false

مثال:

editInTabularView=false

القيود عند استخدام التكرارات الجدولية

تطبق القيود التالية على التكرارات الجدولية:

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

تحديد عدد السجلات المتكررة

ملاحظة:‏

يصف هذا القسم وظائف متاحة فقط في Survey123 Connect وفي التطبيق الميداني Survey123. هذه الوظائف غير متاحة في Survey123 Studio أو Survey123 Mobile.

لتحديد عدد السجلات المتكررة داخل تكرار معين، قم بتعيين عدد التكرارات عن طريق إكمال الخطوات التالية:

  1. في الصف الذي تريد بدء التكرار فيه، اكتب بدء التكرار في عمود النوع في علامة تبويب الاستطلاع.
  2. قم بتوفير قيمة عددية لعدد التكرارات في العمود repeat_count.

    وبشكل اختياري، يمكنك أيضًا تقديم اسم سؤال أو حساب يعود بقيمة رقمية.

  3. قم بتوفير اسم للتكرار في عمود الاسم.
  4. في الصفوف أدنى هذا الإدخال، أدخل الأسئلة التي تريد تضمينها في التكرار الخاص بك.
  5. في الصف الأخير، اكتب إنهاء التكرار في عمود النوع.

عندما يقوم المستخدم بفتح الاستطلاع، يتم بالفعل إنشاء عدد التكرارات المعينة في العمود repeat_count. يتعذر على المستخدم إنشاء تكرارات أو حذفها.

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

ملاحظة:‏

يختلف سلوك تكرار ما مع عدد تكرار متغير على أساس ما إذا كان المستخدم يُنشئ ردًا على استطلاع أو تحرير الاستطلاع المقدم سابقًا على النحو الآتي:

  • عند إنشاء إجابة عن استطلاع، يعرض التطبيق الميداني زرًا في الجزء العلوي من التكرار لحذف جميع السجلات التي تتجاوز عدد التكرار الجديد والتي تحتوي على بيانات؛ وتحذف السجلات الفارغة تلقائيًا. بغض النظر عن ما إذا تم ضغط هذا الزر أم لا، سيؤدي تقديم الرد على الاستطلاع إلى إرسال جميع السجلات باستثناء السجلات الفارغة.
  • عند تعديل أحد الردود الموجودة على الاستطلاع، يعرض التطبيق الميداني رسالة في الجزء العلوي من التكرار للإشارة إلى أن عدد السجلات لا يتطابق مع عدد التكرارات. يمكن إضافة سجلات متكررة جديدة فقط في حال تعيين allowAdds على true في عمود bind::esri:parameters. لا يمكن حذف السجلات التي تتجاوز عدد التكرارات لأن التطبيق الميداني لا يدعم حذف السجلات المتكررة الموجودة. يمكن إرسال ردود الاستطلاع المعدلة حتى إذا كان عدد السجلات المتكررة لا يتطابق مع عدد التكرارات.

تجميع الوظائف

ملاحظة:‏

يصف هذا القسم وظائف متاحة فقط في Survey123 Connect وفي التطبيق الميداني Survey123. هذه الوظائف غير متاحة في Survey123 Studio أو Survey123 Mobile.

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

count(${repeated_question})

يمكنك استخدام الوظائف التالية لتجميع الاستجابات:

  • count
  • sum
  • min
  • max
  • join

تنطبق فقط تلك الوظائف على استجابة الاستطلاع الحالي. إنها تضع في الاعتبار سجلات أخرى في طبقة المعالم. يمكنك أيضًا تضمين الأسئلة باستخدام sum و count في التكرار. ومع ذلك، في حين أنه يتم احتساب قيم sum وcount لكل سجل جديد مضاف إلى التكرار، لا يتم تحديث العمليات الحسابية على الإدخالات السابقة في التكرار تلقائيًا. يمكنك تحديث هذه العمليات الحسابية يدويًا باستخدام الزر تحديث بجوار السؤال. استخدام min وmax مدعوم فقط خارج التكرار.

ملاحظة:‏

عند استخدامها في تطبيق Survey123 الميداني، يمكن وضع الدوال sum وcount وjoin داخل التكرار أو خارجه. في حال استخدام sum وcount وjoin في تطبيق الويب Survey123، يلزم وضعها خارج التكرار. يمكن الإشارة إلى قيمة sum أو count أو join من خارج التكرار في عملية حسابية داخل التكرار.

يمكنك استخدام دالة join لتسلسل الأسئلة التي تُرجع سلسلة. يمكنك أيضًا استخدام دالة sum لربط أسئلة النقطة الجغرافية داخل التكرار كسؤال تتبع جغرافي أو شكل جغرافي خارج التكرار.

لمزيد من المعلومات عن كيفية استخدام هذه الدوال، راجع الصيغ.

إرجاع فهرس السجل المكرر

يمكنك استخدام دالة position(..) لإرجاع عدد صحيح يعكس فهرس السجل المكرر في تكرار. على سبيل المثال، سيرجع السجل الأول في التكرار 1، وسيرجع الثاني 2 ، وهكذا. في المثال التالي، تُستخدم وظيفة position(..) في سؤال عدد صحيح مخفي في تكرار:

مثال على دالة الموضع(..) في XLSForm

تنبيه:

تُرجع دالة position(..) دائمًا 0 في Survey123 Mobile وتطبيق Survey123 الميداني أو 1 في تطبيق الويب Survey123 عند استخدامها خارج تكرار أو داخل مجموعة موجودة داخل تكرار.

يمكنك أيضًا استخدام وظيفة position(..) في تعبير. في المثال التالي، تستخدم دالة selected-at() position(..) لإرجاع الخيار الذي تم تحديده في سؤال select_multiple في الموضع نفسه للسجل المكرر الحالي، وعرض الاختيار في التكرار كملاحظة. تبدأ دالة selected-at() في حساب الاختيارات من الصفر، لذلك يتم طرح اختيار واحد من position(..) للتأكد من تطابق الفهارس على النحو الآتي:

selected-at(${issues}, position(..)-1)

مثال على الموضع(..) ودوال selected-at() في XLSForm

يمكنك استخدام دالة position(..) جنبًا إلى جنب مع indexed-repeat() لاستخراج قيم الأسئلة من سجلات مكررة محددة.

استخدم القيم من التكرارات المفهرسة

ملاحظة:‏

يصف هذا القسم وظائف متاحة فقط في Survey123 Connect وفي التطبيق الميداني Survey123. هذه الوظائف غير متاحة في Survey123 Studio أو Survey123 Mobile.

يمكنك استخدام دالة indexed-repeat() لإرجاع القيمة من سؤال معين في سجل مكرر. يتطلب هذا اسم السؤال واسم التكرار ورقم فهرس التكرار بهذا الترتيب. سيعيد المثال التالي الإجابة عن السؤال room_no، للسجل الثالث في التكرار floor:

indexed-repeat(${room_no}, ${floor}, 3)

يمكنك استخدام وظيفة indexed-repeat() للتكرارات عبر التكرارات. عند استخدامها بهذه الطريقة، ستتلقى فقط القيم التي يمكن الوصول إليها من التكرار الأصلي المرئي حاليًا.

تنبيه:

لا يمكن استخدام دالة indexed-repeat() داخل التكرار الذي يشير إليه، إذ سيؤدي ذلك إلى مرجع دائري. على سبيل المثال، لا يمكن استخدام التعبير التالي لعملية حسابية داخل التكرار المسمى defects:

indexed-repeat(${defect_type}, ${defects}, 3)

القيود المعروفة

فيما يلي القيود المعروفة والسلوكيات غير المتوقعة عند استخدام التكرارات في Survey123:

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