Klaidos pranešimas "Neturite teisės skaityti aptarnavimo antraštės lentelės", kai Rytų Europos „Microsoft“ Dynamics NAV 2009 R2 versijos DK nustatymo dialogo lange nustatote lauko Naudoti PVM datą reikšmę TAIP

Taikoma
Microsoft Dynamics NAV 2009 R2

Šis straipsnis taikomas "„Microsoft“ Dynamics NAV", skirtai Rytų Europos (EE) kalbos lokalei.

Požymiai

Rytų Europos "„Microsoft“ Dynamics NAV 2009 R2" versijos DK nustatymo dialogo lange bandant nustatyti lauką Naudoti PVM datąkaip TAIP, gaunamas šis klaidos pranešimas:

Pastaba

Neturite teisės skaityti aptarnavimo antraštės lentelės.

Sprendimas

Karštųjų pataisų informacija

Dabar palaikomas karštąsias pataisas galima gauti iš "„Microsoft“". Tačiau juo siekiama tik išspręsti šiame straipsnyje aprašytą problemą. Taikyti ją tik sistemoms, kuriose kilo ši konkreti problema. Ši karštoji pataisa gali būti papildomai patikrinta. Todėl, jei ši problema jūsų rimtai nepaveikė, rekomenduojame palaukti kito "„Microsoft“ Dynamics NAV 2009" pakeitimų paketo arba kitos "„Microsoft“ Dynamics NAV" versijos, kurioje yra ši karštoji pataisa.

Pastaba Ypatingais atvejais mokesčiai, kurie paprastai taikomi už palaikymo skambučius, gali būti atšaukti, jei "„Microsoft“ Dynamics" ir susijusių produktų techninio palaikymo specialistas nustato, kad konkretus naujinimas išspręs jūsų problemą. Įprastos palaikymo išlaidos bus taikomos papildomiems palaikymo klausimams ir problemoms, kurios neatitinka atitinkamo konkretaus naujinimo reikalavimų.

            
          

Diegimo informacija

"„Microsoft“" pateikia programavimo pavyzdžių tik iliustracijai, be išreikštų ar numanomų garantijų. Tai apima, bet neapsiriboja, numanomas tinkamumo parduoti arba tinkamumo konkrečiam tikslui garantijas. Straipsnyje laikomasi nuomonės, kad esate susipažinę su demonstruojama programavimo kalba ir įrankiais, naudojamais kuriant ir derinant procedūras. "„Microsoft“" palaikymo inžinieriai gali padėti paaiškinti konkrečios procedūros funkcionalumą, bet jie nemodifikuos šių pavyzdžių, kad suteiktų papildomų funkcinių galimybių, ir nesukurs procedūrų, atitinkančių jūsų konkrečius reikalavimus.

Pastaba Prieš diegdami šią karštąją pataisą patikrinkite, ar visi "„Microsoft“ Navision" kliento vartotojai yra atsijungę nuo sistemos. Tai apima "„Microsoft“ Navision" programų tarnybų (NAS) kliento vartotojus. Turite būti vienintelis kliento vartotojas, kuris yra prisijungęs, kai įdiegiate šią karštąją pataisą.

Norėdami įdiegti šią karštąją pataisą, privalote turėti kūrėjo licenciją.

Rekomenduojame vartotojo paskyrai "Windows" prisijungimų lange arba duomenų bazės prisijungimų lange priskirti "SUPER" vaidmens ID. Jei vartotojo paskyrai negalima priskirti "SUPER" vaidmens ID, turite patikrinti, ar vartotojo paskyra turi šias teises:

  • Objekto, kurį keisite, modifikavimo teisė.
  • Sistemos objekto ID 5210 ir sistemos objekto ID 9015 objekto vykdymo teisės.

                
Pastaba: neturite turėti teisių į duomenų saugyklas, nebent turite atlikti duomenų taisymą.

Kodo keitimai

