نظرة عامة حول إزالة التبعيات

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

‏‫ملاحظة‬

في هذا المقال، يعني الإجراء حذف إزالة المكون بالكامل من النظام.

نناقش في هذ المقال كيفية التعامل مع هذه التبعيات والاستراتيجيات التي يمكنك استخدامها لإزالة التبعيات التي لم تعد بحاجة إليها.

تبعيات المكونات غير المدارة مقابل المكونات المدارة

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

المكونات غير المُدارة

يتم تمثيل هذه المكونات بطبقة واحدة في الحل النشط. تؤدي أي عملية حذف في مكون كهذا إلى إزالة المكون نهائيًا.

المكونات المُدارة

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

أمثلة سيناريوهات

توضح أمثلة السيناريوهات التالية ما يحدث لطبقات الحلول عند إزالة تثبيت الحلول.

السيناريو 1: إزالة تثبيت طبقة حل واحدة

إزالة التثبيت بطبقة واحدة.

تؤدي إزالة تثبيت الحل 1 إلى حذف مكون لكونه الطبقة الوحيدة للمكون.

السيناريو 2: إزالة تثبيت طبقات الحلول من ناشرين مختلفين

إزالة التثبيت باستخدام طبقتين - ناشر مختلف.

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

السيناريو 3: إزالة تثبيت طبقات حلول متعددة من ناشرين مختلفين

إزالة التثبيت باستخدام طبقات متعددة - ناشر مختلف.

  • لا تؤدي إزالة تثبيت الحل 3 إلى حذف مكون. لن تتم إزالة إلا تلك الطبقة.
  • لا تؤدي إزالة تثبيت الحل 2 إلى حذف مكون. لن تتم إزالة إلا تلك الطبقة.
  • لا تؤدي إزالة تثبيت الحل 1 إلى حذف مكون، لأنه في هذه الحالة يوجد حل آخر من نفس الناشر (الناشر أ = الناشر ج)). يزيل النظام الأساسي الطبقة من الحل 1 ويستبدلها بالطبقة من الحل 3.

السيناريو 4: إزالة تثبيت طبقات الحلول في تخصيص غير مدار

إزالة التثبيت باستخدام طبقتين - تخصيص غير مدار.

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

إظهار صفحة التبعيات

يسرد أمر إظهار التبعيات التبعيات لمكون الحل أو الحل المحدد. يمكن استدعاؤها بواسطة:

  • تحديد إظهار التبعيات في صفحة الحل.
  • تحديد تبعيات إظهار>متقدم داخل أحد الحلول عند تحديد مكون حل.
  • جارٍ محاولة إزالة تثبيت حل، مما سيؤدي إلى كشف النظام الأساسي عن وجود تلك التبعيات.

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

تشخيص التبعيات

فلنطلع على السيناريو التالي. تحتوي المؤسسة أدناه على حلين: الحل - سير العمل والحل - الكيان المخصص.

قائمة حلول ذات حلين.

قرر مالك المؤسسة أنها لم تعد تتطلب الحل - الكيان المخصص وحاول حذفها، وتم عرض ذلك بالصفحة التالية:

تفاصيل التبعية بعد محاولة حذف حل.

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

‏‫ملاحظة‬

قد تؤدي إزالة تثبيت الحل إلى حذف المزيد من المكونات، ولكن نظرًا لعدم احتوائها عل تبعيات، فلن تظهر في القائمة.

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

يظهر الشكل التالي تفاصيل التبعية بين الكيان (الكيان المخصص) والعملية (سير عمل الاختبار).

تفاصيل تبعية الكيان المخصص.

استنادًا إلى البيانات المعروضة، يمكنك معرفة أن المكون التابع ينتمي إلى حل بالاسم SolutionWorkflow. لإزالة هذه التبعية، يمكننا إما:

  • تحديث تعريف سير العمل في SolutionWorkflow بإزالة أي مراجع إلى الكيان أو مكوناته الفرعية. ثم تحديث الحل أو ترقيته.
  • إزالة تثبيت الحل SolutionWorkflow.
  • قم بإزالة سير العمل من إصدار جديد للحل SolutionWorkflow، ثم قم بإجراء ترقية.

ونظرًا لأنه يمكن لأي مكون تابع واحد منع إزالة الحل، فمن المستحسن مراجعة كافة التبعيات وإجراء كافة التغييرات المطلوبة في عملية واحدة.

يظهر الشكل التالي تفاصيل التبعية بين الكيان (الكيان المخصص) والتطبيق المستند إلى نموذج (تطبيقي).

التبعية بين الكيان (الكيان المخصص) والتطبيق (تطبيقي).

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

لإزالة هذه التبعية، يمكنك إما:

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

‏‫ملاحظة‬

لا يعد إزالة تثبيت حل غير مدار أحد الخيارات لإزالة هذه التبعية، لأن الحلول غير المدارة ما هي إلا وسيلة لتجميع المكونات.

إجراءات إزالة تبعية مدارة

التبعيات المدارة هي تلك التي يقترن فيها المكون التابع بحل مُدار. لحل هذا النوع من التبعية، يجب العمل على الحل الذي تمت إضافة المكون به. قد يختلف هذا الإجراء وفقًا لما تحاول القيام به.

