كيفية إصلاح INVALID_ID_FIELD في عمليات نشر Salesforce
معرّف السجل الممرَّر إلى عملية بحث أو DML مشوّه، أو بطول خاطئ، أو ينتمي إلى الكائن الخطأ.
يظهر أثناء: DML وقت التشغيل وتعيين البحث، وليس عند نشر البيانات الوصفيةالمعنى
يعني INVALID_ID_FIELD أن المعرّف الذي استلمته Salesforce لا يُحلَّل إلى سجل صالح للحقل الذي مُرِّر إليه. يكون هذا في الغالب معرّفًا ثابتًا في الكود أو مُعالجًا بشكل خاطئ: طول غير صحيح، حالة أحرف غير صحيحة، أو معرّف ينتمي إلى كائن مختلف عمّا يتوقعه الحقل.
يحمل كل معرّف سجل في Salesforce بادئة مفتاح من ثلاثة أحرف تحدد كائنه، مثل 001 للحساب (Account) و003 لجهة الاتصال (Contact)، وهكذا، لذا يعود هذا الخطأ غالبًا إلى معرّف من الكائن الخطأ يُسنَد إلى حقل بحث يتوقع كائنًا آخر.
الأسباب الشائعة
الحل
- استخدم دائمًا المعرّف المكوّن من 18 حرفًااعتمد المعرّف المكوّن من 18 حرفًا غير الحساس لحالة الأحرف كمعيار في الكود، ولا تُضمِّن أبدًا معرّفًا من 15 حرفًا بشكل ثابت.
- ابحث بدلاً من ذلك باستخدام معرّف خارجياستبدل معرّفات السجلات الثابتة باستعلام على معرّف خارجي مستقر أو حقل فريد، بحيث يُحلّ المرجع بشكل صحيح في كل مؤسسة.
- تحقق من تطابق نوع الكائنتحقق من بادئة المفتاح المكوّنة من ثلاثة أحرف للمعرّف مقارنةً بالكائن الذي يتوقعه الحقل قبل تمريره.
Id anyId = '001XXXXXXXXXXXXXXX'; String prefix = String.valueOf(anyId).left(3); System.debug(Schema.getGlobalDescribe().values());
إزاي Serpent بتمنع ده
يحلّ Serpent AI المراجع عبر مفتاح العمل بدلًا من معرّف السجل الخام عند نقل التغييرات بين البيئات، بحيث لا يصل هذا النوع من الأخطاء إلى عملية النشر. راجع مكتبة أخطاء نشر Salesforce.

الوقاية
أخطاء ذات صلة
INVALID_ID_FIELD، بالتفصيل
ابدأ مجانًا. بدون بطاقة ائتمان، وبدون تثبيت، وبدون التزام.
الإعداد في أقل من 15 دقيقة. بدون الحاجة لتوظيف مختص DevOps.
