Перейти до основного
Підтримка
Вхід
Вхід за допомогою облікового запису Microsoft
Увійдіть або створіть обліковий запис.
Вітаємо,
Виберіть інший обліковий запис.
У вас є кілька облікових записів
Виберіть обліковий запис, за допомогою якого потрібно ввійти.

Причини

Після інсталяції KB2982157, якщо використовується функція детальний ПДВ разом з більш ніж одним партнером підсумки підсумовує для кожного партнера не буде скинуто на нуль у версії Microsoft Dynamics NAV 2009-R2 Угорщини. Виконайте дії, описані в розділі зміни коду , щоб вирішити цю проблему. Ця проблема виникає в таких продуктів:

  • Версії Microsoft Dynamics NAV 2009-R2 Угорщини

Вирішення

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

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

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

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

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

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

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

Корпорація Майкрософт рекомендує, що обліковий запис користувача Windows, вхід вікна або у вікні бази даних вхід призначити "Супер" роль ID. Якщо обліковий запис користувача не призначено роль ID "Супер", необхідно переконатися, що обліковий запис користувача, має такі дозволи:

  • Змінити дозвіл об'єкт, який буде змінити.

  • Права для виконання системи об'єкт з Ідентифікатором 5210 об'єкт і, код 9015 системи-об'єкт

    об'єкт.

Примітка. Маєте відповідних прав у сховища даних, якщо не потрібно виконати дані відновлення не потрібно.

Зміни коду

Примітка. Завжди тест код вирішення в середовищі контрольовані перед інсталяцією розглянутого виправлення виробництва комп'ютерів.

