Arhiivitud müügitellimuse aruandele ja Microsoft Dynamics NAV-i arhiivitud ostutellimuse aruandele ei prindita KM-i teavet

Rakenduskoht
Dynamics NAV 2009 Service Pack 1 Dynamics NAV 2009 Microsoft Dynamics NAV 5.0 Service Pack 1 Microsoft Dynamics NAV 5.0

See artikkel kehtib Microsoft Dynamics NAV-i kohta kõigis riikides ja kõigis keele lokaadides.

Sümptomid

Kui käivitate arhiivitud müügitellimuse aruande (216) ja käivitate microsoft Dynamics NAV-is arhiivitud ostutellimuse aruande (416), käibemaksuteavet ei prindita. See probleem ilmneb järgmistes toodetes:

  • Microsoft Dynamics NAV 2009 Service Pack 1
  • Microsoft Dynamics NAV 2009
  • Microsoft Dynamics NAV 5.0 Service Pack 1
  • Microsoft Dynamics NAV 5.0

Lahendus

Kiirparanduse teave

Microsoftilt on nüüd saadaval toetatud kiirparandus. Siiski on see mõeldud ainult selles artiklis kirjeldatud probleemi lahendamiseks. Rakendage see ainult süsteemidele, kus esineb see konkreetne probleem. See kiirparandus võib saada täiendavaid katseid. Seega, kui see probleem ei mõjuta teid tõsiselt, soovitame oodata järgmist Microsoft Dynamics NAV 2009 hoolduspaketti või järgmist Microsoft Dynamics NAV versiooni, mis sisaldab seda kiirparandust.

Märkus. Erijuhtudel võidakse tavaliselt tugiteenuse kõnede eest tehtud tasud tühistada, kui Microsoft Dynamicsi ja seotud toodete tehniline tugitöötaja leiab, et konkreetne värskendus lahendab teie probleemi. Tavapärased toetuskulud kehtivad täiendavatele tugiteenustega seotud küsimustele ja probleemidele, mis ei vasta kõnealuse värskenduse tingimustele.

            
          

Installiteave

Microsoft pakub programmeerimise näiteid ainult illustreerimiseks, ilma et garantii oleks väljendatud või kaudselt. See hõlmab kaubastatavuse või kindlaks otstarbeks sobivuse kaudseid garantiisid, kuid mitte ainult. Selles artiklis eeldatakse, et olete tuttav kuvatava programmeerimiskeelega ja tööriistadega, mida kasutatakse protseduuride loomiseks ja silumiseks. Microsofti tugiteenuste insenerid saavad aidata selgitada konkreetse protseduuri funktsionaalsust, kuid nad ei muuda neid näiteid selleks, et pakkuda teie vajadustele vastavaid lisafunktsioone või koostada protseduure.

Märkus. Enne selle kiirparanduse installimist veenduge, et kõik Microsoft Navisioni klientrakenduse kasutajad oleksid süsteemist välja logitud. See hõlmab ka Microsoft Navision Application Servicesi (NAS) klientkasutajaid. Peaksite olema ainus klientkasutaja, kes on sisse logitud, kui rakendate selle kiirparanduse.

Selle kiirparanduse rakendamiseks peab teil olema arendaja litsents.

Soovitame, et aknas Windowsi sisselogimised või aknas Andmebaasi sisselogimised olevale kasutajakontole määrataks "SUPER" rolli ID. Kui kasutajakontole ei saa superrolli ID-d määrata, peate kontrollima, kas kasutajakontol on järgmised õigused.

  • Muudetava objekti muutmisõigus.
  • Süsteemiobjekti ID 5210 ja süsteemiobjekti ID 9015 täitmisõigus.

                
Märkus. Teil pole andmesalvede jaoks õigusi, kui te ei pea tegema andmete parandamist.

Koodi muudatused

