تنطبق هذه المقالة على Microsoft Dynamics NAV للبلدان واللغات المحلية التالية.
- الإنجليزية (كندا) (en-ca)
- الإنجليزية (الولايات المتحدة) (en-us)
- الأسبانية (المكسيك) (es-mx)
- الفرنسية (كندا) (fr-ca)
الأعراض
افترض أنك تطبق 2487667 الإصلاح العاجل 2578695 الإصلاح العاجل في إصدار أمريكا الشمالية من Microsoft Dynamics NAV 2009 Service Pack 1 (SP1). عند محاولة نشر مذكرة ائتمان شراء لعنصر يتم استخدامه في مهمة ولديه رمز موقع إلزامي للخانة محدد، تتلقى رسالة الخطأ التالية:
ملاحظة
يجب أن تكون الكمية (القاعدة) أكبر من 0 في رمز موقع محتوى Bin='رمز الموقع'؛ Bin Code='bin code'; العنصر No.='item'; Variant Code='',Unit of Measure Code='PCS'.
تحدث هذه المشكلة في المنتجات التالية:
- إصدار أمريكا الشمالية من Microsoft Dynamics NAV 2009 R2
- إصدار أمريكا الشمالية من Microsoft Dynamics NAV 2009 Service Pack 1 (SP1)
الدقة
معلومات الإصلاح العاجل
يتوفر الآن إصلاح عاجل مدعوم من Microsoft. ومع ذلك، فإنه يهدف فقط إلى تصحيح المشكلة الموضحة في هذه المقالة. قم بتطبيقه فقط على الأنظمة التي تواجه هذه المشكلة المحددة. قد يتلقى الإصلاح العاجل هذا اختبارا إضافيا. لذلك، إذا لم تتأثر بشدة بهذه المشكلة، نوصي بالانتظار حتى حزمة خدمة Microsoft Dynamics NAV التالية أو إصدار Microsoft Dynamics NAV التالي الذي يحتوي على هذا الإصلاح العاجل.
ملاحظة في حالات خاصة، قد يتم إلغاء الرسوم التي يتم تكبدها عادة لمكالمات الدعم إذا حدد محترف الدعم التقني ل Microsoft Dynamics والمنتجات ذات الصلة أن تحديثا معينا سيحل مشكلتك. سيتم تطبيق تكاليف الدعم المعتادة على أسئلة الدعم الإضافية والمشكلات غير المؤهلة للتحديث المحدد المعني.
معلومات التثبيت
توفر Microsoft أمثلة برمجة للتوضيح فقط، دون ضمان سواء تم التعبير عنه أو تضمينه. وهذا يشمل، على سبيل المثال لا الحصر، الضمانات الضمنية للقابلية التجارية أو اللياقة البدنية لغرض معين. تفترض هذه المقالة أنك على دراية بلغة البرمجة التي يتم توضيحها ومع الأدوات المستخدمة لإنشاء إجراءات وتصحيح الأخطاء. يمكن لمهندسي دعم Microsoft المساعدة في شرح وظائف إجراء معين، لكنهم لن يعدلوا هذه الأمثلة لتوفير وظائف إضافية أو إجراءات بناء لتلبية متطلباتك المحددة.
ملاحظة قبل تثبيت هذا الإصلاح العاجل، تحقق من تسجيل خروج جميع مستخدمي عميل Microsoft Navision من النظام. يتضمن ذلك مستخدمي عميل Microsoft Navision Application Services (NAS). يجب أن تكون المستخدم العميل الوحيد الذي قام بتسجيل الدخول عند تنفيذ هذا الإصلاح العاجل.
لتنفيذ هذا الإصلاح العاجل، يجب أن يكون لديك ترخيص مطور.
نوصي بتعيين معرف دور "SUPER" لحساب المستخدم في نافذة تسجيلات الدخول إلى Windows أو في نافذة تسجيلات دخول قاعدة البيانات. إذا تعذر تعيين معرف دور "SUPER" لحساب المستخدم، فيجب عليك التحقق من أن حساب المستخدم لديه الأذونات التالية:
- إذن تعديل للكائن الذي ستقوم بتغييره.
- إذن Execute للكائن System Object ID 5210 ولعنصر System Object ID 9015.
ملاحظة ليس لديك حقوق في مخازن البيانات ما لم يكن لديك لإجراء إصلاح البيانات.
تغييرات التعليمات البرمجية
ملاحظة اختبر دائما إصلاحات التعليمات البرمجية في بيئة خاضعة للرقابة قبل تطبيق الإصلاحات على أجهزة الكمبيوتر الإنتاجية.
لحل هذه المشكلة، اتبع الخطوات التالية:
تغيير التعليمات البرمجية في المتغيرات العمومية في وحدة التعليمات البرمجية Purch.-Post (90) كما يلي:
التعليمات البرمجية الموجودة... TotalChargeAmtLCY@1185 : Decimal; TotalChargeAmt2@1186 : Decimal; TotalChargeAmtLCY2@1187 : Decimal; Text059@1102601000 : TextConst 'ENU=You must assign item charge %1 if you want to invoice it.'; Text060@1102601001 : TextConst 'ENU=You can not invoice item charge %1 because there is no item ledger entry to assign it to.';رمز الاستبدال
... TotalChargeAmtLCY@1185 : Decimal; TotalChargeAmt2@1186 : Decimal; TotalChargeAmtLCY2@1187 : Decimal; Text059@1102601000 : TextConst 'ENU=You must assign item charge %1 if you want to invoice it.'; Text060@1102601001 : TextConst 'ENU=You can not invoice item charge %1 because there is no item ledger entry to assign it to.'; // Add the following line. PositiveWhseEntrycreated@1188 : Boolean;قم بتغيير التعليمات البرمجية في الدالة PostItemJnlLine في Purch.-Post codeunit (90) كما يلي:
التعليمات البرمجية الموجودة... IF PostWhseJnlLine THEN BEGIN ItemTrackingMgt.SplitWhseJnlLine(TempWhseJnlLine,TempWhseJnlLine2,TempWhseTrackingSpecification,FALSE); IF TempWhseJnlLine2.FIND('-') THEN REPEAT WhseJnlPostLine.RUN(TempWhseJnlLine2); IF RevertWarehouseEntry(TempWhseJnlLine2,"Job No.",PostJobConsumptionBeforePurch) THEN WhseJnlPostLine.RUN(TempWhseJnlLine2); UNTIL TempWhseJnlLine2.NEXT = 0; TempWhseTrackingSpecification.DELETEALL; ...رمز الاستبدال
... IF PostWhseJnlLine THEN BEGIN ItemTrackingMgt.SplitWhseJnlLine(TempWhseJnlLine,TempWhseJnlLine2,TempWhseTrackingSpecification,FALSE); IF TempWhseJnlLine2.FIND('-') THEN REPEAT // Add the following lines. IF "Document Type" IN ["Document Type"::"Return Order","Document Type"::"Credit Memo"] THEN CreatePositiveEntry(TempWhseJnlLine2,"Job No.",PostJobConsumptionBeforePurch); // End of the lines. WhseJnlPostLine.RUN(TempWhseJnlLine2); IF RevertWarehouseEntry(TempWhseJnlLine2,"Job No.",PostJobConsumptionBeforePurch) THEN WhseJnlPostLine.RUN(TempWhseJnlLine2); UNTIL TempWhseJnlLine2.NEXT = 0; TempWhseTrackingSpecification.DELETEALL; ...تغيير التعليمات البرمجية في الدالة RevertWarehouseEntry في وحدة التعليمات البرمجية Purch.-Post (90) كما يلي:
التعليمات البرمجية الموجودة... // Delete the following line. IF PostJobConsumptionBeforePurch OR (JobNo = '') THEN EXIT(FALSE); WITH TempWhseJnlLine DO BEGIN "Entry Type" := "Entry Type"::"Negative Adjmt."; Quantity := -Quantity; "Qty. (Base)" := -"Qty. (Base)"; "From Bin Code" := "To Bin Code"; "To Bin Code" := ''; END; EXIT(TRUE); ...رمز الاستبدال
... // Add the following line. IF PostJobConsumptionBeforePurch OR (JobNo = '') OR PositiveWhseEntrycreated THEN EXIT(FALSE); WITH TempWhseJnlLine DO BEGIN "Entry Type" := "Entry Type"::"Negative Adjmt."; Quantity := -Quantity; "Qty. (Base)" := -"Qty. (Base)"; "From Bin Code" := "To Bin Code"; "To Bin Code" := ''; END; EXIT(TRUE); ...إنشاء دالة CreatePositiveEntry جديدة كما يلي:
PROCEDURE CreatePositiveEntry@93(TempWhsJnlLine@1000 : Record 7311;JobNo@1001 : Code[20];PostJobConsumptionBeforePurch@1002 : Boolean);أضف التعليمات البرمجية التالية في الدالة CreatePositiveEntry:
IF PostJobConsumptionBeforePurch OR (JobNo <> '') THEN BEGIN WITH TempWhsJnlLine DO BEGIN Quantity := -Quantity; "Qty. (Base)" := -"Qty. (Base)"; "Qty. (Absolute)" := -"Qty. (Absolute)"; "To Bin Code" := "From Bin Code"; "From Bin Code" := ''; END; WhseJnlPostLine.RUN(TempWhsJnlLine); PositiveWhseEntrycreated := TRUE; END;
المتطلبات الأساسية
يجب أن يكون لديك أحد المنتجات التالية مثبتا لتطبيق هذا الإصلاح العاجل:
- إصدار أمريكا الشمالية من Microsoft Dynamics NAV 2009 R2
- إصدار أمريكا الشمالية من Microsoft Dynamics NAV 2009 Service Pack 1 (SP1)
يجب تطبيق الإصلاحات العاجلة التالية لتطبيق هذا الإصلاح العاجل:
- 2487667 الإصلاح العاجل
لمزيد من المعلومات حول الإصلاح العاجل 2487667، انقر فوق رقم المقالة التالي لعرض المقالة في قاعدة معارف Microsoft:
لا يتم تحديث إدخالات مستودع 2487667 مع كافة أسطر تعقب العناصر في دفتر يومية الوظيفة عند نشر عنصر في دفتر يومية الوظيفة إلى سلة في Microsoft Dynamics NAV 2009 - 2578695 الإصلاح العاجل
لمزيد من المعلومات حول الإصلاح العاجل 2578695، انقر فوق رقم المقالة التالي لعرض المقالة في قاعدة معارف Microsoft:
2578695 رسالة الخطأ "يجب تحديد رمز الحاوية في قالب دفتر يومية العمل" عند إصدار فاتورة (أو تلقي ثم فاتورة) أمر شراء لعنصر تم تعيينه لوظيفة وهو في موقع Bin إلزامي في Microsoft Dynamics NAV
معلومات الإزالة
لا يمكنك إزالة هذا الإصلاح العاجل.
الحالة
لقد أكدت Microsoft على أن هذه مشكلة في منتجات Microsoft المُدرجة في القسم "ينطبق على".
ملاحظة هذه مقالة "FAST PUBLISH" تم إنشاؤها مباشرة من داخل مؤسسة دعم Microsoft. وتقدم المعلومات الواردة هنا كما هي استجابة للقضايا الناشئة. نتيجة لسرعة إتاحتها، قد تتضمن المواد أخطاء مطبعية ويمكن مراجعتها في أي وقت دون إشعار. راجع شروط الاستخدام لاعتبارات أخرى.