У цій статті стосуються Microsoft Dynamics NAV у мовних параметрах в Португальська (Португалія).
Причини
Звіт про ПДВ "(Португалія) (13398) не друкуються належним чином, код країни та номер платника ПДВ, поданих 24. Ця проблема виникає в таких продуктів:
-
Португальський версії Microsoft Dynamics NAV 2009-R2
-
Португальський версії Microsoft Dynamics NAV 2009 року з пакетом оновлень 1
Вирішення
Відомості про виправлення
Корпорація Майкрософт випустила підтримуване виправлення доступна. Однак, застосовувати лише для вирішення проблеми, описаної в цій статті. Він придатний лише для систем, які зазнають цієї конкретної проблеми. Те, що це виправлення може потребувати додаткового тестування. Таким чином, якщо ви не завдає значної, рекомендовано почекати до виходу чергового пакета оновлень Microsoft Dynamics NAV, 2009 або наступної версії Microsoft Dynamics NAV, що містить це виправлення.
Примітка. В окремих випадках оплату звернення до служби підтримки може бути скасовано якщо технічної підтримки професійного для Microsoft Dynamics і пов'язані продукти визначає телефонів служби. Плата стягується на додаткові питання і проблеми, які не пов'язані з оновленням.
Відомості про інсталяцію
Корпорація Майкрософт надає приклади програмного коду тільки для ілюстрації, без гарантій – прямих або інших. Це включає, але не обмежується, будь-яких гарантій придатності до продажу та придатності для певної мети. У цій статті припускається, що ви знайомі з, що демонструє мову програмування та інструменти, які використовуються для створення та налагодження процедури. Співробітники служби підтримки корпорації Майкрософт можуть пояснити функціональні особливості кожної конкретної процедури. Проте вони не будуть змінювати приклади для реалізації додаткових можливостей або створювати процедури на вимогу окремих користувачів.
Примітка. Перш ніж інсталювати це виправлення, переконайтеся, що усі користувачі Microsoft Navision-клієнт відключився системи. Пакет оновлень містить служб Microsoft Navision застосунків (NAS) клієнта користувачів. Ви повинні тільки клієнт користувача, який увійшов до системи, під час виконання цього виправлення.
Щоб застосувати це виправлення, потрібно мати ліцензію для розробників.
Корпорація Майкрософт рекомендує, що обліковий запис користувача Windows, вхід вікна або у вікні бази даних вхід призначити "Супер" роль ID. Якщо обліковий запис користувача не призначено роль ID "Супер", необхідно переконатися, що обліковий запис користувача, має такі дозволи:
-
Змінити дозвіл об'єкт, який буде змінити.
-
Права для виконання системи об'єкт з Ідентифікатором 5210 об'єкт а також системи об'єкт з Ідентифікатором 9015 об'єкта.
Примітка. Маєте відповідних прав у сховища даних, якщо не потрібно виконати дані відновлення не потрібно.
Зміни коду
Примітка. Завжди тест код вирішення в середовищі контрольовані перед інсталяцією розглянутого виправлення виробництва комп'ютерів.
Щоб вирішити цю проблему, виконайте такі дії.
-
Змін у звіті про ПДВ "(Португалія) (13398), функція CalcVendorsRelation наступним чином:
Наявний код... VendEntries.FINDFIRST
ELSE
VendEntries.NEXT;
IF VendEntries.Base <> 0 THEN BEGIN
// Delete the following lines.
IF STRPOS(CountryUE,VendEntries."Country/Region Code") = 0 THEN
VATRepBuffer.InsertVATPerDeclAnnexVEDetail(VRDeclType,VRDeclYear,VRDeclMonth,VRDeclQuarter,
VendorsRelation.Number,'','',VendEntries."VAT Registration No.",
VendEntries."Document Date",VendEntries.Base,VendEntries.Amount)
ELSE BEGIN
IF VendEntries."VAT Calculation Type" = VendEntries."VAT Calculation Type"::"Reverse Charge VAT" THEN
IF VendEntries."Country/Region Code" = CompanyInfo."Country/Region Code" THEN
VendEntries."Country/Region Code" := 'RC';
// End of the lines.
VATRepBuffer.InsertVATPerDeclAnnexVEDetail(VRDeclType,VRDeclYear,VRDeclMonth,VRDeclQuarter,
VendorsRelation.Number,VendEntries."Country/Region Code",VendEntries."VAT Registration No.",'',
VendEntries."Document Date",VendEntries.Base,VendEntries.Amount);
END;
VRRegistersNumber := VRRegistersNumber + 1;
...Заміна код
... VendEntries.FINDFIRST
ELSE
VendEntries.NEXT;
IF VendEntries.Base <> 0 THEN BEGIN
// Add the following lines.
IF STRPOS(CountryUE,VendEntries."Country/Region Code") = 0 THEN BEGIN
IF VendEntries."VAT Calculation Type" = VendEntries."VAT Calculation Type"::"Reverse Charge VAT" THEN
VendEntries."Country/Region Code" := 'RC';
VATRepBuffer.InsertVATPerDeclAnnexVEDetail(VRDeclType,VRDeclYear,VRDeclMonth,VRDeclQuarter,
VendorsRelation.Number,'','',VendEntries."VAT Registration No.",
VendEntries."Document Date",VendEntries.Base,VendEntries.Amount)
END ELSE BEGIN
IF VendEntries."VAT Calculation Type" = VendEntries."VAT Calculation Type"::"Reverse Charge VAT" THEN
IF VendEntries."Country/Region Code" = CompanyInfo."Country/Region Code" THEN
VendEntries."Country/Region Code" := 'RC';
// End of the lines.
VATRepBuffer.InsertVATPerDeclAnnexVEDetail(VRDeclType,VRDeclYear,VRDeclMonth,VRDeclQuarter,
VendorsRelation.Number,VendEntries."Country/Region Code",VendEntries."VAT Registration No.",'',
VendEntries."Document Date",VendEntries.Base,VendEntries.Amount);
END;
VRRegistersNumber := VRRegistersNumber + 1;
... -
Змін у звіті про ПДВ "(Португалія) (13398), функція InsertCertificateNo наступним чином:
Наявний код... IF VATEntry.Type = VATEntry.Type::Sale THEN
IF SalesInvHeader.GET(VATEntry."Document No.") THEN
VATEntry."VAT Registration No." := SalesInvHeader."Certificate Export No.";
IF VATEntry.Type = VATEntry.Type::Purchase THEN BEGIN
// Delete the following lines.
IF STRPOS(CountryUE,VATEntry."Country/Region Code") = 0 THEN
IF PurchInvHeader.GET(VATEntry."Document No.") THEN
VATEntry."VAT Registration No." := PurchInvHeader."Certificate Import No.";
IF VATEntry."VAT Calculation Type" = VATEntry."VAT Calculation Type"::"Reverse Charge VAT" THEN
IF VATEntry."Country/Region Code" = CompanyInfo."Country/Region Code" THEN
VATEntry."VAT Registration No." := CompanyInfo."VAT Registration No.";
// End of the lines.
END;
VATEntry.MODIFY;
UNTIL VATEntry.NEXT = 0;
END;
END;
...Заміна код
... REPEAT
IF VATEntry.Type = VATEntry.Type::Sale THEN
IF SalesInvHeader.GET(VATEntry."Document No.") THEN
VATEntry."VAT Registration No." := SalesInvHeader."Certificate Export No.";
IF VATEntry.Type = VATEntry.Type::Purchase THEN BEGIN
// Add the following lines.
IF STRPOS(CountryUE,VATEntry."Country/Region Code") = 0 THEN BEGIN
IF PurchInvHeader.GET(VATEntry."Document No.") THEN
VATEntry."VAT Registration No." := PurchInvHeader."Certificate Import No.";
IF VATEntry."VAT Calculation Type" = VATEntry."VAT Calculation Type"::"Reverse Charge VAT" THEN
VATEntry."VAT Registration No." := CompanyInfo."VAT Registration No.";
END ELSE
IF VATEntry."VAT Calculation Type" = VATEntry."VAT Calculation Type"::"Reverse Charge VAT" THEN
IF VATEntry."Country/Region Code" = CompanyInfo."Country/Region Code" THEN
VATEntry."VAT Registration No." := CompanyInfo."VAT Registration No.";
// End of the lines.
END;
VATEntry.MODIFY;
UNTIL VATEntry.NEXT = 0;
END;
END;
...
Попередні вимоги
Ви повинні мати одну з таких продуктів, щоб застосувати це виправлення:
-
Португальський версії Microsoft Dynamics NAV 2009-R2
-
Португальський версії Microsoft Dynamics NAV 2009 року з пакетом оновлень 1
Відомості про видалення
Це виправлення не можна видалити.
Стан
Корпорація Майкрософт підтвердила існування цієї неполадки у продуктах Майкрософт, перелічених у розділі "Застосовується до".
Примітка. Це "Швидка публікація" статті, надана службою підтримки корпорації Майкрософт. Відомості в цій статті надано без змін у відповідь на повідомлення про проблеми. З огляду на швидкість публікації матеріали можуть містити орфографічні помилки. Їх може бути змінено в будь-який час без повідомлення. Щоб отримати додаткові відомості, див. Умови використання.