Щоб вирішити цю проблему, виконайте такі дії.

  1. Змінити код звіт про конфіденційність розписані ПДВ (14522), наступним чином:
    Наявний код

    ...PartnerId := PartnerBuffer."Partner ID";
    PartnerVatId := PartnerBuffer."VAT Registration No.";
    PartnerName := GetPartnerName(PartnerType,PartnerId);

    Buffer.RESET;
    SetBufferFilters(PartnerType,PartnerId,PartnerVatId);
    ...

    Заміна код

    ...PartnerId := PartnerBuffer."Partner ID";
    PartnerVatId := PartnerBuffer."VAT Registration No.";
    PartnerName := GetPartnerName(PartnerType,PartnerId);

    // Add the following line.
    PartnerBufferIsSet := TRUE;
    // End of the added line.

    Buffer.RESET;
    SetBufferFilters(PartnerType,PartnerId,PartnerVatId);
    ...
  2. Змінити код глобальних параметрів звіт про конфіденційність розписані ПДВ (14522), наступним чином:
    Наявний код 1

    ...VAR
    CompanyInfo@1170000002 : Record 79;
    Buffer@1170000007 : TEMPORARY Record 14550;
    PartnerBuffer@1170000008 : TEMPORARY Record 14551;
    PartnerName@1170000012 : Text[250];
    PartnerVatId@1170000013 : Text[30];
    ...

    Код на заміну 1

    ...VAR
    CompanyInfo@1170000002 : Record 79;
    Buffer@1170000007 : TEMPORARY Record 14550;

    // Add the following line.
    TempBuffer@1170000059 : TEMPORARY Record 14550;
    // End of the added line.

    PartnerBuffer@1170000008 : TEMPORARY Record 14551;
    PartnerName@1170000012 : Text[250];
    PartnerVatId@1170000013 : Text[30];
    ...

    Наявний код 2

    ...VatAmount6@1170000050 : Decimal;
    TotalOf1365Mline@1170000057 : TextConst 'ENU=Total of %1 line %2';
    TotalOf1365M@1170000058 : TextConst 'ENU=Total of %1';

    PROCEDURE SetBuffer@1170000000(VAR Buff@1170000000 : Record 14550;StartPeriod@1170000001 : Date;EndPeriod@1170000002 : Date;VATThresholdAmt@1170000003 : Decimal);
    BEGIN
    ...

    Код на заміну 2

    ...VatAmount6@1170000050 : Decimal;
    TotalOf1365Mline@1170000057 : TextConst 'ENU=Total of %1 line %2';
    TotalOf1365M@1170000058 : TextConst 'ENU=Total of %1';

    // Add the following line.
    PartnerBufferIsSet@1170000056 : Boolean;
    // End of the added line.

    PROCEDURE SetBuffer@1170000000(VAR Buff@1170000000 : Record 14550;StartPeriod@1170000001 : Date;EndPeriod@1170000002 : Date;VATThresholdAmt@1170000003 : Decimal);
    BEGIN
    ...
  3. Змінити код CalcPartnerTotals функції звіт про конфіденційність розписані ПДВ (14522), наступним чином:
    Наявний код

    ... LOCAL PROCEDURE CalcPartnerTotals@1170000006(VAR Buff@1170000003 : Record 14550;VAR NumInvoices@1170000001 : Integer;VAR VatBase@1170000002 : Decimal;VAR VatAmount@1170000004 : Decimal);
    BEGIN

    // Delete the following lines.
    NumInvoices := Buff.COUNT;
    IF Buff.FINDSET THEN
    REPEAT
    VatBase += ConvertToThousands(Buff."VAT Base");
    VatAmount += ConvertToThousands(Buff."VAT Amount");
    UNTIL Buff.NEXT = 0;
    END;

    LOCAL PROCEDURE CalcAllTotals@1170000015();
    // End of the deleted lines.
    ...

    Заміна код

    ...LOCAL PROCEDURE CalcPartnerTotals@1170000006(VAR Buff@1170000003 : Record 14550;VAR NumInvoices@1170000001 : Integer;VAR VatBase@1170000002 : Decimal;VAR VatAmount@1170000004 : Decimal);
    BEGIN

    // Add the following lines.
    VatBase := 0;
    VatAmount := 0;
    NumInvoices := Buff.COUNT;
    IF Buff.FINDSET THEN BEGIN
    IF Buff."1365M" THEN BEGIN
    IF PartnerBufferIsSet THEN BEGIN
    Buff.CALCSUMS("VAT Base", "VAT Amount");
    VatBase := ConvertToThousands(Buff."VAT Base");
    VatAmount := ConvertToThousands(Buff."VAT Amount");
    END ELSE BEGIN
    REPEAT
    VatAmount += CalcPartnerSubTotal(Buff."VAT Registration No.");
    UNTIL Buff.NEXT = 0;
    END;
    END ELSE
    REPEAT
    VatBase += ConvertToThousands(Buff."VAT Base");
    VatAmount += ConvertToThousands(Buff."VAT Amount");
    UNTIL Buff.NEXT = 0;
    END;
    END;

    LOCAL PROCEDURE CalcPartnerSubTotal@1170000004(VATRegNo@1170000000 : Text[20]) VatAmount : Decimal;
    VAR
    Buffer2@1170000001 : Record 14550;
    EntryNo@1170000002 : Integer;
    BEGIN
    TempBuffer.RESET;
    TempBuffer.SETRANGE("VAT Registration No.",VATRegNo);
    IF NOT TempBuffer.FINDFIRST THEN BEGIN
    EntryNo := 0;
    TempBuffer.RESET;
    IF TempBuffer.FINDLAST THEN
    EntryNo := TempBuffer.EntryNo + 1;

    TempBuffer.INIT;
    TempBuffer.EntryNo := EntryNo;
    TempBuffer."VAT Registration No." := VATRegNo;
    TempBuffer.INSERT;

    Buffer2.RESET;
    Buffer2.SETRANGE("1365M-01");
    Buffer2.SETRANGE("1365M-01K");
    Buffer2.SETRANGE("1365M-02");
    Buffer2.SETRANGE("1365M-02K");
    Buffer2.SETRANGE("1365M",TRUE);
    Buffer2.SETRANGE("K-Correction Type");
    Buffer2.SETRANGE("VAT Registration No.",VATRegNo);
    IF Buffer2.FINDSET THEN
    REPEAT
    VatAmount += Buffer2."VAT Amount";
    UNTIL Buffer2.NEXT = 0;
    EXIT(ConvertToThousands(VatAmount));
    END;
    END;

    LOCAL PROCEDURE CalcAllTotals@1170000015();
    // End of the added lines.
    ...

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

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

  • Версії Microsoft Dynamics NAV 2009-R2 Угорщини

Крім того, ви повинні мати KB2982157 та MSDNAV2009R2ItemizedVAtHungary , інстальовано.

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

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

Стан

Корпорація Майкрософт підтвердила існування цієї неполадки у продуктах Майкрософт, перелічених у розділі "Застосовується до".

Примітка. Це "Швидка публікація" статті, надана службою підтримки корпорації Майкрософт. Відомості в цій статті надано без змін у відповідь на повідомлення про проблеми. З огляду на швидкість публікації матеріали можуть містити орфографічні помилки. Їх може бути змінено в будь-який час без повідомлення. Див. Умови використанняінші міркування.

Потрібна додаткова довідка?

Потрібні додаткові параметри?

Ознайомтеся з перевагами передплати, перегляньте навчальні курси, дізнайтесь, як захистити свій пристрій тощо.

Спільноти допомагають ставити запитання й відповідати на них, надавати відгуки та дізнаватися думки висококваліфікованих експертів.

Чи ця інформація була корисною?

Наскільки ви задоволені якістю мови?
Що вплинуло на ваші враження?
Натиснувши кнопку "Надіслати", ви надасте свій відгук для покращення продуктів і служб Microsoft. Ваш ІТ-адміністратор зможе збирати ці дані. Декларація про конфіденційність.

Дякуємо за відгук!

×