Sustav obračunava obje linije prilikom knjiženja prodajne narudžbe iako samo jedan redak sadrži vrijednost koda periodičkog predloška navedenu u švedskoj verziji sustava Microsoft Dynamics NAV 2009

Primjenjuje se na
Dynamics NAV 2009

Ovaj se članak odnosi na Microsoft Dynamics NAV za regionalnu shemu švedskog (se) jezika.

Simptomi

Pretpostavimo da 2664429 hitnog popravka instalirate u švedskoj verziji sustava Microsoft Dynamics NAV 2009 R2 i Microsoft Dynamics NAV 2009 Service Pack 1 (SP1). Knjižite prodajnu narudžbu koja sadrži dva retka prodajnog naloga. U toj situaciji sustav obračunava podatke za oba retka iako je samo u jednom retku navedena vrijednost koda periodičkog predloška .
  Dodatne informacije o hitnom popravku 2664429 potražite u članku iz Microsoftove baze znanja pod sljedećim brojem:

2664429 Obračunsko knjiženje nije ispravno u objavljenoj prodajnoj fakturi kada knjižite prodajnu narudžbu u švedskoj verziji sustava Microsoft Dynamics NAV 2009

Rješenje

Informacije o hitnom popravku

Microsoft sada nudi podržani hitni popravak. No njegova je namjena samo ispravljanje problema opisanog u ovom članku. Primijenite ga samo na sustave koji imaju taj specifični problem. Ovaj hitni popravak može proći dodatna testiranja. Stoga, ako se ovaj problem ne odnosi ozbiljno, preporučujemo da pričekate sljedeći servisni paket za Microsoft Dynamics NAV 2009 ili sljedeću verziju sustava Microsoft Dynamics NAV koja sadrži ovaj hitni popravak.

Napomena: U posebnim slučajevima, ako stručnjak tehničke podrške za Microsoft Dynamics i povezane proizvode utvrdi da određeno ažuriranje može riješiti problem, poziv službi podrške može biti besplatan. Uobičajene cijene poziva službi za podršku primjenjuju se na dodatna pitanja i probleme koje nemaju veze s pripadnom nadopunom.

          

Informacije o instalaciji

Microsoft daje primjere programiranja samo za ilustraciju, bez jamstva, bilo izričitog ili prešutnog. To uključuje, bez ograničenja, implicitna jamstva utrživosti ili prikladnosti za određenu svrhu. U članku se podrazumijeva da ste upoznati s programskim jezikom koji se pokazuje te s alatima koji se koriste za stvaranje i ispravljanje pogrešaka procedura. Microsoftovi inženjeri za podršku mogu vam objasniti funkcionalnost određenog postupka. Međutim, oni neće mijenjati te primjere radi pružanja dodatne funkcionalnosti ili konstruirati postupke koji zadovoljavaju vaše specifične zahtjeve.

Napomena Prije nego što instalirate ovaj hitni popravak, provjerite jesu li svi korisnici Microsoft Navision klijenta odjavljeni sa sustava. To obuhvaća korisnike klijentskih usluga Microsoft Navision Application Services (NAS). Trebali biste biti jedini klijentski korisnik prijavljen na vrijeme implementacije ovog hitnog popravka.

Da biste implementirali ovaj hitni popravak, morate imati licencu za razvojne inženjere.

Preporučujemo da se korisničkom računu u prozoru Prijave u sustav Windows ili u prozoru Prijave u bazu podataka dodijeli ID uloge "SUPER". Ako korisničkom računu nije moguće dodijeliti ID uloge "SUPER", morate provjeriti ima li korisnički račun sljedeće dozvole:

  • Dozvola za izmjenu objekta koji ćete mijenjati.
  • Dozvola za izvršavanje za objekt System Object ID 5210 i za objekt System Object ID 9015

                
Napomena: nemate pravo na spremišta podataka, osim ako morate popraviti podatke.

Promjene koda

