أنت غير متصل حاليًا، وفي انتظار الإنترنت الخاص بك ليقوم بإعادة الاتصال

يتم تحديث أسعار صرف العملات بشكل غير صحيح عند دمج Microsoft Dynamics CRM مع Microsoft Dynamics NAV 2009 R2 باستخدام الرابط ل Microsoft Dynamics

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

اضغط هنا لرابط المقالة باللغة الانجليزية2597312
تنطبق هذه المقالة على Microsoft Dynamics التنقل لكافة البلدان وكافة اللغات باللغة.
الأعراض
تفترض تكامل Microsoft Dynamics CRM مع Microsoft Dynamics NAV 2009 R2 باستخدام الرابط ل Microsoft Dynamics ميزة service Pack 5. في بعض وحدات السيناريو، يتم تحديث أسعار صرف العملات بشكل غير صحيح في Microsoft CRM.
عندما تقوم بتحديث أسعار صرف العملات في Microsoft Dynamics NAV 2009 R2، تتلقى رسالة الخطأ التالية:
[أسعار صرف العملات إلى عمله] واجه خطأ أثناء معالجة …
ترانساكتيونكورينسي مع معرف = <guid>غير موجود.</guid>
في هذه الحالة، تتم مزامنة السجل الأول فقط من أسعار صرف العملات إلى Microsoft CRM. عند النظام يزامن السجلات المتتالية التي تم إدخالها في جدول "أسعار صرف العملات" مع تواريخ بدء لاحق، يحدث هذا الخطأ.
السبب
تحدث هذه المشكلة لأن آخر سعر صرف العملة المتغيرة، بدلاً من سعر الصرف الحالية الخاصة بالعملة معين، تتم مزامنة إلى Microsoft Dynamics CRM باستخدام الرابط ل Microsoft Dynamics.
الحل

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

يتوفر الآن إصلاح عاجل معتمد من Microsoft. ومع ذلك، الغرض منه هو فقط لتصحيح المشكلة الموضحة في هذه المقالة. تطبيقها فقط على الأنظمة التي تواجه هذه المشكلة بالتحديد. قد يتم إجراء اختبارات إضافية على هذا الإصلاح العاجل. لذلك، إذا لم يكن تأثير هذه المشكلة كبيرا، نوصي بالانتظار التالي من حزمة الخدمة Microsoft Dynamics NAV 2009 أو الإصدار Microsoft Dynamics NAV التالي الذي يحتوي على هذا الإصلاح العاجل.

ملاحظة في بعض الحالات، يحدد المصروفات التي تحتسب عادة لدعم قد يتم إلغاء المكالمات إذا "أخصائي الدعم التقني" ل Microsoft Dynamics والمنتجات ذات الصلة أن تحديثًا معيناً سوف يعمل على حل المشكلة. سيتم تطبيق تكاليف الدعم المعتادة على أسئلة الدعم الإضافية والمشكلات التي لا يعمل على حلها هذا التحديث.

معلومات التثبيت

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

ملاحظة قبل تثبيت هذا الإصلاح العاجل، تحقق من أن كافة المستخدمين العميل Microsoft Navision تسجيل خروج النظام. ويشمل ذلك خدمات Microsoft Navision التطبيق (NAS) المستخدمين العميل. يجب أن يكون المستخدم عميل فقط الذي تم تسجيل دخوله عندما قمت بتطبيق هذا الإصلاح العاجل.

لتطبيق هذا الإصلاح العاجل، يجب أن يكون لديك ترخيص مطور.

من المستحسن أن حساب المستخدم في إطار تسجيلات دخول Windows أو في إطار "تسجيل الدخول كقاعدة بيانات" تعيين معرف دور "رئيسي" إذا كان لا يمكن تعيين حساب مستخدم معرف دور "SUPER"، يجب التحقق من أن حساب المستخدم يملك الأذونات التالية:
  • إذن "تعديل" للكائن الذي يعني أنك تغير.
  • إذن Execute معرف كائن النظام 5210 الكائن وللحصول معرف كائن النظام 9015 الكائن.


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

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