Märkus. Enne paranduste rakendamist tööarvutitele testige koodiparandusi alati kontrollitud keskkonnas.
Probleemi lahendamiseks tehke järgmist.

  1. Lisage arhiivitud müügitellimuse aruandes (216) päästikusse CopyLoop – OnAfterGetRecord kohalik muutuja ja määrake muutuja järgmiselt.

    • Nimi:TempSalesHeader
    • DataType:Record
    • Alamtüüp:Müügipäis

    Lisaks lubage atribuut Temporary .

  2. Lisage arhiivitud müügitellimuse aruandes (216) päästikusse CopyLoop – OnAfterGetRecord kohalik muutuja ja määrake muutuja järgmiselt.

    • Nimi:TempSalesLine
    • DataType:Record
    • Alamtüüp:Müügirida

    Lisaks lubage atribuut Temporary .

  3. Muutke koodi arhiivitud müügitellimuse aruandes (216) päästikus CopyLoop – OnAfterGetRecord järgmiselt.

    Olemasolev kood

    CLEAR(SalesLineArch);
    SalesLineArch.DELETEALL;
    SalesLineArchive.SETRANGE("Document Type","Sales Header Archive"."Document Type");
    SalesLineArchive.SETRANGE("Document No.","Sales Header Archive"."No.");
    SalesLineArchive.SETRANGE("Version No.","Sales Header Archive"."Version No.");
    IF SalesLineArchive.FINDSET THEN
      REPEAT
        SalesLineArch := SalesLineArchive;
        SalesLineArch.INSERT;
      UNTIL SalesLineArchive.NEXT = 0;
    
    VATAmountLine.DELETEALL;
    
    IF Number > 1 THEN
      CopyText := Text003;
    CurrReport.PAGENO := 1;
    
    

    Asenduskood

    CLEAR(SalesLineArch);
    SalesLineArch.DELETEALL;
    SalesLineArchive.SETRANGE("Document Type","Sales Header Archive"."Document Type");
    SalesLineArchive.SETRANGE("Document No.","Sales Header Archive"."No.");
    SalesLineArchive.SETRANGE("Version No.","Sales Header Archive"."Version No.");
    IF SalesLineArchive.FINDSET THEN
      REPEAT
        SalesLineArch := SalesLineArchive;
        SalesLineArch.INSERT;
    
    // Add the following lines.
        TempSalesLine.TRANSFERFIELDS(SalesLineArchive);
        TempSalesLine.INSERT;
    // End of the lines.
    
      UNTIL SalesLineArchive.NEXT = 0;
    
    VATAmountLine.DELETEALL;
    
    // Add the following lines.
    TempSalesHeader.TRANSFERFIELDS("Sales Header Archive");
    
    TempSalesLine."Prepayment Line" := TRUE;  // used as flag in CalcVATAmountLines -> not invoice rounding
    TempSalesLine.CalcVATAmountLines(0,TempSalesHeader,TempSalesLine,VATAmountLine);
    VATAmount := VATAmountLine.GetTotalVATAmount;
    VATBaseAmount := VATAmountLine.GetTotalVATBase;
    VATDiscountAmount :=
      VATAmountLine.GetTotalVATDiscount(TempSalesHeader."Currency Code",TempSalesHeader."Prices Including VAT");
    TotalAmountInclVAT := VATAmountLine.GetTotalAmountInclVAT;
    // End of the lines.
    
    IF Number > 1 THEN
      CopyText := Text003;
    CurrReport.PAGENO := 1;
    
    
  4. Lisage arhiivitud ostutellimuse aruande (416) päästikusse CopyLoop – OnAfterGetRecord kohalik muutuja ja määrake muutuja järgmiselt.

    • Nimi:TempPurchHeader
    • DataType:Record
    • Alamtüüp:Ostu päis

    Lisaks lubage atribuut Temporary .

  5. Lisage arhiivitud ostutellimuse aruande (416) päästikusse CopyLoop – OnAfterGetRecord kohalik muutuja ja määrake muutuja järgmiselt.

    • Nimi:TempPurchLine
    • DataType:Record
    • Alamtüüp:Osturida

    Lisaks lubage atribuut Temporary .

  6. Muutke koodi arhiivitud ostutellimuse aruandes (416) päästikus CopyLoop – OnAfterGetRecord järgmiselt.

    Olemasolev kood

    CLEAR(PurchLineArch);
    PurchLineArch.DELETEALL;
    PurchLineArchive.SETRANGE("Document Type","Purchase Header Archive"."Document Type");
    PurchLineArchive.SETRANGE("Document No.","Purchase Header Archive"."No.");
    PurchLineArchive.SETRANGE("Version No.","Purchase Header Archive"."Version No.");
    IF PurchLineArchive.FINDSET THEN
      REPEAT
        PurchLineArch := PurchLineArchive;
        PurchLineArch.INSERT;
      UNTIL PurchLineArchive.NEXT = 0;
    
    VATAmountLine.DELETEALL;
    
    IF Number > 1 THEN
      CopyText := Text003;
    CurrReport.PAGENO := 1;
    
    

    Asenduskood

    CLEAR(PurchLineArch);
    PurchLineArch.DELETEALL;
    PurchLineArchive.SETRANGE("Document Type","Purchase Header Archive"."Document Type");
    PurchLineArchive.SETRANGE("Document No.","Purchase Header Archive"."No.");
    PurchLineArchive.SETRANGE("Version No.","Purchase Header Archive"."Version No.");
    IF PurchLineArchive.FINDSET THEN
      REPEAT
        PurchLineArch := PurchLineArchive;
        PurchLineArch.INSERT;
    
    // Add the following lines.
        TempPurchLine.TRANSFERFIELDS(PurchLineArchive);
        TempPurchLine.INSERT;
    // End of the lines.
    
      UNTIL PurchLineArchive.NEXT = 0;
    
    VATAmountLine.DELETEALL;
    
    // Add the following lines.
    TempPurchHeader.TRANSFERFIELDS("Purchase Header Archive");
    
    TempPurchLine."Prepayment Line" := TRUE;  // used as flag in CalcVATAmountLines -> not invoice rounding
    TempPurchLine.CalcVATAmountLines(0,TempPurchHeader,TempPurchLine,VATAmountLine);
    VATAmount := VATAmountLine.GetTotalVATAmount;
    VATBaseAmount := VATAmountLine.GetTotalVATBase;
    VATDiscountAmount :=
      VATAmountLine.GetTotalVATDiscount(TempPurchHeader."Currency Code",TempPurchHeader."Prices Including VAT");
    TotalAmountInclVAT := VATAmountLine.GetTotalAmountInclVAT;
    // End of the lines.
    
    IF Number > 1 THEN
      CopyText := Text003;
    CurrReport.PAGENO := 1;
    

Eeltingimused

Selle kiirparanduse rakendamiseks peab teil olema installitud üks järgmistest toodetest:

  • Microsoft Dynamics NAV 2009 Service Pack 1
  • Microsoft Dynamics NAV 2009
  • Microsoft Dynamics NAV 5.0 Service Pack 1
  • Microsoft Dynamics NAV 5.0

Eemaldamisteave

Seda kiirparandust ei saa eemaldada.

Olek

Microsoft on kinnitanud, et see on jaotises „Rakenduskoht“ loetletud Microsofti toodete korral esinev probleem.

Märkus. See on otse Microsofti tugiteenuste organisatsioonist loodud FAST PUBLISH-artikkel. Käesolevas artiklis sisalduv teave on esitatud kujul, mis on seotud tekkivate küsimustega. Materjali kättesaadavaks tegemise kiiruse tõttu võivad materjalid sisaldada kirjavigu ja neid võib igal ajal ette teatamata läbi vaadata. Muid kaalutlusi leiate teemast Kasutustingimused .