كيفية إصلاح NUMBER_OUTSIDE_VALID_RANGE في عمليات نشر Salesforce
قيمة حقل رقمي في سجل يتم حفظه تتجاوز عدد الخانات أو المنازل العشرية المحددة لذلك الحقل.
يظهر أثناء: عمليات DML وقت التشغيل، وفي تحميل البيانات، واختبارات Apex، وتقييم الصيغ أو التجميعاتالمعنى
يظهر NUMBER_OUTSIDE_VALID_RANGE عندما تحتوي قيمة تُكتب في حقل من نوع Number أو Currency على خانات أكثر، أو منازل عشرية أكثر، مما تسمح به دقة الحقل ومقياسه. يحدد Salesforce هذه الحدود على الحقل نفسه، لذا تُرفض أي قيمة خارجها وقت الحفظ بغض النظر عن مصدرها.
تُضبط الدقة والمقياس عند إنشاء الحقل، ومن المعروف صعوبة توسيعهما لاحقًا دون فتح حالة دعم في بعض الإصدارات، لذا غالبًا ما يشير هذا الخطأ إلى تعريف حقل كان صغيرًا جدًا بالنسبة للبيانات التي يحتاج إلى استيعابها الآن، وليس مجرد قيمة خاطئة عابرة.
الأسباب الشائعة
الحل
- قرّب أو اقطع القيم قبل التحميلعدّل خطوة الترحيل أو التحويل لتطابق الدقة والمقياس الدقيقين للحقل الوجهة قبل الإدراج.
Decimal rounded = rawValue.setScale(2, System.RoundingMode.HALF_UP); - وسّع الحقل إذا كانت الدقة الإضافية مبررة فعلًازد عدد المنازل العشرية أو الخانات للحقل في Setup إذا كان العمل بحاجة فعلية لذلك المستوى من التفاصيل.
- تحقق من مخرجات الصيغة مقابل تعريف الحقلتأكد أن أي صيغة أو تجميع rollup يغذّي الحقل لا يمكن أن ينتج قيمة تتجاوز حدوده الرقمية.
إزاي Serpent بتمنع ده
تشارك بيئات scratch orgs المجمّعة الخاصة بـ Serpent نفس تعريفات الحقول مع الفرع قيد الاختبار، لذا فإن سكريبت ترحيل ينتج قيمًا خارج النطاق يفشل بسرعة في بيئة معزولة بدلًا من أثناء تحميل sandbox مشترك. راجع مكتبة أخطاء نشر Salesforce.

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