ملاحظة إصلاح دوماً اختبار التعليمات البرمجية الموجودة في بيئة ذات التحكم قبل تطبيق التصحيحات لأجهزة الكمبيوتر الخاصة بالإنتاج.
لحل هذه المشكلة، اتبع الخطوات التالية:
  1. تطبيق التغييرات التعليمات البرمجية التالية في Microsoft Dynamics NAV 2009 R2:
    1. إنشاء جديد جيتكوررينسيفاكتور تعمل في جدول "أسعار صرف العملات" (330) كما يلي:
      PROCEDURE GetCurrentCurrencyFactor@14(CurrencyCode@1000 : Code[10]) : Decimal;    BEGIN      SETRANGE("Currency Code",CurrencyCode);      IF FINDLAST THEN        EXIT("Exchange Rate Amount" / "Relational Exch. Rate Amount")    END;
    2. إنشاء جديد سيتكوررينسيفاكتور تعمل في جدول "أسعار صرف العملات" (330) كما يلي:
      PROCEDURE SetCurrentCurrencyFactor@15(CurrencyCode@1000 : Code[10];CurrencyFactor@1001 : Decimal);    VAR      RateForTodayExists@1002 : Boolean;    BEGIN      "Currency Code" := CurrencyCode;      TESTFIELD("Currency Code");      RateForTodayExists := GET(CurrencyCode,TODAY);      "Exchange Rate Amount" := 1;      "Relational Exch. Rate Amount" := 1 / CurrencyFactor;      "Adjustment Exch. Rate Amount" := "Exchange Rate Amount";      "Relational Adjmt Exch Rate Amt" := "Relational Exch. Rate Amount";     IF RateForTodayExists THEN BEGIN       "Relational Currency Code" := '';       MODIFY;     END ELSE BEGIN       "Starting Date" := TODAY;       INSERT;     END;    END;
    3. إضافة متغير عمومي جديد على شكل العملات (5)، وقم بتحديد المتغير كما يلي:
      • الاسم: كورينسيفاكتور
      • نوع البيانات: العلامة العشرية
    4. إضافة عامل عمله حقل (46) في شكل العملات (5).
    5. إضافة متغير محلي جديد في عامل عمله-أونفاليداتي مشغل في شكل العملات (5)، وقم بتحديد المتغير كما يلي:
      • الاسم: كورينسييكستشانجيراتي
      • نوع البيانات: سجل
      • نوع فرعي: سعر الصرف
    6. إضافة التعليمة البرمجية التالية في عامل عمله-أونفاليداتي مشغل في شكل العملات (5):
      CurrencyExchangeRate.SetCurrentCurrencyFactor(Code,CurrencyFactor);
    7. إضافة متغير محلي جديد في أونافتيرجيتريكورد مشغل في شكل العملات (5)، وقم بتحديد المتغير كما يلي:
      • الاسم: كورينسييكستشانجيراتي
      • نوع البيانات: سجل
      • نوع فرعي: سعر الصرف
    8. إضافة التعليمة البرمجية التالية في أونافتيرجيتريكورد مشغل في شكل العملات (5):
      CurrencyFactor := CurrencyExchangeRate.GetCurrentCurrencyFactor(Code);
    9. إضافة متغير عمومي جديد في "الصفحة العملات" (5)، وقم بتحديد المتغير كما يلي:
      • الاسم: كورينسيفاكتور
      • نوع البيانات: العلامة العشرية
    10. إضافة عامل عمله الحقول في الصفحة العملات (5)، ومن ثم حدد الحقل كما يلي:
      • الاسم: كورينسيفاكتور
      • تسمية توضيحية: عامل عمله
      • نوع: حقل
      • سورسيكسبر: كورينسيفاكتور
    11. إضافة متغير محلي جديد في عامل عمله-أونفاليداتي مشغل في الصفحة العملات (5)، وقم بتحديد المتغير كما يلي:
      • الاسم: كورينسييكستشانجيراتي
      • نوع البيانات: سجل
      • نوع فرعي: سعر الصرف
    12. إضافة التعليمة البرمجية التالية في عامل عمله-أونفاليداتي مشغل في الصفحة العملات (5):
      CurrencyExchangeRate.SetCurrentCurrencyFactor(Code,CurrencyFactor);
    13. إضافة متغير محلي جديد في أونافتيرجيتريكورد مشغل في الصفحة العملات (5)، وقم بتحديد المتغير كما يلي:
      • الاسم: كورينسييكستشانجيراتي
      • نوع البيانات: سجل
      • نوع فرعي: سعر الصرف
    14. إضافة التعليمة البرمجية التالية في أونافتيرجيتريكورد مشغل في الصفحة العملات (5):
      CurrencyFactor := CurrencyExchangeRate.GetCurrentCurrencyFactor(Code);
    15. إضافة متغير محلي جديد في أوبداتيبارينتينتيجراتيونريكورد تعمل في كوديونيت "إدارة تكامل" (5150)، وقم بتحديد المتغير كما يلي:
      • الاسم: عمله
      • نوع البيانات: سجل
      • نوع فرعي: عمله
    16. تغيير التعليمات البرمجية الموجودة في أوبداتيبارينتينتيجراتيونريكورد تعمل في كوديونيت "إدارة تكامل" (5150) كما يلي:
      تعليمة برمجية
      ...  DATABASE::"Ship-to Address":    BEGIN      FieldRef1 := RecRef.FIELD(1); // "Customer No."      IF Customer.GET(FieldRef1.VALUE) THEN BEGIN        ParentRecRef.GETTABLE(Customer);        InsertUpdateIntegrationRecord(ParentRecRef,TimeStamp);      END;    END;END;
      رمز الاستبدال
      ...   DATABASE::"Ship-to Address":    BEGIN      FieldRef1 := RecRef.FIELD(1); // "Customer No."      IF Customer.GET(FieldRef1.VALUE) THEN BEGIN        ParentRecRef.GETTABLE(Customer);        InsertUpdateIntegrationRecord(ParentRecRef,TimeStamp);      END;    END;// Add the following lines.  DATABASE::"Currency Exchange Rate":    BEGIN      FieldRef1 := RecRef.FIELD(1); // "Currency Code"      IF Currency.GET(FieldRef1.VALUE) THEN BEGIN        ParentRecRef.GETTABLE(Currency);        InsertUpdateIntegrationRecord(ParentRecRef,TimeStamp);      END;    END;// End of the lines.END;
    17. تغيير التعليمات البرمجية الموجودة في انابليكونيكتور تعمل في كوديونيت "إدارة تكامل" (5150) كما يلي:
      تعليمة برمجية
      ...SetupWebServicePages(FORM::"Ship-to Address",DATABASE::"Ship-to Address");SetupWebServicePages(FORM::"Contact Card",DATABASE::Contact);//Delete the following line.SetupWebServicePages(FORM::"Currency Exchange Rates",DATABASE::"Currency Exchange Rate");SetupWebServicePages(FORM::"Customer Disc. Groups",DATABASE::"Customer Discount Group");SetupWebServicePages(FORM::"Item Disc. Groups",DATABASE::"Item Discount Group");...
      رمز الاستبدال
      ...SetupWebServicePages(FORM::"Ship-to Address",DATABASE::"Ship-to Address");SetupWebServicePages(FORM::"Contact Card",DATABASE::Contact);SetupWebServicePages(FORM::"Customer Disc. Groups",DATABASE::"Customer Discount Group");SetupWebServicePages(FORM::"Item Disc. Groups",DATABASE::"Item Discount Group");...
    18. تغيير التعليمات البرمجية الموجودة في سيتوبينتيجراتيونتابل تعمل في كوديونيت "إدارة تكامل" (5150) كما يلي:
      تعليمة برمجية
      ...InitializeIntegrationRecords(DATABASE::"Unit of Measure");InitializeIntegrationRecords(DATABASE::"Ship-to Address");InitializeIntegrationRecords(DATABASE::Contact);//Delete the following line.InitializeIntegrationRecords(DATABASE::"Currency Exchange Rate");InitializeIntegrationRecords(DATABASE::"Customer Discount Group");...
      رمز الاستبدال
      ...InitializeIntegrationRecords(DATABASE::"Unit of Measure");InitializeIntegrationRecords(DATABASE::"Ship-to Address");InitializeIntegrationRecords(DATABASE::Contact);InitializeIntegrationRecords(DATABASE::"Customer Discount Group");...
    19. تغيير التعليمات البرمجية الموجودة في إيسينتيرجراتيونريكورد تعمل في كوديونيت "إدارة تكامل" (5150) كما يلي:
      تعليمة برمجية
      ...DATABASE::"Unit of Measure",DATABASE::"Ship-to Address",DATABASE::Contact,//Delete the following line.DATABASE::"Currency Exchange Rate",DATABASE::"Customer Discount Group",...
      رمز الاستبدال
      ...DATABASE::"Unit of Measure",DATABASE::"Ship-to Address",DATABASE::Contact,DATABASE::"Customer Discount Group",...
    20. تغيير التعليمات البرمجية الموجودة في إيسينتيجراتيونريكوردتشيلد تعمل في كوديونيت "إدارة التكامل" (5150) كما يلي:
      تعليمة برمجية
      ...IF TableID IN  [DATABASE::"Sales Line",   DATABASE::"Sales Invoice Line"]THEN  EXIT(TRUE);EXIT(FALSE);...
      رمز الاستبدال
      ...IF TableID IN  [DATABASE::"Sales Line",   // Add the following line.   DATABASE::"Currency Exchange Rate",   DATABASE::"Sales Invoice Line"]THEN  EXIT(TRUE);EXIT(FALSE);...
  2. تثبيت الرابط لحزمة ميزات Microsoft Dynamics 6.
    ملاحظةبعد تثبيت الرابط ل Microsoft Dynamics ميزة service Pack 6، يجب إلغاء تنشيط خريطة "NAV العملة أسعار الصرف للعملة" في الموصل واستيراد مخطط "NAV العملات للعملة" جديد، أعد تشغيل تكوين المحول NAV ثم قم بتنشيط مخطط جديد.

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

يجب أن يكون لديك Microsoft Dynamics NAV 2009 R2 تثبيت تطبيق هذا الإصلاح العاجل.

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

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

تحذير: تمت ترجمة هذه المقالة تلقائيًا

خصائص

رقم الموضوع: 2597312 - آخر مراجعة: 08/30/2011 02:04:00 - المراجعة: 3.0

Microsoft Dynamics NAV 2009

  • kbqfe kbmbsmigrate kbmbscodefix kberrmsg kbsurveynew kbmt KB2597312 KbMtar
تعليقات
>>.microsoft.com/c.gif?DI=4050&did=1&t=">>=">/body>html>t=">body>