Pastaba Visada išbandykite kodo pataisas kontroliuojamoje aplinkoje prieš taikydami jas gamybos kompiuteriuose.
Norėdami išspręsti šią problemą, atlikite šiuos veiksmus:

  1. DK nustatymo lentelėje (98) panaikinkite šiuos vietinius kintamuosius procedūroje InitVATDate:

    • ArchiveMgt : Codeunit 5063
    • GenJnlPostLine : Codeunit 12
    • SalesPost: Codeunit 80
    • PurchPost: Codeunit 90
    • ServicePost: Codeunit 5980
  2. Įtraukite naują vietinį kintamąjį į DK nustatymo lentelės (98) procedūrą InitVATDate ir nurodykite kintamąjį taip:

    • Vardas: GLEntry
    • Duomenų tipas: įrašas
    • Potipis: DK įrašas
  3. Įtraukite naują vietinį kintamąjį į DK nustatymo lentelės (98) procedūrą InitVATDate ir nurodykite kintamąjį taip:

    • Pavadinimas: VATEntry
    • Duomenų tipas: įrašas
    • Potipis: PVM įrašas
  4. Įtraukite naują vietinį kintamąjį į DK nustatymo lentelės (98) procedūrą InitVATDate ir nurodykite kintamąjį taip:

    • Pavadinimas: GenJnlLine
    • Duomenų tipas: įrašas
    • Potipis: Gen. Journal Line
  5. Įtraukite naują vietinį kintamąjį į DK nustatymo lentelės (98) procedūrą InitVATDate ir nurodykite kintamąjį taip:

    • Pavadinimas: SalesLine
    • Duomenų tipas: įrašas
    • Potipis: Pardavimo linija
  6. Įtraukite naują vietinį kintamąjį į DK nustatymo lentelės (98) procedūrą InitVATDate ir nurodykite kintamąjį taip:

    • Pavadinimas: SalesInvHeader
    • Duomenų tipas: įrašas
    • Potipis: Sales Invoice Header
  7. Įtraukite naują vietinį kintamąjį į DK nustatymo lentelės (98) procedūrą InitVATDate ir nurodykite kintamąjį taip:

    • Pavadinimas: SalesInvLine
    • Duomenų tipas: įrašas
    • Potipis: Pardavimo SF eilutė
  8. Įtraukite naują vietinį kintamąjį į DK nustatymo lentelės (98) procedūrą InitVATDate ir nurodykite kintamąjį taip:

    • Pavadinimas: SalesCrMemoHeader
    • Duomenų tipas: įrašas
    • Potipis: Sales Cr. Atmintinės antraštė
  9. Įtraukite naują vietinį kintamąjį į DK nustatymo lentelės (98) procedūrą InitVATDate ir nurodykite kintamąjį taip:

    • Pavadinimas: SalesCrMemoLine
    • Duomenų tipas: įrašas
    • Potipis: Sales Cr. Atmintinės eilutė
  10. Įtraukite naują vietinį kintamąjį į DK nustatymo lentelės (98) procedūrą InitVATDate ir nurodykite kintamąjį taip:

    • Pavadinimas: SalesArchiveLine
    • Duomenų tipas: įrašas
    • Potipis: Pardavimo eilutės archyvas
  11. Įtraukite naują vietinį kintamąjį į DK nustatymo lentelės (98) procedūrą InitVATDate ir nurodykite kintamąjį taip:

    • Pavadinimas: PurchLine
    • Duomenų tipas: įrašas
    • Potipis: Pirkimo eilutė
  12. Įtraukite naują vietinį kintamąjį į DK nustatymo lentelės (98) procedūrą InitVATDate ir nurodykite kintamąjį taip:

    • Pavadinimas: PurchInvHeader
    • Duomenų tipas: įrašas
    • Potipis: Purch. Inv. Header
  13. Įtraukite naują vietinį kintamąjį į DK nustatymo lentelės (98) procedūrą InitVATDate ir nurodykite kintamąjį taip:

    • Pavadinimas: PurchInvLine
    • Duomenų tipas: įrašas
    • Potipis: Purch. inv. Line
  14. Įtraukite naują vietinį kintamąjį į DK nustatymo lentelės (98) procedūrą InitVATDate ir nurodykite kintamąjį taip:

    • Pavadinimas: PurchCrMemoHeader
    • Duomenų tipas: įrašas
    • Potipis: Purch. Cr. Memo Hdr.
  15. Įtraukite naują vietinį kintamąjį į DK nustatymo lentelės (98) procedūrą InitVATDate ir nurodykite kintamąjį taip:

    • Pavadinimas: PurchCrMemoLine
    • Duomenų tipas: įrašas
    • Potipis: Purch. Cr. Memo Line
  16. Įtraukite naują vietinį kintamąjį į DK nustatymo lentelės (98) procedūrą InitVATDate ir nurodykite kintamąjį taip:

    • Pavadinimas: PurchArchiveLine
    • Duomenų tipas: įrašas
    • Potipis: Pirkimo eilutės archyvas
  17. Įtraukite naują vietinį kintamąjį į DK nustatymo lentelės (98) procedūrą InitVATDate ir nurodykite kintamąjį taip:

    • Pavadinimas: ServiceLine
    • Duomenų tipas: įrašas
    • Potipis: aptarnavimo linija
  18. Įtraukite naują vietinį kintamąjį į DK nustatymo lentelės (98) procedūrą InitVATDate ir nurodykite kintamąjį taip:

    • Pavadinimas: ServiceInvHeader
    • Duomenų tipas: įrašas
    • Potipis: Aptarnavimo SF antraštė
  19. Įtraukite naują vietinį kintamąjį į DK nustatymo lentelės (98) procedūrą InitVATDate ir nurodykite kintamąjį taip:

    • Pavadinimas: ServiceInvLine
    • Duomenų tipas: įrašas
    • Potipis: Aptarnavimo sąskaitos faktūros eilutė
  20. Įtraukite naują vietinį kintamąjį į DK nustatymo lentelės (98) procedūrą InitVATDate ir nurodykite kintamąjį taip:

    • Pavadinimas: ServiceCrMemoHeader
    • Duomenų tipas: įrašas
    • Sbutype: Service Cr.Memo header
  21. Įtraukite naują vietinį kintamąjį į DK nustatymo lentelės (98) procedūrą InitVATDate ir nurodykite kintamąjį taip:

    • Pavadinimas: ServiceCrMemoLine
    • Duomenų tipas: įrašas
    • Potipis: Service Cr.Memo Line
  22. Pakeiskite DK nustatymo lentelės (98) procedūros InitVATDate kodą taip:
    Esamas kodas

    ...
    // Delete the following lines.
    GenJnlPostLine.InitVATDate;
    IF SalesHeader.WRITEPERMISSION THEN
    SalesPost.InitVATDate;
    IF PurchHeader.WRITEPERMISSION THEN
    PurchPost.InitVATDate;
    IF SalesArchiveHeader.WRITEPERMISSION AND PurchArchiveHeader.WRITEPERMISSION THEN
    ArchiveMgt.InitVATDate;
    IF ServiceHeader.WRITEPERMISSION THEN
    ServicePost.InitVATDate;
    // End of the lines.
    ...
    

    Pakeitimo kodas

    ...
    // Add the following lines.
    WITH GLEntry DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    UNTIL NEXT = 0;
    END;
    WITH GenJnlLine DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    UNTIL NEXT = 0;
    END;
    WITH VATEntry DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    UNTIL NEXT = 0;
    END;
    WITH SalesHeader DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    SalesLine.SETRANGE("Document Type","Document Type");
    SalesLine.SETRANGE("Document No.","No.");
    IF SalesLine.FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    SalesLine."VAT Date" := "Posting Date";
    SalesLine.MODIFY;
    END;
    UNTIL SalesLine.NEXT = 0;
    UNTIL NEXT = 0;
    END;
    WITH SalesInvHeader DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    SalesInvLine.SETRANGE("Document No.","No.");
    IF SalesInvLine.FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    SalesInvLine."VAT Date" := "Posting Date";
    SalesInvLine.MODIFY;
    END;
    UNTIL SalesInvLine.NEXT = 0;
    UNTIL NEXT = 0;
    END;
    WITH SalesCrMemoHeader DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    SalesCrMemoLine.SETRANGE("Document No.","No.");
    IF SalesCrMemoLine.FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    SalesCrMemoLine."VAT Date" := "Posting Date";
    SalesCrMemoLine.MODIFY;
    END;
    UNTIL SalesCrMemoLine.NEXT = 0;
    UNTIL NEXT = 0;
    END;
    WITH SalesArchiveHeader DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    SalesArchiveLine.SETRANGE("Document Type","Document Type");
    SalesArchiveLine.SETRANGE("Document No.","No.");
    IF SalesArchiveLine.FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    SalesArchiveLine."VAT Date" := "Posting Date";
    SalesArchiveLine.MODIFY;
    END;
    UNTIL SalesArchiveLine.NEXT = 0;
    UNTIL NEXT = 0;
    END;
    WITH PurchHeader DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    PurchLine.SETRANGE("Document Type","Document Type");
    PurchLine.SETRANGE("Document No.","No.");
    IF PurchLine.FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    PurchLine."VAT Date" := "Posting Date";
    PurchLine.MODIFY;
    END;
    UNTIL PurchLine.NEXT = 0;
    UNTIL NEXT = 0;
    END;
    WITH PurchInvHeader DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    PurchInvLine.SETRANGE("Document No.","No.");
    IF PurchInvLine.FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    PurchInvLine."VAT Date" := "Posting Date";
    PurchInvLine.MODIFY;
    END;
    UNTIL PurchInvLine.NEXT = 0;
    UNTIL NEXT = 0;
    END;
    WITH PurchCrMemoHeader DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    PurchCrMemoLine.SETRANGE("Document No.","No.");
    IF PurchCrMemoLine.FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    PurchCrMemoLine."VAT Date" := "Posting Date";
    PurchCrMemoLine.MODIFY;
    END;
    UNTIL PurchCrMemoLine.NEXT = 0;
    UNTIL NEXT = 0;
    END;
    WITH PurchArchiveHeader DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    PurchArchiveLine.SETRANGE("Document Type","Document Type");
    PurchArchiveLine.SETRANGE("Document No.","No.");
    IF PurchArchiveLine.FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    PurchArchiveLine."VAT Date" := "Posting Date";
    PurchArchiveLine.MODIFY;
    END;
    UNTIL PurchArchiveLine.NEXT = 0;
    UNTIL NEXT = 0;
    END;
    WITH ServiceHeader DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    ServiceLine.SETRANGE("Document Type","Document Type");
    ServiceLine.SETRANGE("Document No.","No.");
    IF ServiceLine.FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    ServiceLine."VAT Date" := "Posting Date";
    ServiceLine.MODIFY;
    END;
    UNTIL ServiceLine.NEXT = 0;
    UNTIL NEXT = 0;
    END;
    WITH ServiceInvHeader DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    ServiceInvLine.SETRANGE("Document No.","No.");
    IF ServiceInvLine.FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    ServiceInvLine."VAT Date" := "Posting Date";
    ServiceInvLine.MODIFY;
    END;
    UNTIL ServiceInvLine.NEXT = 0;
    UNTIL NEXT = 0;
    END;
    WITH ServiceCrMemoHeader DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    ServiceCrMemoLine.SETRANGE("Document No.","No.");
    IF ServiceCrMemoLine.FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    ServiceCrMemoLine."VAT Date" := "Posting Date";
    ServiceCrMemoLine.MODIFY;
    END;
    UNTIL ServiceCrMemoLine.NEXT = 0;
    UNTIL NEXT = 0;
    END;
    // End of the lines.
    ...
    
  23. Sukurkite naują procedūrą InitVATDate DK nustatymo lentelėje (98) taip:

    PROCEDURE InitVATDate@1470030();
    VAR
    GLEntry@1470002 : Record 17;
    VATEntry@1470001 : Record 254;
    GenJnlLine@1470000 : Record 81;
    BEGIN
    WITH GLEntry DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    UNTIL NEXT = 0;
    END;
    WITH GenJnlLine DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    UNTIL NEXT = 0;
    END;
    WITH VATEntry DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    UNTIL NEXT = 0;
    END;
    END;
    
  24. Sukurkite naują procedūrą InitVATDate Sales-Post kodo vienete (80) taip:

    PROCEDURE InitVATDate@1470020();
    VAR
    SalesHeader@1470025 : Record 36;
    SalesLine@1470024 : Record 37;
    SalesInvHeader@1470023 : Record 112;
    SalesInvLine@1470022 : Record 113;
    SalesCrMemoHeader@1470021 : Record 114;
    SalesCrMemoLine@1470020 : Record 115;
    BEGIN
    WITH SalesHeader DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    SalesLine.SETRANGE("Document Type","Document Type");
    SalesLine.SETRANGE("Document No.","No.");
    SalesLine.SETRANGE("VAT Date",0D);
    SalesLine.MODIFYALL("VAT Date","Posting Date");
    UNTIL NEXT = 0;
    END;
    WITH SalesInvHeader DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    SalesInvLine.SETRANGE("Document No.","No.");
    SalesInvLine.SETRANGE("VAT Date",0D);
    SalesInvLine.MODIFYALL("VAT Date","Posting Date");
    UNTIL NEXT = 0;
    END;
    WITH SalesCrMemoHeader DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    SalesCrMemoLine.SETRANGE("Document No.","No.");
    SalesCrMemoLine.SETRANGE("VAT Date",0D);
    SalesCrMemoLine.MODIFYALL("VAT Date","Posting Date");
    UNTIL NEXT = 0;
    END;
    END;
    
  25. Sukurkite naują procedūrą InitVATDate pirkimo pašto kodo vienete (90) taip:

    PROCEDURE InitVATDate@1470020();
    VAR
    PurchHeader@1470025 : Record 38;
    PurchLine@1470024 : Record 39;
    PurchInvHeader@1470023 : Record 122;
    PurchInvLine@1470022 : Record 123;
    PurchCrMemoHeader@1470021 : Record 124;
    PurchCrMemoLine@1470020 : Record 125;
    BEGIN
    WITH PurchHeader DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    PurchLine.SETRANGE("Document Type","Document Type");
    PurchLine.SETRANGE("Document No.","No.");
    PurchLine.SETRANGE("VAT Date",0D);
    PurchLine.MODIFYALL("VAT Date","Posting Date");
    UNTIL NEXT = 0;
    END;
    WITH PurchInvHeader DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    PurchInvLine.SETRANGE("Document No.","No.");
    PurchInvLine.SETRANGE("VAT Date",0D);
    PurchInvLine.MODIFYALL("VAT Date","Posting Date");;
    UNTIL NEXT = 0;
    END;
    WITH PurchCrMemoHeader DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    PurchCrMemoLine.SETRANGE("Document No.","No.");
    PurchCrMemoLine.SETRANGE("VAT Date",0D);
    PurchCrMemoLine.MODIFYALL("VAT Date","Posting Date");
    UNTIL NEXT = 0;
    END;
    END;
    
  26. Sukurkite naują InitVATDate procedūrą ArchiveManagement kodo vienete (5063) taip:

    PROCEDURE InitVATDate@1470020();
    VAR
    SalesArchiveHeader@1470021 : Record 5107;
    SalesArchiveLine@1470020 : Record 5108;
    PurchArchiveHeader@1470023 : Record 5109;
    PurchArchiveLine@1470022 : Record 5110;
    BEGIN
    WITH SalesArchiveHeader DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    SalesArchiveLine.SETRANGE("Document Type","Document Type");
    SalesArchiveLine.SETRANGE("Document No.","No.");
    SalesArchiveLine.SETRANGE("VAT Date",0D);
    SalesArchiveLine.MODIFYALL("VAT Date","Posting Date");
    UNTIL NEXT = 0;
    END;
    WITH PurchArchiveHeader DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    PurchArchiveLine.SETRANGE("Document Type","Document Type");
    PurchArchiveLine.SETRANGE("Document No.","No.");
    PurchArchiveLine.SETRANGE("VAT Date",0D);
    PurchArchiveLine.MODIFYALL("VAT Date","Posting Date");
    UNTIL NEXT = 0;
    END;
    END;
    
  27. Sukurkite naują InitVATDate procedūrą Service-Post codeunit (5980) taip:

    PROCEDURE InitVATDate@1470020();
    VAR
    ServiceHeader@1470025 : Record 5900;
    ServiceLine@1470024 : Record 5902;
    ServiceInvHeader@1470023 : Record 5992;
    ServiceInvLine@1470022 : Record 5993;
    ServiceCrMemoHeader@1470021 : Record 5994;
    ServiceCrMemoLine@1470020 : Record 5995;
    BEGIN
    WITH ServiceHeader DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    ServiceLine.SETRANGE("Document Type","Document Type");
    ServiceLine.SETRANGE("Document No.","No.");
    ServiceLine.SETRANGE("VAT Date",0D);
    ServiceLine.MODIFYALL("VAT Date","Posting Date");
    UNTIL NEXT = 0;
    END;
    WITH ServiceInvHeader DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    ServiceInvLine.SETRANGE("Document No.","No.");
    ServiceInvLine.SETRANGE("VAT Date",0D);
    ServiceInvLine.MODIFYALL("VAT Date","Posting Date");
    UNTIL NEXT = 0;
    END;
    WITH ServiceCrMemoHeader DO BEGIN
    RESET;
    IF FINDSET(TRUE) THEN
    REPEAT
    IF "VAT Date" = 0D THEN BEGIN
    "VAT Date" := "Posting Date";
    MODIFY;
    END;
    ServiceCrMemoLine.SETRANGE("Document No.","No.");
    ServiceCrMemoLine.SETRANGE("VAT Date",0D);
    ServiceCrMemoLine.MODIFYALL("VAT Date","Posting Date");
    UNTIL NEXT = 0;
    END;
    END;
    

Būtinosios sąlygos

Norėdami taikyti šią karštąją pataisą, turite įdiegti Rytų Europos "„Microsoft“ Dynamics NAV 2009 R2" versiją.

Pašalinimo informacija

Šios karštosios pataisos pašalinti negalite.

Būsena

„„Microsoft““ patvirtino, kad tai yra „„Microsoft““ produktų, išvardytų dalyje „Taikoma“, problema.

Pastaba: tai "SPARČIOJO PUBLIKAVIMO" straipsnis, sukurtas tiesiogiai iš "„Microsoft“" palaikymo organizacijos. Čia pateikta informacija pateikiama tokia, kokia yra, reaguojant į kylančias problemas. Dėl greito jos pateikimo medžiagoje gali būti spausdinimo klaidų ir ji gali būti peržiūrėta bet kuriuo metu be išankstinio įspėjimo. Dėl kitų aplinkybių žr. Naudojimo sąlygas .