كيفية إصلاح MISSING_FIELD في عمليات نشر Salesforce

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

يظهر أثناء: التحقق من صحة نشر البيانات الوصفية، خاصةً لمكوّنات الواجهة التصريحية

المعنى

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

إنه النظير التصريحي وقت النشر لـ INVALID_FIELD، الذي يظهر في SOQL وApex؛ يعود كلاهما إلى مرجع حقل لا يدعمه مخطط المؤسسة الهدف حاليًا، لكن في أنواع بيانات وصفية مختلفة.

التشخيص

الأسباب الشائعة

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

الحل

  1. أدرج الحقل في نفس عملية النشر
    اجمع الحقل المخصص مع عرض القائمة أو التقرير أو التخطيط الذي يعتمد عليه بحيث يصلان معًا إلى المؤسسة الهدف.
  2. أعد توليد العناصر المعتمِدة بعد إعادة التسمية
    بعد إعادة تسمية حقل أو إعادة إنشائه، احفظ من جديد أو أعد تصدير عروض القوائم والتقارير التي تشير إليه.
  3. تحقق مرة أخرى من اسم API
    تأكد من أن اسم API للحقل مكتوب بشكل صحيح تمامًا، بما في ذلك حالة الأحرف واللاحقة __c، على الكائن الصحيح.
    sf data query --query "SELECT QualifiedApiName FROM FieldDefinition WHERE EntityDefinition.QualifiedApiName = 'Account'" --target-org myOrgAlias
من واقع الاستخدام

إزاي Serpent بتمنع ده

يحدد Serpent AI نطاق المهام حسب الاعتمادية، لا وفق المكوّن الذي عدّلته فقط، بحيث يُجمَّع عرض القائمة أو التقرير تلقائيًا مع الحقل الذي يحتاجه. راجع مكتبة أخطاء نشر Salesforce.

الـ metadata والبيانات في مسار نشر واحد داخل Serpent

الوقاية

انشر عروض القوائم والتقارير كجزء من نفس مهمة الحقل الذي تشير إليه
لا تفصل أبدًا بين الحقل وعرض القائمة أو نوع التقرير أو التخطيط المعتمِد عليه عبر مهام نشر منفصلة.
ابحث في البيانات الوصفية التصريحية قبل إعادة تسمية أي حقل
افحص XML الخاص بـ ListView وReport وLayout بحثًا عن اسم API للحقل قبل إعادة تسميته، وليس Apex وFlow فقط.
استرجع بيانات الحقل الوصفية حديثًا قبل تعديل عرض قائمة أو تقرير يدويًا
اجلب مخطط الكائن الحالي قبل تعديل XML يدويًا لعرض قائمة أو نوع تقرير، حتى لا يُنقل اسم حقل قديم إلى الأمام أبدًا.
أسئلة شائعة

MISSING_FIELD، بالتفصيل

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

ابدأ مجانًا. بدون بطاقة ائتمان، وبدون تثبيت، وبدون التزام.

الإعداد في أقل من 15 دقيقة. بدون الحاجة لتوظيف مختص DevOps.

هل تريد معرفة كيف يمكنكم الشحن أسرع قبل البدء؟ لنتحدث

بدون التزام.