التاريخ في ملف SIE غير صحيح عند تشغيل التقرير 11207 لإنشاء ملف SIE باستخدام نوع الملف 2 في الإصدار السويدي من Microsoft Dynamics NAV

ينطبق على
Dynamics NAV 2009 Service Pack 1 Microsoft Dynamics NAV 5.0 Service Pack 1

توفر المقالات المنشورة بسرعة معلومات مباشرة من داخل مؤسسة دعم Microsoft. يتم إنشاء المعلومات الواردة هنا استجابة للمواضيع الناشئة أو الفريدة، أو تهدف إلى استكمال معلومات قاعدة المعارف الأخرى.

تنطبق هذه المقالة على Microsoft Dynamics NAV للغات اللغة السويدية (se).

الأعراض

عند تشغيل تقرير تصدير SIE (11207) لإنشاء ملف SIE باستخدام نوع ملف الأرصدة الدورية (نوع الملف 2) في الإصدار السويدي من Microsoft Dynamics NAV، تكون البيانات الموجودة في ملف SIE غير صحيحة. المبالغ الدورية المختلفة مفقودة.

تحدث هذه المشكلة في المنتجات التالية:

  • الإصدار السويدي من Microsoft Dynamics NAV 2009 Service Pack 1
  • الإصدار السويدي من Microsoft Dynamics NAV 5.0 Service Pack 1

الدقة

معلومات الإصلاح العاجل

يتوفر الآن إصلاح عاجل مدعوم من 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.

                
ملاحظة ليس لديك حقوق في مخازن البيانات ما لم يكن لديك لإجراء إصلاح البيانات.

تغييرات التعليمات البرمجية

