Глобальні виміри не передаються телебанку пропозиції, незважаючи на те, що встановити глобальні виміри в банківських рахунків у нідерландської версії Microsoft Dynamics NAV

Застосовується до
Microsoft Dynamics NAV 2009 R2 Dynamics NAV 2009 Service Pack 1 Microsoft Dynamics NAV 5.0 Service Pack 1

Ця стаття стосується мови мови Microsoft Dynamics NAV для Нідерландів (nl).

Ознаки

Припустімо, що встановити глобальний вимір на банківський рахунок у нідерландською версії Microsoft Dynamics NAV. Під час створення Telebank пропозиції, який використовує банківський рахунок, глобальний вимір не передається до Telebank пропозиції.
Ця проблема виникає в таких продуктах:

  • Нідерландська версія Microsoft Dynamics NAV 2009 R2
  • Нідерландська версія Microsoft Dynamics NAV 2009 із пакетом оновлень 1 (SP1)
  • Нідерландська версія Microsoft Dynamics NAV 5.0 із пакетом оновлень 1 (SP1)

      

Спосіб усунення проблеми

Відомості про виправлення

Від корпорації Майкрософт доступне виправлення, що підтримується. Однак вона призначена лише для виправлення проблеми, описаної в цій статті. Застосуйте її лише до систем, у яких виникла ця проблема. Це виправлення може отримати додаткове тестування. Таким чином, якщо ви не серйозно постраждали від цієї проблеми, ми радимо дочекатися наступного Microsoft Dynamics NAV 2009 пакет оновлень або наступної версії Microsoft Dynamics NAV, яка містить це виправлення.

Примітка У особливих випадках стягнення плати, які зазвичай понесені для викликів підтримки, може бути скасовано, якщо спеціаліст служби технічної підтримки Microsoft Dynamics і пов'язані продукти визначать, що конкретне оновлення вирішить вашу проблему. Звичайні витрати на підтримку застосовуватимуться до додаткових запитань і питань підтримки, які не відповідають вимогам для конкретного оновлення, про яке йде мова.

            
          

Відомості про інсталяцію

Корпорація Майкрософт надає приклади програмування лише для ілюстрації без жодних гарантій, явних або неявних. Це стосується зокрема неявних гарантій щодо придатності до продажу чи придатності для певної мети. У цій статті припускається, що ви знайомі з мовою програмування, яка демонструється, і з інструментами, які використовуються для створення і налагодження процедур. Спеціалісти служби підтримки Microsoft можуть допомогти пояснити функціональність певної процедури, але вони не змінюватимуть ці приклади, щоб надавати додаткові функції або конструювати процедури відповідно до ваших конкретних вимог.

Примітка. Перш ніж інсталювати це виправлення, переконайтеся, що всі користувачі клієнта Microsoft Navision, вийти із системи. Це стосується користувачів клієнтських служб Microsoft Navision (NAS). Ви повинні бути єдиним клієнтом користувача, який ввійшов, коли ви впроваджуєте це виправлення.

Щоб реалізувати це виправлення, потрібно мати ліцензію розробника.

Радимо призначити обліковому запису користувача у вікні "Вхід у Windows" або у вікні "Вхід до бази даних" ідентифікатор ролі "SUPER". Якщо обліковому запису користувача не вдалося призначити ідентифікатор ролі SUPER, переконайтеся, що обліковий запис має такі дозволи:

  • Дозвіл на змінення об'єкта, який буде змінюватися.
  • Дозвіл Execute для об'єкта System Object ID 5210 і для об'єкта System Object ID 9015.

                
Примітка. Ви не повинні мати права на зберігання даних, якщо не потрібно відновлювати дані.

Зміни коду

