Ovaj članak se odnosi na Microsoft Dynamics NAV za sve jezike.
Simptomi
Razmotrite sledeći scenario u Microsoft Dynamics NAV.
- Tačno poništavanje troškova omogućavate u podešavanju prodaje & potraživanja.
- Kada kreirate knjižno odobrenje prodaje za klijenta.
- Koristite funkciju "Preuzmi objavljene redove dokumenta za preokretanje" da biste kopirali objavljene redove dokumenta.
- Zatim pokušajte da objavite knjižno odobrenje prodaje.
U ovom slučaju dobijate sledeću poruku o grešci:
Napomena
Iznos Iznos treba zaokružiti na gen Linija dnevnika Ime predloška dnevnika =", Ime serije dnevnika =", Broj reda = 0.
Ovaj problem koji se javlja u sledećim proizvodima:
- Microsoft Dynamics NAV 2009 servisni paket 1
- Microsoft Dynamics NAV 2009
- Microsoft Dynamics NAV 5.0 servisni paket 1
Rešenje
Informacije o hitnim ispravkama
Podržana hitna ispravka je sada dostupna od korporacije Microsoft. Međutim, namena je samo za rešavanje problema koji je opisan u ovom članku. Primenite je samo na sisteme koji imaju ovaj određeni problem. Ova hitna ispravka može proći dodatno testiranje. Stoga, ako ovaj problem ne utiče ozbiljno, preporučujemo da sačekate sledeći servisni paket za Microsoft Dynamics NAV 2009 ili sledeću verziju programa Microsoft Dynamics NAV koja sadrži ovu hitnu ispravku.
Napomena: U posebnim slučajevima, troškovi koji se obično nastaju za pozive podršci mogu biti otkazani ako stručnjak za tehničku podršku za Microsoft Dynamics i srodne proizvode utvrdi da će određena ispravka rešiti problem. Uobičajeni troškovi podrške primenjivaće se na dodatna pitanja podrške i probleme koji ne ispunjavaju uslove za određenu ispravku u pitanju.
Informacije o instalaciji
Microsoft pruža primere programiranja samo za ilustraciju, bez izričite ili podrazumevane garancije. Ovo uključuje, ali nije ograničeno na, podrazumevane garancije o podesnosti za prodaju ili o podesnosti za određenu namenu. U ovom članku se pretpostavlja da ste upoznati sa programskim jezikom koji se demonstrira i sa alatkama koje se koriste za kreiranje procedura i otklanjanje grešaka. Inženjeri Microsoft podrške mogu da vam objasne funkcionalnost određene procedure, ali neće izmeniti ove primere da bi obezbedili dodatnu funkcionalnost ili konstruisali procedure koje ispunjavaju vaše određene zahteve.
Napomena: Pre nego što instalirate ovu hitnu ispravku, proverite da li su svi korisnici Microsoft Navision klijenta odjavljeni iz sistema. To uključuje korisnike Microsoft Navision Application Services (NAS) klijenta. Vi bi trebalo da budete jedini korisnik klijenta koji je prijavljen kada primenjujete ovu hitnu ispravku.
Da biste primenili ovu hitnu ispravku, morate imati licencu za projektante.
Preporučujemo da se korisničkom nalogu u prozoru "Prijavljivanje u operativni sistem Windows" ili u prozoru "Prijavljivanje u bazu podataka" dodeli ID uloge "SUPER". Ako korisničkom nalogu nije moguće dodeliti ID uloge "SUPER", morate da proverite da li korisnički nalog ima sledeće dozvole:
- Dozvola "Izmeni" za objekat koji ćete menjati.
- Dozvola za izvršavanje za objekat sistema ID 5210 i za objekat sistema ID 9015.
Napomena: Ne morate da imate prava na skladišta podataka osim ako ne morate da izvršite popravku podataka.
Promene kodova
Napomena: Popravke kodova uvek testirajte u kontrolisanom okruženju pre nego što ih primenite na računare proizvodnje.
Pratite ove korake da biste rešili problem:
Promenite kôd u tabeli "Prodajna linija" (37) na sledeći način:
Postojeći kôd... TestStatusOpen; TESTFIELD(Quantity); IF ROUND(Quantity * "Unit Price",Currency."Amount Rounding Precision") <>0 THEN "Line Discount %" := ROUND( "Line Discount Amount" / ROUND(Quantity * "Unit Price",Currency."Amount Rounding Precision") * 100, 0.00001) ELSE "Line Discount %" := 0; "Inv. Discount Amount" := 0; "Inv. Disc. Amount to Invoice" := 0; ...Kôd za zamenu
... TestStatusOpen; TESTFIELD(Quantity); IF xRec."Line Discount Amount" <>Rec."Line Discount Amount" THEN IF ROUND(Quantity * "Unit Price",Currency."Amount Rounding Precision") <>0 THEN "Line Discount %" := ROUND( "Line Discount Amount" / ROUND(Quantity * "Unit Price",Currency."Amount Rounding Precision") * 100, 0.00001) ELSE "Line Discount %" := 0; "Inv. Discount Amount" := 0; "Inv. Disc. Amount to Invoice" := 0; ...Promenite kôd u tabeli "Red za nabavku" (39) na sledeći način:
Postojeći kôd... TestStatusOpen; TESTFIELD(Quantity); IF ROUND(Quantity * "Direct Unit Cost",Currency."Amount Rounding Precision") <> 0 THEN "Line Discount %" := ROUND( "Line Discount Amount" / ROUND(Quantity * "Direct Unit Cost",Currency."Amount Rounding Precision") * 100, 0.00001) ELSE "Line Discount %" := 0; "Inv. Discount Amount" := 0; "Inv. Disc. Amount to Invoice" := 0; ...Kôd za zamenu
... TestStatusOpen; TESTFIELD(Quantity); IF xRec."Line Discount Amount" <> Rec."Line Discount Amount" THEN IF ROUND(Quantity * "Direct Unit Cost",Currency."Amount Rounding Precision") 0 THEN "Line Discount %" := ROUND( "Line Discount Amount" / ROUND(Quantity * "Direct Unit Cost",Currency."Amount Rounding Precision") * 100, 0.00001) ELSE "Line Discount %" := 0; "Inv. Discount Amount" := 0; "Inv. Disc. Amount to Invoice" := 0; ...Promenite kôd u funkciji UpdateRevSalesLineAmount u kopiranju dokumenta Mgt. codeunit (6620) na sledeći način:
Postojeći kôd... SalesLine."Unit Price" := Amount / SalesLine.Quantity; SalesLine."Line Discount Amount" := SalesLine.Quantity * SalesLine."Unit Price" * (SalesLine."Line Discount %" / 100); Amount := ROUND(SalesLine."Inv. Discount Amount" / OrgQtyBase * SalesLine."Quantity (Base)",Currency."Amount Rounding Precision"); CalcVAT( ...Kôd za zamenu
... SalesLine."Unit Price" := Amount / SalesLine.Quantity; SalesLine."Line Discount Amount" := ROUND( ROUND(SalesLine.Quantity * SalesLine."Unit Price",Currency."Amount Rounding Precision") * SalesLine."Line Discount %" / 100, Currency."Amount Rounding Precision"); Amount := ROUND(SalesLine."Inv. Discount Amount" / OrgQtyBase * SalesLine."Quantity (Base)",Currency."Amount Rounding Precision"); CalcVAT( ...Promenite kôd u funkciji UpdateRevPurchLineAmount u kopiranju dokumenta Mgt. codeunit (6620) na sledeći način:
Postojeći kôd... PurchLine."Direct Unit Cost" := Amount / PurchLine.Quantity; PurchLine."Line Discount Amount" := PurchLine.Quantity * PurchLine."Direct Unit Cost" * (PurchLine."Line Discount %" / 100); Amount := ROUND(PurchLine."Inv. Discount Amount" / OrgQtyBase * PurchLine."Quantity (Base)",Currency."Amount Rounding Precision"); CalcVAT( ...Kôd za zamenu
... PurchLine."Direct Unit Cost" := Amount / PurchLine.Quantity; PurchLine."Line Discount Amount" := ROUND( ROUND(PurchLine.Quantity * PurchLine."Direct Unit Cost",Currency."Amount Rounding Precision") * PurchLine."Line Discount %" / 100, Currency."Amount Rounding Precision"); Amount := ROUND(PurchLine."Inv. Discount Amount" / OrgQtyBase * PurchLine."Quantity (Base)",Currency."Amount Rounding Precision"); CalcVAT( ...
Preduslovi
Morate da imate instaliran jedan od sledećih proizvoda da biste primenili ovu hitnu ispravku:
- Microsoft Dynamics NAV 2009 servisni paket 1
- Microsoft Dynamics NAV 2009
- Microsoft Dynamics NAV 5.0 servisni paket 1
Informacije o uklanjanju
Ne možete da uklonite ovu hitnu ispravku.
Reference
VSFT DynamicsNAVSE: 207811
Status
Microsoft je potvrdio da je ovo problem u Microsoft proizvodima koji su navedeni u odeljku „Odnosi se na“.
Napomena: Ovo je članak "BRZO OBJAVLJIVANJE" koji je kreiran direktno u okviru organizacije Microsoft podrške. Informacije koje se nalaze ovde pružaju se kakve jesu kao odgovor na nove probleme. Kao rezultat brzine stavljanja na raspolaganje, materijali mogu sadržavati tipografske greške i mogu se revidirati u bilo kom trenutku bez prethodne najave. Pogledajte Uslove korišćenja za druga razmatranja.