إذا كنت تحاول إزالة تثبيت حل

اتبع الخطوات التالية:

  1. في المؤسسة الهدف، افحص ارتباط طبقات الحلول للعثور على أعلى حل في قائمة المكونات التابعة.
  2. في المؤسسة المصدر، قم بإعداد إصدار جديد لذلك الحل لا يحتوي فيه الحل على المكونات التابعة، أو يحتوي على إصدار محدث من المكون التابع الذي لا يحتوي علي مراجع للمكون المطلوب. وسيكون هدفك هو إزالة أي مرجع للمكونات المطلوبة في الإصدار الجديد من الحل.
  3. تصدير الإصدار الجديد للحل.
  4. في المؤسسة الهدف، قم بترقية ذلك الحل.
  5. أعد محاولة إزالة التثبيت.

إذا كنت تحاول ترقية حل

في هذه الحالة، يجب تأكيد رغبتك في حذف المكون المطلوب (تذكر أنه لا يتم فرض التبعيات إلا في المكونات التي يتم حذفها).

إذا لم تترغب في حذف المكون، يمكنك إصلاح الإصدار الجديد للحل بإضافة المكون مرة أخرى باتباع ما يلي:

  1. في المؤسسة الهدف، قم بإزالة تثبيت الحل المرحلي (الحل الذي ينتهي بـ _Upgrade).
  2. في المؤسسة المصدر، أضف المكونات المطلوبة مرة أخرى إلى الحل.
  3. قم بتصدير الإصدار الجديد.
  4. حاول الترقية مرة أخرى.

إذا كا الحذف مقصودًا، يجب إزالة التبعية. جرب الخطوات الموضحة في القسم السابق، "إذا كنت تحاول إزالة تثبيت حل".

الطبقات و التبعيات

يمكن أن تحتوي المكونات التابعة على طبقات، لذا قد تحتاج إلى تغيير أكثر من حل لإزالة تبعية بالكامل. لا يحسب إطار عمل التبعية إلا التبعيات بين الطبقات العليا للمكونات المطلوبة والتابعة. وهو ما يعني أنك تحتاج إلى العمل بطريقتك من أعلى حلول المكونات التابعة إلى أسفلها.

فكر في السيناريو التالي:

اختيار حل لإزالة تثبيته.

تحاول إزالة تثبيت الحل - الكيان المخصص، وتم حظر العملية بواسطة التبعيات.

التبعيات التي تمنع إزالة تثبيت الحل.

يمكنك البدء في تشخيص التبعية بتحديد طبقات الحلول في السمة new_numberfield. راجع لقطة الشاشة التالية:

التبعية بين السمة new_numberfield وسير العمل سير عمل الاختبار.

نظرًا لأنه لا يتم إنشاء التبعيات إلا بين الطبقات الأعلى لكل مكون، فإن الخطوة الأولى هي التعامل مع التبعية بين السمة new_numberfield في SolutionCustomEntity وسير العمل سير عمل الاختبار في SolutionWorkflow3.

لإزالة التبعية، تقرر إزالة تثبيت SolutionWorkflow3. يمكنك القيام بذلك، ولكن عند محاولة إزالة تثبيت الحل مرة أخرى، يتم عرض نفس صفحة التبعيات:

التبعيات التي تمنع إزالة تثبيت الحل - الكيان المخصص.

ولكن السمة new_numberfield لم تعد مدرجة، حتى وإن كانت موجودة في المزيد من الطبقات.

إجراءات إزالة تبعية غير مدارة

لإزالة التبعيات غير المدارة، تحتاج إلى العمل على المكونات مباشرة، وليس على الحلول التي تنتمي إليها. على سبيل المثال، إذا كنت ترغب في إزالة التبعيات بين سمة ونموذج، يجب تحريرها في محرر النماذج وإزالة السمة من النموذج. ستتم إزالة التبعية بعد تحديد حفظ ونشر.

‏‫ملاحظة

  • يتيح لك أمر إظهار التبعيات اتخاذ إجراء لعرضها أو إزالتها أو تحرير المكون أو حذفها. مزيد من المعلومات: عرض التبعيات لمكون
  • يمكنك أيضًا حذف المكون التابع. يؤدي هذا الإجراء إلى حذف كافة التبعيات إلى جانب المكون.

لعرض تبعياتأحد>المكونات، فمن منطقة الحلول، افتح الحل الذي تريده، وحدد الكيانات التابعة العمودية المجاورة للمكون، ثم حدد تبعيات العرض المتقدم.

تحتوي صفحة التبعيات على جزأين مميزين:

  • المكونات التابعة: قائمة بالمكونات التي تعتمد على الحقل المحدد. وبمعني آخر، ستنطوي هذه المكونات هذا الحقل كمكونها المطلوب.
  • المكونات المطلوبة: قائمة بالمكونات التي يتطلبها هذا الحقل للعمل. وبمعني آخر، ستنطوي هذه المكونات هذا الحقل كمكونها التابع.

تبعيات المكونات.

(راجع أيضًا)