Примітка. Завжди перевіряйте виправлення коду в контрольованому середовищі, перш ніж застосовувати виправлення до робочих комп'ютерів.
Щоб вирішити цю проблему, виконайте такі дії:

  1. Додайте нову локальну змінну в тригері OnInsert у таблиці "Рядок пропозиції" (11000000), а потім укажіть змінну таким мовою:

    • Ім'я: FDBR
    • Тип даних: запис
    • Підтип: gen. Journal Line
  2. Додайте нову локальну змінну в тригері OnInsert у таблиці "Рядок пропозиції" (11000000), а потім укажіть змінну таким мовою:

    • Ім'я: TableID
    • Тип даних: МАСИВ [10] ІЗ цілого числа
  3. Додайте нову локальну змінну в тригері OnInsert у таблиці "Рядок пропозиції" (11000000), а потім укажіть змінну таким мовою:

    • Ім'я: Ні
    • DataType: ARRAY [10] OF Code
    • Довжина: 20
  4. Змініть код тригера OnInsert у таблиці "Рядок пропозиції" (11000000), як показано нижче.
    Наявний код

    ...
    InitRecord;
    DimManagement.InsertJnlLineDim(DATABASE::"Proposal Line",
    "Our Bank No.",'',"Line No.",0,
    "Shortcut Dimension 1 Code","Shortcut Dimension 2 Code");
    ...
    

    Код заміни

    ...
    InitRecord;
    DimManagement.InsertJnlLineDim(DATABASE::"Proposal Line",
    "Our Bank No.",'',"Line No.",0,
    "Shortcut Dimension 1 Code","Shortcut Dimension 2 Code");
    
    // Add the following lines.
    TableID[1] := DimManagement.TypeToTableID1(FDBR."Account Type"::"Bank Account"); 
    No[1] := "Our Bank No."; 
    "Shortcut Dimension 1 Code" := ''; 
    "Shortcut Dimension 2 Code" := ''; 
    DimManagement.GetDefaultDim( 
    TableID,No,'',"Shortcut Dimension 1 Code","Shortcut Dimension 2 Code"); 
    DimManagement.InsertJnlLineDim(DATABASE::"Proposal Line", 
    "Our Bank No.",'',0,0, 
    "Shortcut Dimension 1 Code","Shortcut Dimension 2 Code"); 
    // End of the lines.
    ...
    
  5. Додайте нову локальну змінну в тригер OnDelete в таблиці "Рядок пропозиції" (11000000), а потім укажіть змінну, як показано нижче.

    • Назва: Лінія пропозиції
    • Тип даних: запис
    • Підтип: рядок пропозиції
  6. Змініть код в тригері OnDelete в таблиці "Рядок пропозиції" (11000000), як показано нижче.
    Наявний код

    ...
    DetailFilter("Detail line",Rec);
    "Detail line".DELETEALL(FALSE);
    DimManagement.DeleteJnlLineDim(DATABASE::"Proposal Line",
    "Our Bank No.",'',"Line No.",0);
    ...
    

    Код заміни

    ...
    DetailFilter("Detail line",Rec);
    "Detail line".DELETEALL(FALSE);
    DimManagement.DeleteJnlLineDim(DATABASE::"Proposal Line",
    "Our Bank No.",'',"Line No.",0);
    
    // Add the following lines.
    ProposalLine.SETFILTER("Line No.",'<>%1',"Line No.");
    ProposalLine.SETFILTER("Our Bank No.","Our Bank No."); 
    IF ProposalLine.ISEMPTY THEN 
    DimManagement.DeleteJnlLineDim(DATABASE::"Proposal Line", 
    "Our Bank No.",'',0,0); 
    // End of the lines.
    ...
    
  7. Додайте нову локальну змінну у функції CreatePaymentHistoryLine у кодуніті рядків пропозицій процесу (11000000), а потім укажіть змінну таким мовою:

    • Ім'я: FromBankJnlDim
    • Тип даних: запис
    • Підтип: вимір рядка журналу
  8. Додайте нову локальну змінну у функції CreatePaymentHistoryLine у кодуніті рядків пропозицій процесу (11000000), а потім укажіть змінну таким мовою:

    • Назва: ToBankJnlDim
    • Тип даних: запис
    • Підтип: вимір рядка журналу
  9. Змініть код у функції CreatePaymentHistoryLine у кодоуніті рядків пропозицій процесу (11000000), як виконайте наведені нижче дії.
    Наявний код

    ...
    DimManagement.CopyJnlLineDimToOtherJnlLnDim(FromJnlDim, ToJnlDim);
    PaymentHistLine."Global Dimension 1 Code" := Propline."Shortcut Dimension 1 Code";
    ...
    

    Код заміни

    ...
    DimManagement.CopyJnlLineDimToOtherJnlLnDim(FromJnlDim, ToJnlDim);
    
    // Add the following lines.
    DimManagement.DeleteJnlLineDim(DATABASE::"Payment History", 
    PaymHist."Our Bank",PaymHist."Run No.",0,0); 
    
    FromBankJnlDim.SETRANGE("Table ID",DATABASE::"Proposal Line");
    FromBankJnlDim.SETRANGE("Journal Template Name",Propline."Our Bank No."); 
    FromBankJnlDim.SETRANGE("Journal Line No.",0);
    
    ToBankJnlDim."Table ID" := DATABASE::"Payment History";
    ToBankJnlDim."Journal Template Name" := PaymHist."Our Bank";
    ToBankJnlDim."Journal Batch Name" := PaymHist."Run No.";
    ToBankJnlDim."Journal Line No." := 0;
    
    DimManagement.CopyJnlLineDimToOtherJnlLnDim(FromBankJnlDim,ToBankJnlDim);
    // End of the lines.
    
    PaymentHistLine."Global Dimension 1 Code" := Propline."Shortcut Dimension 1 Code";
    ...
    

Попередні вимоги

Щоб застосувати це виправлення, потрібно мати один із таких продуктів:

  • Нідерландська версія Microsoft Dynamics NAV 2009 R2
  • Нідерландська версія Microsoft Dynamics NAV 2009 із пакетом оновлень 1 (SP1)
  • Нідерландська версія Microsoft Dynamics NAV 5.0 із пакетом оновлень 1 (SP1)

                
              

Відомості про видалення

Не можна видалити це виправлення.

Стан

Корпорація Microsoft підтвердила, що це одна з проблем з продуктами Microsoft, перелічених у розділі "Застосовується до".

Примітка. Це стаття "FAST PUBLISH", створена безпосередньо з організації підтримки Корпорації Майкрософт. Інформація, що міститься в цьому документі, надається як у відповідь на нові проблеми. В результаті швидкості її використання матеріали можуть включати друкарські помилки і можуть бути переглянуті в будь-який час без попередження. Інші зауваження див. в розділі Умови використання .