Napomena: uvijek testirajte popravke koda u kontroliranom okruženju prije primjene popravaka na proizvodnim računalima.
Da biste riješili taj problem, učinite sljedeće:

  1. Dodavanje novog polja u poslovnu objavu fakture. međuspremnik (49), a zatim navedite polje na sljedeći način:

    • Omogućeno: Da
    • Broj polja: 11203
    • Naziv polja: Osnovni iznos PDV-a (LCY)
    • Vrsta podataka: decimalni
  2. Promijenite kod u funkciji Kod u pošti fakture. Međuspremnikska tablica (49) kako slijedi:
    Postojeći kod

    ...
    IF "Currency Code" = '' THEN BEGIN
    Currency.InitRoundingPrecision;
    "Amount (LCY)" := Amount;
    "VAT Amount (LCY)" := "VAT Amount";
    "VAT Base Amount (LCY)" := "VAT Base Amount";
    END ELSE BEGIN
    ...
    
    

    Zamjenski kôd

    ...
    IF "Currency Code" = '' THEN BEGIN
    Currency.InitRoundingPrecision;
    "Amount (LCY)" := Amount;
    "VAT Amount (LCY)" := "VAT Amount";
    
    // Add the following line.
    IF GenJnlLine."Periodic Template Code" = '' THEN
    
    "VAT Base Amount (LCY)" := "VAT Base Amount";
    END ELSE BEGIN
    ...
    
    
  3. Promijenite kod u okidaču OnRun u jedinici koda Objava prodaje (80) na sljedeći način:
    Postojeći kod

    ...
    GenJnlLine."Periodic Starting Date" := InvPostingBuffer[1]."Periodic Starting Date";
    //NTR End
    GenJnlLine."IC Partner Code" := "Sell-to IC Partner Code";
    ...
    
    

    Zamjenski kôd

    ...
    GenJnlLine."Periodic Starting Date" := InvPostingBuffer[1]."Periodic Starting Date";
    //NTR End
    
    // Add the following lines.
    IF GenJnlLine."Periodic Template Code" <> '' THEN
    GenJnlLine."VAT Base Amount (LCY)" := InvPostingBuffer[1]."VAT Base Amount (LCY)";
    // End of the lines.
    
    GenJnlLine."IC Partner Code" := "Sell-to IC Partner Code";
    ...
    
    
  4. Promijenite kod u funkciji FillInvPostingBuffer u jedinici koda Objava prodaje (80) na sljedeći način:
    Postojeći kod

    ...
    //NTR Start
    InvPostingBuffer[1]."Auto. Acc. Group" := SalesLine."Auto. Acc. Group";
    InvPostingBuffer[1]."Periodic Template Code" := SalesLine."Periodic Template Code";
    InvPostingBuffer[1]."Periodic Starting Date" := SalesLine."Periodic Starting Date";
    //NTR End
    UpdInvPostingBuffer;
    ...
    
    

    Zamjenski kôd

    ...
    //NTR Start
    InvPostingBuffer[1]."Auto. Acc. Group" := SalesLine."Auto. Acc. Group";
    InvPostingBuffer[1]."Periodic Template Code" := SalesLine."Periodic Template Code";
    InvPostingBuffer[1]."Periodic Starting Date" := SalesLine."Periodic Starting Date";
    
    // Add the following lines.
    IF SalesLine."Periodic Template Code" <> '' THEN
    InvPostingBuffer[1]."VAT Base Amount (LCY)" := SalesLine.Amount;
    // End of the lines.
    
    //NTR End
    UpdInvPostingBuffer;
    ...
    
    
  5. Promijenite kod u funkciji UpdInvPostingBuffer u jedinici koda pošte prodaje (80) na sljedeći način:
    Postojeći kod

    ...
    InvPostingBuffer[2].Quantity + InvPostingBuffer[1].Quantity;
    IF NOT InvPostingBuffer[1]."System-Created Entry" THEN
    InvPostingBuffer[2]."System-Created Entry" := FALSE;
    InvPostingBuffer[2].MODIFY;
    END ELSE
    InvPostingBuffer[1].INSERT;
    ...
    
    

    Zamjenski kôd

    ...
    InvPostingBuffer[2].Quantity + InvPostingBuffer[1].Quantity;
    
    // Add the following lines.
    InvPostingBuffer[2]."VAT Base Amount (LCY)" :=
    InvPostingBuffer[2]."VAT Base Amount (LCY)" + InvPostingBuffer[1]."VAT Base Amount (LCY)";
    // End of the lines.
    
    IF NOT InvPostingBuffer[1]."System-Created Entry" THEN
    InvPostingBuffer[2]."System-Created Entry" := FALSE;
    InvPostingBuffer[2].MODIFY;
    END ELSE
    InvPostingBuffer[1].INSERT;
    ...
    
    
  6. Promijenite kod u okidaču OnRun u jedinici koda Purch.-Post (90) na sljedeći način:
    Postojeći kod

    ...
    //NTR End
    RunGenJnlPostLine(GenJnlLine,InvPostingBuffer[1]."Dimension Entry No.");
    UNTIL InvPostingBuffer[1].NEXT(-1) = 0;
    ...
    
    

    Zamjenski kôd

    ...
    //NTR End
    
    // Add the following lines.
    IF GenJnlLine."Periodic Template Code" <> '' THEN
    GenJnlLine."VAT Base Amount (LCY)" := InvPostingBuffer[1]."VAT Base Amount (LCY)";
    // End of the lines.
    
    RunGenJnlPostLine(GenJnlLine,InvPostingBuffer[1]."Dimension Entry No.");
    UNTIL InvPostingBuffer[1].NEXT(-1) = 0;
    ...
    
    
  7. Promijenite kod u funkciji FillInvPostingBuffer u jedinici koda Purch.-Post (90) na sljedeći način:
    Postojeći kod

    ...
    //NTR Start
    InvPostingBuffer[1]."Auto. Acc. Group" := PurchLine."Auto. Acc. Group";
    InvPostingBuffer[1]."Periodic Template Code" := PurchLine."Periodic Template Code";
    InvPostingBuffer[1]."Periodic Starting Date" := PurchLine."Periodic Starting Date";
    //NTR End
    UpdInvPostingBuffer;
    ...
    
    

    Zamjenski kôd

    ...
    //NTR Start
    InvPostingBuffer[1]."Auto. Acc. Group" := PurchLine."Auto. Acc. Group";
    InvPostingBuffer[1]."Periodic Template Code" := PurchLine."Periodic Template Code";
    InvPostingBuffer[1]."Periodic Starting Date" := PurchLine."Periodic Starting Date";
    
    // Add the following lines.
    IF PurchLine."Periodic Template Code" <> '' THEN
    InvPostingBuffer[1]."VAT Base Amount (LCY)" := PurchLine.Amount;
    // End of the lines.
    
    //NTR End
    UpdInvPostingBuffer;
    ...
    
    
  8. Promijenite kod u funkciji UpdInvPostingBuffer u jedinici koda Purch.-Post (90) na sljedeći način:
    Postojeći kod

    ...
    InvPostingBuffer[2].Quantity + InvPostingBuffer[1].Quantity;
    IF NOT InvPostingBuffer[1]."System-Created Entry" THEN
    InvPostingBuffer[2]."System-Created Entry" := FALSE;
    InvPostingBuffer[2].MODIFY;
    END ELSE
    InvPostingBuffer[1].INSERT;
    ...
    
    

    Zamjenski kôd

    ...
    InvPostingBuffer[2].Quantity + InvPostingBuffer[1].Quantity;
    
    // Add the following lines.
    InvPostingBuffer[2]."VAT Base Amount (LCY)" :=
    InvPostingBuffer[2]."VAT Base Amount (LCY)" + InvPostingBuffer[1]."VAT Base Amount (LCY)";
    // End of the lines.
    
    IF NOT InvPostingBuffer[1]."System-Created Entry" THEN
    InvPostingBuffer[2]."System-Created Entry" := FALSE;
    InvPostingBuffer[2].MODIFY;
    END ELSE
    InvPostingBuffer[1].INSERT;
    ...
    
    

Preduvjeti

Da biste primijenili ovaj hitni popravak, morate imati instaliran neki od sljedećih proizvoda:

  • Švedska verzija sustava Microsoft Dynamics NAV 2009 R2
  • Švedska verzija sustava Microsoft Dynamics NAV 2009 Service Pack 1

Osim toga, morate imati instaliran hitni popravak 2664429 da biste primijenili taj hitni popravak.

Podaci o uklanjanju

Ovaj hitni popravak ne možete ukloniti.

Status

Microsoft je potvrdio da je to problem u Microsoftovim proizvodima koji su navedeni u odjeljku „Odnosi se na“.

Napomena: Ovo je članak "FAST PUBLISH" stvoren izravno u Microsoftovoj ustanovi za podršku. Ovdje sadržane informacije pružaju se takve kakve jesu kao odgovor na nove probleme. Kao rezultat brzine stavljanja na raspolaganje, materijali mogu sadržavati tipografske pogreške i mogu se revidirati u bilo kojem trenutku bez prethodne najave. Dodatne napomene potražite u Uvjetima korištenja .