ملاحظة اختبر دائما إصلاحات التعليمات البرمجية في بيئة خاضعة للرقابة قبل تطبيق الإصلاحات على أجهزة الكمبيوتر الإنتاجية.
لحل هذه المشكلة، قم بتغيير التعليمات البرمجية في الدالة PeriodicPost في تقرير تصدير SIE (11207). اتبع هذه الخطوات للقيام بذلك:

  1. أضف متغيرا محليا، ثم حدد المتغير كما يلي:

    • الاسم: CurrMonthStartDate
    • نوع البيانات: التاريخ
  2. أضف متغيرا محليا، ثم حدد المتغير كما يلي:

    • الاسم: CurrMonthEndDate
    • نوع البيانات: التاريخ
  3. أضف متغيرا محليا، ثم حدد المتغير كما يلي:

    • الاسم: FilterEndDate
    • نوع البيانات: التاريخ
  4. تغيير التعليمات البرمجية كما يلي:
    التعليمات البرمجية الموجودة 1

    ...
              GLAccount.SETFILTER("Global Dimension 1 Filter",'');
              GLAccount.SETFILTER("Global Dimension 2 Filter",'');
              GLAccount.SETFILTER("Date Filter",AccountDateFilter);
    
              // Delete the following lines.
              GLAccount.CALCFIELDS("Net Change");
              IF GLAccount."Net Change" <> 0 THEN
                ExportFile.WRITE(STRSUBSTNO('#PSALDO   %1  %2  %3  {} %4',0,FORMAT(FormatDate(GLAccount.GETRANGEMAX
                (GLAccount."Date Filter")),6),GLAccount."No.",FormatAmount(GLAccount."Net Change")));
    
              SetGLFilterPrev(GLAccount2);
              GLAccount2.CALCFIELDS("Net Change");
              IF GLAccount2."Net Change" <> 0 THEN
                ExportFile.WRITE(STRSUBSTNO('#PSALDO  %1  %2  %3  {} %4',-1,FORMAT(FormatDate(GLAccount2.GETRANGEMAX
                (GLAccount2."Date Filter")),6),GLAccount2."No.",FormatAmount(GLAccount2."Net Change")));
              // End of the lines.
    
              IF AccountBudgetFilter <> '' THEN BEGIN
                GLAccount.RESET;
                GLAccount.SETFILTER("Global Dimension 1 Filter",'');
    ...
    
    

    رمز الاستبدال 1

    ...
              GLAccount.SETFILTER("Global Dimension 1 Filter",'');
              GLAccount.SETFILTER("Global Dimension 2 Filter",'');
              GLAccount.SETFILTER("Date Filter",AccountDateFilter);
    
              // Add the following lines.
              CurrMonthStartDate := GLAccount.GETRANGEMIN(GLAccount."Date Filter");
              FilterEndDate := GLAccount.GETRANGEMAX(GLAccount."Date Filter");
              REPEAT
                CurrMonthEndDate := CALCDATE('<CM>',CurrMonthStartDate);
                IF FilterEndDate < CurrMonthEndDate THEN
                  CurrMonthEndDate := FilterEndDate;
                GLAccount.SETFILTER("Date Filter",'%1..%2',CurrMonthStartDate,CurrMonthEndDate);
                GLAccount.CALCFIELDS("Net Change");
                IF GLAccount."Net Change" <> 0 THEN
                  ExportFile.WRITE(
                    STRSUBSTNO('#PSALDO   %1  %2  %3  {} %4',0,
                      FORMAT(FormatDate(GLAccount.GETRANGEMAX(GLAccount."Date Filter")),6),
                      GLAccount."No.",FormatAmount(GLAccount."Net Change")));
                CurrMonthStartDate := CALCDATE('<CM+1D>',CurrMonthStartDate);
              UNTIL CurrMonthEndDate >= FilterEndDate;
              // End of the lines.
    
              IF AccountBudgetFilter <> '' THEN BEGIN
                GLAccount.RESET;
                GLAccount.SETFILTER("Global Dimension 1 Filter",'');
    ...
    
    

    التعليمات البرمجية الموجودة 1

    ...
                GLAccount.SETFILTER("Global Dimension 2 Filter",'');
                GLAccount.SETFILTER("Date Filter",AccountDateFilter);
                GLAccount.SETFILTER("Budget Filter",AccountBudgetFilter);
    
                // Delete the following lines.
                GLAccount.CALCFIELDS("Budgeted Amount");
                IF GLAccount."Budgeted Amount" <> 0 THEN
                  ExportFile.WRITE(STRSUBSTNO('#PBUDGET   %1  %2  %3  {} %4',0,FORMAT(FormatDate(GLAccount.GETRANGEMAX
                  (GLAccount."Date Filter")),6),GLAccount."No.",FormatAmount(GLAccount."Budgeted Amount")));
                SetGLFilterPrev(GLAccount2);
                GLAccount2.CALCFIELDS("Budgeted Amount");
                IF GLAccount2."Budgeted Amount" <> 0 THEN
                  ExportFile.WRITE(STRSUBSTNO('#PBUDGET  %1  %2  %3  {} %4',-1,FORMAT(FormatDate(GLAccount2.GETRANGEMAX
                  (GLAccount2."Date Filter")),6),GLAccount2."No.",FormatAmount(GLAccount2."Budgeted Amount")));
                // End of the lines.
    
              END;
              DialogWindow.UPDATE(7,GLAccount."No.");
              DialogWindow.UPDATE(8,ROUND(Counter / CounterTotal*10000,1));
    ...
    
    

    رمز الاستبدال 1

    ...
                GLAccount.SETFILTER("Global Dimension 2 Filter",'');
                GLAccount.SETFILTER("Date Filter",AccountDateFilter);
                GLAccount.SETFILTER("Budget Filter",AccountBudgetFilter);
    
                // Add the following lines.
                CurrMonthStartDate := GLAccount.GETRANGEMIN(GLAccount."Date Filter");
                FilterEndDate := GLAccount.GETRANGEMAX(GLAccount."Date Filter");
                REPEAT
                  CurrMonthEndDate := CALCDATE('<CM>',CurrMonthStartDate);
                  IF CurrMonthEndDate > FilterEndDate THEN
                    CurrMonthEndDate := FilterEndDate;
                  GLAccount.SETFILTER("Date Filter",'%1..%2',CurrMonthStartDate,CurrMonthEndDate);
                  GLAccount.CALCFIELDS("Budgeted Amount");
                  IF GLAccount."Budgeted Amount" <> 0 THEN
                    ExportFile.WRITE(
                      STRSUBSTNO('#PBUDGET   %1  %2  %3  {} %4',0,
                        FORMAT(FormatDate(GLAccount.GETRANGEMAX(GLAccount."Date Filter")),6),
                        GLAccount."No.",FormatAmount(GLAccount."Budgeted Amount")));
                  CurrMonthStartDate := CALCDATE('<CM+1D>',CurrMonthStartDate);
                UNTIL CurrMonthEndDate >= FilterEndDate;
                // End of the lines.
    
              END;
              DialogWindow.UPDATE(7,GLAccount."No.");
              DialogWindow.UPDATE(8,ROUND(Counter / CounterTotal*10000,1));
    ...
    
    

          

المتطلبات الأساسية

يجب أن يكون لديك أحد المنتجات التالية مثبتا لتطبيق هذا الإصلاح العاجل:

  • الإصدار السويدي من Microsoft Dynamics NAV 2009 Service Pack 1
  • الإصدار السويدي من Microsoft Dynamics NAV 5.0 Service Pack 1

معلومات الإزالة

لا يمكنك إزالة هذا الإصلاح العاجل.

الحالة

لقد أكدت Microsoft على أن هذه مشكلة في منتجات Microsoft المُدرجة في القسم "ينطبق على".

لا تقدم MICROSOFT و/أو مورديها أي إقرارات أو ضمانات حول ملاءمة المعلومات الواردة في المستندات والرسومات ذات الصلة المنشورة على هذا الموقع ("المواد") أو موثوقيتها أو دقتها لأي غرض.

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