إنتقل إلى المحتوى الرئيسي

إعداد الحالات والأسباب

الهدف​

تصميم دورة حياة الجدول: الحالات التي يمكن أن يكون أحد سجلاته فيها، والأسباب التي تضعه في كل منها.

كل جدول يملكها سلفًا​

عند إنشاء الجدول يُمنح حقلين — الحالة والسبب — يحملان نشِط وغير نشِط سلفًا. أنت لا تضيفهما ولا تستطيع حذفهما.

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

تبدأ السجلات الجديدة في الحالة الأولى (نشِط، ما لم تعد ترتيبها) بالسبب الافتراضي لتلك الحالة.

الخطوات​

  1. افتح الجدول واختر الحالات والأسباب من شريط التنقّل الجانبي.

  2. عدّل اسم الحالة — بما في ذلك نشِط وغير نشِط، وهما لك لتعيد تسميتهما.

  3. امنحها لونًا وأيقونة. كلاهما اختياري ومستقل عن الآخر. وهما ما يتيح لأحدهم أن يمسح قائمة بنظرة فيرى أي السجلات ما زال مفتوحًا، بدل قراءة كل صف؛ فيستحقان الضبط. ويفتح مربع اللون لوحة من اثني عشر لونًا سريعًا فوق طيف — اسحب المربّع للدرجة والشريط لدرجة اللون، أو اكتب رمزًا سِتّ‑عشريًّا؛ ويزيله مسح اللون أسفل تلك اللوحة. ومسح الأيقونة في تذييل مُنتقي الأيقونات. ويقع المسحان داخل المُنتقي، لا في ✕ منفصل بجانبه.

  4. تحت كل حالة، أضف الأسباب التي قد يكون السجل فيها لأجلها. فصفقة غير نشِطة قد تكون كذلك لأنها رُبحت أو خُسرت — وهذان يخصّان غير نشِط، لا قائمة مسطحة واحدة.

  5. اختر السبب الافتراضي لكل حالة، أو اتركه على أول سبب لاستخدام ما في الأعلى.

  6. أعد ترتيب الحالات بسحب الحالة من المقبض في بداية بطاقتها، وأسباب الحالة بالطريقة نفسها من المقبض في بداية صفّ كل سبب. ومن دون فأرة: انقل التركيز إلى المقبض، واضغط Space لالتقاطه، ومفاتيح الأسهم لتحريكه، ثم Space مرة أخرى لإفلاته.

    والحالة الأولى هي التي تبدأ بها السجلات الجديدة، فترتيب الحالات قرار حقيقي لا مجرد عرض. ولا يُسحب السبب إلا داخل حالته — فنقله إلى حالة أخرى تعديل مختلف، ولا تُخفيه المنصة خلف الحركة نفسها. ولا تُعيد إعادة الترتيب الترقيم أبدًا: تحتفظ الحالة أو السبب بالقيمة المخصَّصة له، فلا تتأثر السجلات التي تحمله بالفعل.

  7. اختر حفظ.

الأسباب تخصّ الحالات​

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

لماذا ليست هذه مجموعة خيارات​

مجموعة الخيارات قائمة مشتركة قابلة لإعادة الاستخدام ترتبط بها عدة جداول. أما دورة الحياة فالعكس: «نشِط» على فاتورة و«نشِط» على جهة اتصال ليسا الخيار نفسه، والمشتركة كانت ستعني تعديل دورة حياة كل الجداول في مكان واحد. لذا تعيش الحالات والأسباب على الجدول، وتُعدَّل معه، وتسافر معه عند تصدير الحل.

ما الذي يحدث خلف الكواليس​

تُخزَّن نشِط وغير نشِط بالقيمتين 0 و1 — فكل جدول يملكهما وتعنيان الشيء نفسه في كل مكان، فلا يحتاجان مساحة أسماء. أما ما تضيفه أنت فيُرقَّم من نطاق ناشرك (270150000 وما فوق)، وهي القاعدة نفسها التي تتبعها مجموعات الخيارات، كي لا يستطيع ناشران يوسّعان الجدول نفسه أن يسكّا الرقم نفسه لمعنيين مختلفين.

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

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

معالجة المشكلات​

  • «A table needs at least one State.» — أزلتها كلها. لا بد أن يكون السجل شيئًا.
  • «The default reason for … is not one of its reasons.» — السبب الذي رشّحته يخصّ حالة أخرى. والنموذج لا يعرض إلا أسباب الحالة الجارية، فترشيح خارجها ما كان ليُستخدم أبدًا.
  • «Two states are both called …» — حالتان بالاسم نفسه لا يميّزهما مَن يختار إحداهما.
  • «'State' is part of every table's lifecycle and cannot be deleted.» — اتركها خارج النموذج بدلًا من ذلك؛ راجع كل جدول يملكها سلفًا أعلاه.
  • يعرض السجل رقمًا بدل اسم الحالة. — إنه يحمل قيمة لم تعد على الجدول. اضبطه على حالة حالية.

سيناريوهات ذات صلة​