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

إضافة مكوّن إلى حل

الهدف​

أضف مكوّنًا (مثل جدول أو نموذج أو عرض) إلى حل — إما بإنشاء مكوّن جديد في مصممه أو بإضافة مكوّن موجود مسبقًا — من مستكشف الحل.

المتطلبات المسبقة​

  • أنت مسجّل الدخول إلى مركز التحكم الإداري بصفة مسؤول المنصة.
  • الحل موجود ويملكه ناشر (راجع إنشاء حل).

الخطوات​

  1. افتح صفحة الحلول من شريط التنقل الجانبي.
  2. اختر فتح في صف الحل. يعرض مستكشف الحل مكوّنات الحل في علامة تبويب لكل نوع — الجداول (٨) والتطبيقات (٢) والتقارير (١) وما إلى ذلك — ويجعل هذا الحل هو حلك النشط. يحمل اسم كل علامة تبويب عدد ما يحتويه الحل من ذلك النوع، فترى شكل الحل كله دون فتح أي شيء؛ واختيار علامة تبويب يعرض مكوّنات نوعها. ولا تظهر علامة تبويب إلا للأنواع التي يحتويها هذا الحل فعلًا.
  3. لإنشاء مكوّن جديد، استخدم قائمة جديد (على سبيل المثال، جدول جديد أو تطبيق جديد). يفتح ذلك المصمم المناسب، حيث يُضاف المكوّن الذي تنشئه إلى الحل النشط.
  4. لإضافة مكوّن موجود بالفعل في البيئة، استخدم إضافة عنصر موجود: اختر نوع المكوّن — جدول أو مجموعة خيارات أو تطبيق أو برنامج نصي أو شاشة استوديو أو متغيّر بيئة أو سياسة بيانات أو تقرير أو استعلام محفوظ أو واجهة برمجية مخصصة أو بوابة أو تطبيق مخصص أو عنصر تحكم مخصص أو مورد ويب أو دور — ثم اختر المكوّن من القائمة. كل اختيار يتم من منتقٍ؛ فأنت لا تكتب اسمًا منطقيًا أبدًا. اختر إضافة عنصر موجود.
  5. يظهر المكوّن تحت علامة تبويب نوعه، ويزيد عدد تلك العلامة واحدًا. وإن لم يكن الحل يحتوي شيئًا من ذلك النوع من قبل، فإن علامة تبويبه تظهر الآن.
ملاحظة

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

ملاحظة

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

ملاحظة

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

فتح مكوّن​

اختر اسم المكوّن لفتحه.

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

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

ملاحظة

قواعد العمل هي الاستثناء. قاعدة العمل تنتمي إلى النموذج الذي تعمل عليه، ومستكشف الحل لا يعرف أي نموذج هو — لذلك لا تُفتح صفوفها. وصولك إلى قاعدة العمل يكون من خلال نموذج جدولها، باستخدام أمر الأحداث في مصمم النموذج.

اختيار مكوّنات الجدول التي تريد تضمينها​

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

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

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

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

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

ملاحظة

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

عرض ما يحتويه الحل فقط​

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

والحل الافتراضي («Main») هو الاستثناء: فهو يحتوي على كل ما في البيئة، ولذلك لا تُضيَّق قوائمه أبدًا، وهو المكان الذي تذهب إليه لرؤية كل ما تملكه البيئة أيًّا كان من أضافه.

أي مكوّن تنشئه بينما يكون الحل مفتوحًا يُضاف إلى ذلك الحل تلقائيًا، فيظهر في قائمته على الفور.

إذا كان مكوّن تستخدمه غائبًا عن القائمة​

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

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

معرفة ما الذي يعتمد على مكوّن​

اختر مكوّنًا ثم اختر التبعيات. تُفتح لوحة بقائمتين:

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

يذكر كل سطر ما هو المكوّن الآخر، وإلى أي جدول ينتمي إن كان ينتمي إلى واحد، ولماذا هو في القائمة — «عمود بحث يشير إليه»، «عمود يأخذ قيمه منه»، «دور أمني يمنح إذنًا عليه»، وهكذا.

تُحسب الإجابة من بيانات البيئة الوصفية في كل مرة تفتح فيها اللوحة، فلا تكون قديمة أبدًا. وهي أيضًا ليست محصورة بهذا الحل: السؤال عمّا هو موجود في البيئة، أيًّا كان من ثبّته.

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

إزالة عنصر من الحل​

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

حذر

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

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

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

حل المشكلات​

  • «field '…' references '…', which is neither in the package nor in this environment.» — تظهر عند الاستيراد. عمود في الحزمة يبحث في جدول، أو يأخذ قيمه من قائمة خيارات (مجموعة خيارات)، لا تحملها الحزمة ولا تحتويها البيئة. لم يُستورَد شيء. إن كان حلٌّ آخر يجلبه، فاستورد ذلك الحل أولاً. وإلا ففي البيئة التي صدّرت منها، حدّد الجدول في نظرة الحل العامة، واختر التبعيات، وأضف ما يظهر تحت يحتاج إلى باستخدام إضافة عنصر موجود، ثم صدّر مرة أخرى. يمكن إضافة مكوّن أي ناشر؛ ولا يلزم أن تطابق بادئته بادئة الحل.
  • «Component … already exists in the solution.» — هذا المكوّن مشار إليه في الحل بالفعل.

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

  • إنشاء حل.
  • إنشاء ناشر.