Prisijunkite prie „Microsoft“
Prisijunkite arba sukurkite paskyrą.
Sveiki,
Pasirinkti kitą paskyrą.
Turite kelias paskyras
Pasirinkite paskyrą, kurią naudodami norite prisijungti.

Šis straipsnis taikomas Microsoft Dynamics NAV visose šalyse ir visų kalbų aplinkos.

Požymiai

Tarkime, kad paleisti funkciją Gauti paskelbtas dokumento eilutes ir atvirkščiai Microsoft Dynamics NAV 2009 pardavimo grąžinimo užsakymų puslapyje. Kai nustatote filtro elementą, galite gauti tokį klaidos pranešimą:

Pardavimo SF eilutės: Nėra pardavimo sąskaita faktūra linijos per filtrą. Filtrų dokumento Nr.:X, ne: @Y


Pastaba. X vietos rezervavimo ženklas pakeičia dokumento numerį eilutėje, kur yra žymeklis, ir Y vietos rezervavimo ženklas pakeičia prekės numeris, kurį įvedėte filtrą.

Ši problema iškyla faile šiems produktams:

  • Microsoft Dynamics NAV 2009 R2

  • Microsoft Dynamics NAV 2009 1 pakeitimų paketas

Sprendimas

Karštųjų pataisų informacija

Palaikomą naujausią pataisą dabar yra Microsoft. Tačiau jos skirtos tik šiame straipsnyje aprašytai problemai spręsti. Taikyti ją tik sistemoms, kuriose kyla ši konkreti problema. Šios karštosios pataisos gali būti papildomai išbandoma. Todėl, jei jums nelabai trukdo Ši problema, rekomenduojame palaukti kito "Microsoft Dynamics NAV 2009" pakeitimų paketo arba kitą versiją Microsoft Dynamics NAV, kuriame bus šios karštosios pataisos.

Pastaba. Konkrečiais atvejais už palaikymo skambučius gali būti atšaukti, jei techninės pagalbos specialistas Microsoft Dynamics ir susijusių produktų taikomi įprasti mokesčiai nustato, kad jūsų problemą galima išspręsti naudojant konkretų naujinimą. Į įprastos kainos už palaikymą taikomos papildomos palaikymo klausimams ir problemoms, kurių negalima išspręsti naudojant minėtą naujinimą.


Diegimo informacija

"Microsoft" pateikia programavimo pavyzdžius tik, tačiau nesuteikia jokių aiškių arba numanomų garantijų. Tai apima, bet neapsiribojant, numanomas garantijas dėl perkamumo ir tinkamumo konkrečiam tikslui. Šis straipsnis parašytas galvojant, kad esate susipažinę su pateikta programavimo kalba ir įrankiais, kurie yra naudojami procedūroms kurti ir derinti. "Microsoft" palaikymo inžinieriai gali padėti paaiškindami konkrečios procedūros funkcines galimybes. Tačiau jie nekeis šių pavyzdžių, kad numatytų papildomą funkcinę galimybę arba sukurtų konkrečius jūsų reikalavimus atitinkančias procedūras.

Pastaba. Prieš diegdami šias karštąsias pataisas, patikrinkite, kad visi Microsoft Navision klientas vartotojai išsiregistravę sistema. Tai reiškia, kad Microsoft Navision programos paslaugos (NAS) kliento naudotojai. Jums turėtų būti tik kliento vartotojo, kuris yra prisijungęs, kai atliekate šias karštąsias pataisas.

Norint pritaikyti šią karštąją pataisą, turite programų kūrėjo licencijos.

Rekomenduojame, kad vartotojo abonemento Windows registravimosi lange arba duomenų bazės prisijungimų langas priskiriamas "SUPER" vaidmenį ID. Jei vartotojo abonementas negali būti priskirta "SUPER" ID., turi patikrinti, kad vartotojo abonementas turi šias teises:

  • Keisti teisės objektas, kuris bus pakeisti.

  • Teisės vykdyti sistemos objekto ID 5210 objekto ir sistemos objekto ID 9015 objekto.



Pastaba. Jūs neturite turėti teisių į duomenų saugyklų, nebent jūs turite atlikti duomenų atkūrimo.

Pastaba.

Pastaba. Visada bandymas kodas nustato kontroliuojamoje aplinkoje prieš taikydami nustato savo gamybos kompiuteriams.
Norėdami išspręsti šią problemą, atlikite šiuos veiksmus:

  1. Pakeisti IsFirstDocLine funkcija – gauti Post.Doc - S.ShptLn Sbfrm puslapį (5851):
    Esamas kodas

    ...        RevUnitCostLCY2 := RevUnitCostLCY;
    SalesShptLine2.COPYFILTERS(Rec);
    SalesShptLine2.SETRANGE("Document No.","Document No.");
    SalesShptLine2.FINDSET;
    REPEAT
    ShowRec := IsShowRec(SalesShptLine2);
    IF ShowRec THEN BEGIN
    ...

    Pastaba.

    ...        RevUnitCostLCY2 := RevUnitCostLCY;
    SalesShptLine2.COPYFILTERS(Rec);
    SalesShptLine2.SETRANGE("Document No.","Document No.");
    IF NOT SalesShptLine2.FINDSET THEN
    EXIT(FALSE);
    REPEAT
    ShowRec := IsShowRec(SalesShptLine2);
    IF ShowRec THEN BEGIN

  2. Pakeisti IsFirstDocLine funkcija – gauti Post.Doc - S.InvLn papildomos formos puslapio (5852):
    Esamas kodas

    ...        RevUnitCostLCY2 := RevUnitCostLCY;
    SalesInvLine2.COPYFILTERS(Rec);
    SalesInvLine2.SETRANGE("Document No.","Document No.");
    SalesInvLine2.FINDSET;
    REPEAT
    ShowRec := IsShowRec(SalesInvLine2);
    IF ShowRec THEN BEGIN
    ...

    Pastaba.

    ...        RevUnitCostLCY2 := RevUnitCostLCY;
    SalesInvLine2.COPYFILTERS(Rec);
    SalesInvLine2.SETRANGE("Document No.","Document No.");
    IF NOT SalesInvLine2.FINDSET THEN
    EXIT(FALSE);
    REPEAT
    ShowRec := IsShowRec(SalesInvLine2);
    IF ShowRec THEN BEGIN

  3. Pakeisti IsFirstDocLine funkcija – gauti Post.Doc - P.RcptLn Sbfrm puslapį (5856):
    Esamas kodas

    ...        RevUnitCostLCY2 := RevUnitCostLCY;
    PurchRcptLine2.COPYFILTERS(Rec);
    PurchRcptLine2.SETRANGE("Document No.","Document No.");
    PurchRcptLine2.FINDSET;
    REPEAT
    ShowRec := IsShowRec(PurchRcptLine2);
    IF ShowRec THEN BEGIN
    ...

    Pastaba.

    ...        RevUnitCostLCY2 := RevUnitCostLCY;
    PurchRcptLine2.COPYFILTERS(Rec);
    PurchRcptLine2.SETRANGE("Document No.","Document No.");
    IF NOT PurchRcptLine2.FINDSET THEN
    EXIT(FALSE);
    REPEAT
    ShowRec := IsShowRec(PurchRcptLine2);
    IF ShowRec THEN BEGIN

  4. Pakeisti IsFirstDocLine funkcija – gauti Post.Doc - P.InvLn papildomos formos puslapio (5857):
    Esamas kodas

    ...        RevUnitCostLCY2 := RevUnitCostLCY;
    PurchInvLine2.COPYFILTERS(Rec);
    PurchInvLine2.SETRANGE("Document No.","Document No.");
    PurchInvLine2.FINDSET;
    REPEAT
    ShowRec := IsShowRec(PurchInvLine2);
    IF ShowRec THEN BEGIN
    ...

    Pastaba.

    ...        RevUnitCostLCY2 := RevUnitCostLCY;
    PurchInvLine2.COPYFILTERS(Rec);
    PurchInvLine2.SETRANGE("Document No.","Document No.");
    IF NOT PurchInvLine2.FINDSET THEN
    EXIT(FALSE);
    REPEAT
    ShowRec := IsShowRec(PurchInvLine2);
    IF ShowRec THEN BEGIN

  5. Keisti kodo IsFirstDocLine funkcija, kad pirkimo. Gavimo formą eilutės (5806) taip:
    Esamas kodas

    ...          FILTERGROUP(2);
    PurchRcptLine.COPYFILTERS(Rec);
    FILTERGROUP(0);
    PurchRcptLine.SETRANGE("Document No.","Document No.");

    // Delete the following line.
    PurchRcptLine.FIND('-');

    TempPurchRcptLine := PurchRcptLine;
    TempPurchRcptLine.INSERT;
    END;
    IF "Line No." = TempPurchRcptLine."Line No." THEN
    ...

    Pastaba.

    ...          FILTERGROUP(2);
    PurchRcptLine.COPYFILTERS(Rec);
    FILTERGROUP(0);
    PurchRcptLine.SETRANGE("Document No.","Document No.");

    // Add the following lines.
    IF NOT PurchRcptLine.FINDFIRST THEN
    EXIT(FALSE);
    // End of the lines.

    TempPurchRcptLine := PurchRcptLine;
    TempPurchRcptLine.INSERT;
    END;
    IF "Line No." = TempPurchRcptLine."Line No." THEN

  6. Pakeisti IsFirstDocLine funkcija, t. y. gauti Pst.Doc RtrnRcptLn forma (5853):
    Esamas kodas

    ...        TempReturnRcptLine.SETRANGE("Document No.","Document No.");
    IF NOT TempReturnRcptLine.FINDFIRST THEN BEGIN
    ReturnRcptLine.COPYFILTERS(Rec);
    ReturnRcptLine.SETRANGE("Document No.","Document No.");

    // Delete the following line.
    ReturnRcptLine.FINDSET;

    TempReturnRcptLine := ReturnRcptLine;
    TempReturnRcptLine.INSERT;
    END;
    ...

    Pastaba.

    ...        TempReturnRcptLine.SETRANGE("Document No.","Document No.");
    IF NOT TempReturnRcptLine.FINDFIRST THEN BEGIN
    ReturnRcptLine.COPYFILTERS(Rec);
    ReturnRcptLine.SETRANGE("Document No.","Document No.");

    // Add the following lines.
    IF NOT ReturnRcptLine.FINDSET THEN
    EXIT(FALSE);
    // End of the lines.

    TempReturnRcptLine := ReturnRcptLine;
    TempReturnRcptLine.INSERT;
    END;

  7. Pakeisti IsFirstDocLine funkcija, t. y. gauti Post.Doc S.Cr.MemoLn Sbfrm (5854):
    Esamas kodas

    ...        TempSalesCrMemoLine.SETRANGE("Document No.","Document No.");
    IF NOT TempSalesCrMemoLine.FINDFIRST THEN BEGIN
    SalesCrMemoLine.COPYFILTERS(Rec);
    SalesCrMemoLine.SETRANGE("Document No.","Document No.");

    // Delete the following line.
    SalesCrMemoLine.FIND('-');

    TempSalesCrMemoLine := SalesCrMemoLine;
    TempSalesCrMemoLine.INSERT;
    END;
    ...

    Pastaba.

    ...        TempSalesCrMemoLine.SETRANGE("Document No.","Document No.");
    IF NOT TempSalesCrMemoLine.FINDFIRST THEN BEGIN
    SalesCrMemoLine.COPYFILTERS(Rec);
    SalesCrMemoLine.SETRANGE("Document No.","Document No.");

    // Add the following lines.
    IF NOT SalesCrMemoLine.FINDFIRST THEN
    EXIT(FALSE);
    // End of the lines.

    TempSalesCrMemoLine := SalesCrMemoLine;
    TempSalesCrMemoLine.INSERT;
    END;

  8. Pakeisti IsFirstDocLine funkcija, t. y. gauti Pst.Doc RtrnShptLn forma (5858):
    Esamas kodas

    ...        TempReturnShptLine.SETRANGE("Document No.","Document No.");
    IF NOT TempReturnShptLine.FINDFIRST THEN BEGIN
    ReturnShptLine.COPYFILTERS(Rec);
    ReturnShptLine.SETRANGE("Document No.","Document No.");

    // Delete the following line.
    ReturnShptLine.FINDSET;

    TempReturnShptLine := ReturnShptLine;
    TempReturnShptLine.INSERT;
    END;
    ...

    Pastaba.

    ...        TempReturnShptLine.SETRANGE("Document No.","Document No.");
    IF NOT TempReturnShptLine.FINDFIRST THEN BEGIN
    ReturnShptLine.COPYFILTERS(Rec);
    ReturnShptLine.SETRANGE("Document No.","Document No.");

    // Add the following lines.
    IF NOT ReturnShptLine.FINDSET THEN
    EXIT(FALSE);
    // End of the lines.

    TempReturnShptLine := ReturnShptLine;
    TempReturnShptLine.INSERT;
    END;

  9. Pakeisti IsFirstDocLine funkcija, t. y. gauti Post.Doc P.Cr.MemoLn Sbfrm (5859):
    Esamas kodas

    ...        TempPurchCrMemoLine.SETRANGE("Document No.","Document No.");
    IF NOT TempPurchCrMemoLine.FINDFIRST THEN BEGIN
    PurchCrMemoLine.COPYFILTERS(Rec);
    PurchCrMemoLine.SETRANGE("Document No.","Document No.");

    // Delete the following line.
    PurchCrMemoLine.FINDSET;

    TempPurchCrMemoLine := PurchCrMemoLine;
    TempPurchCrMemoLine.INSERT;
    END;
    ...

    Pastaba.

    ...        TempPurchCrMemoLine.SETRANGE("Document No.","Document No.");
    IF NOT TempPurchCrMemoLine.FINDFIRST THEN BEGIN
    PurchCrMemoLine.COPYFILTERS(Rec);
    PurchCrMemoLine.SETRANGE("Document No.","Document No.");

    // Add the following lines.
    IF NOT PurchCrMemoLine.FINDSET THEN
    EXIT(FALSE);
    // End of the lines.

    TempPurchCrMemoLine := PurchCrMemoLine;
    TempPurchCrMemoLine.INSERT;
    END;

  10. Pakeisti IsFirstDocLine funkcija, t. y. gauti pakeitimų pristatymas eilutes (5994):
    Esamas kodas

    ...        TempServiceShptLine.SETRANGE("Document No.","Document No.");
    IF NOT TempServiceShptLine.FIND('-') THEN BEGIN
    ServiceShptLine.COPYFILTERS(Rec);
    ServiceShptLine.SETRANGE("Document No.","Document No.");

    // Delete the following line.
    ServiceShptLine.FIND('-');

    TempServiceShptLine := ServiceShptLine;
    TempServiceShptLine.INSERT;
    END;
    IF "Line No." = TempServiceShptLine."Line No." THEN
    ...

    Pastaba.

    ...        TempServiceShptLine.SETRANGE("Document No.","Document No.");
    IF NOT TempServiceShptLine.FIND('-') THEN BEGIN
    ServiceShptLine.COPYFILTERS(Rec);
    ServiceShptLine.SETRANGE("Document No.","Document No.");

    // Add the following lines.
    IF NOT ServiceShptLine.FINDFIRST THEN
    EXIT(FALSE);
    // End of the lines.

    TempServiceShptLine := ServiceShptLine;
    TempServiceShptLine.INSERT;
    END;
    IF "Line No." = TempServiceShptLine."Line No." THEN

  11. Pakeisti IsFirstDocLine funkcija aptarnavimo eilutės papildomos formos forma (6036):
    Esamas kodas

    ...        IF NOT TempServLine.FIND('-') THEN BEGIN
    ServLine.COPYFILTERS(Rec);
    ServLine.SETRANGE("Document Type","Document Type");
    ServLine.SETRANGE("Document No.","Document No.");

    // Delete the following line.
    ServLine.FIND('-');

    TempServLine := ServLine;
    TempServLine.INSERT;
    END;
    IF "Line No." = TempServLine."Line No." THEN
    IF "Line No." = TempServiceShptLine."Line No." THEN
    ...

    Pastaba.

    ...        IF NOT TempServLine.FIND('-') THEN BEGIN
    ServLine.COPYFILTERS(Rec);
    ServLine.SETRANGE("Document Type","Document Type");
    ServLine.SETRANGE("Document No.","Document No.");

    // Add the following lines.
    IF NOT ServLine.FINDFIRST THEN
    EXIT(FALSE);
    // End of the lines.

    TempServLine := ServLine;
    TempServLine.INSERT;
    END;
    IF "Line No." = TempServLine."Line No." THEN

  12. Pakeisti IsFirstDocLine funkcija, t. y. pakeitimų pristatymo eil (6037):
    Esamas kodas

    ...        TempServShptLine.SETRANGE("Document No.","Document No.");
    IF NOT TempServShptLine.FIND('-') THEN BEGIN
    ServShptLine.COPYFILTERS(Rec);
    ServShptLine.SETRANGE("Document No.","Document No.");

    // Delete the following line.
    ServShptLine.FIND('-');

    TempServShptLine := ServShptLine;
    TempServShptLine.INSERT;
    END;
    IF "Line No." = TempServShptLine."Line No." THEN
    ...

    Pastaba.

    ...        TempServShptLine.SETRANGE("Document No.","Document No.");
    IF NOT TempServShptLine.FIND('-') THEN BEGIN
    ServShptLine.COPYFILTERS(Rec);
    ServShptLine.SETRANGE("Document No.","Document No.");

    // Add the following lines.
    IF NOT ServShptLine.FINDFIRST THEN
    EXIT(FALSE);
    // End of the lines.
    TempServShptLine := ServShptLine;
    TempServShptLine.INSERT;
    END;
    IF "Line No." = TempServShptLine."Line No." THEN

  13. Pakeisti IsFirstDocLine funkcija, t. y. paslaugų SF eilutės papildomos formos (6038):
    Esamas kodas

    ...        TempServInvLine.SETRANGE("Document No.","Document No.");
    IF NOT TempServInvLine.FIND('-') THEN BEGIN
    ServInvLine.COPYFILTERS(Rec);
    ServInvLine.SETRANGE("Document No.","Document No.");

    // Delete the following line.
    ServInvLine.FIND('-');

    TempServInvLine := ServInvLine;
    TempServInvLine.INSERT;
    END;
    EXIT("Line No." = TempServInvLine."Line No.");
    ...

    Pastaba.

    ...        TempServInvLine.SETRANGE("Document No.","Document No.");
    IF NOT TempServInvLine.FIND('-') THEN BEGIN
    ServInvLine.COPYFILTERS(Rec);
    ServInvLine.SETRANGE("Document No.","Document No.");

    // Add the following lines.
    IF NOT ServInvLine.FINDFIRST THEN
    EXIT(FALSE);
    // End of the lines.

    TempServInvLine := ServInvLine;
    TempServInvLine.INSERT;
    END;
    EXIT("Line No." = TempServInvLine."Line No.");

  14. Pakeisti IsFirstDocLine funkcija, t. y. pakeitimų grąž. pažymos eil (6039):
    Esamas kodas

    ...        TempServCrMemoLine.SETRANGE("Document No.","Document No.");
    IF NOT TempServCrMemoLine.FIND('-') THEN BEGIN
    ServCrMemoLine.COPYFILTERS(Rec);
    ServCrMemoLine.SETRANGE("Document No.","Document No.");

    // Delete the following line.
    ServCrMemoLine.FIND('-');

    TempServCrMemoLine := ServCrMemoLine;
    TempServCrMemoLine.INSERT;
    END;
    EXIT("Line No." = TempServCrMemoLine."Line No.");
    ...

    Pastaba.

    ...        TempServCrMemoLine.SETRANGE("Document No.","Document No.");
    IF NOT TempServCrMemoLine.FIND('-') THEN BEGIN
    ServCrMemoLine.COPYFILTERS(Rec);
    ServCrMemoLine.SETRANGE("Document No.","Document No.");

    // Add the following lines.
    IF NOT ServCrMemoLine.FINDFIRST THEN
    EXIT(FALSE);
    // End of the lines.

    TempServCrMemoLine := ServCrMemoLine;
    TempServCrMemoLine.INSERT;
    END;
    EXIT("Line No." = TempServCrMemoLine."Line No.");

  15. Pakeisti IsFirstDocLine funkcija gauti grąžinimo kvito eilutes formoje (6638):
    Esamas kodas

    ...        TempReturnRcptLine.SETRANGE("Document No.","Document No.");
    IF NOT TempReturnRcptLine.FIND('-') THEN BEGIN
    ReturnRcptLine.COPYFILTERS(Rec);
    ReturnRcptLine.SETRANGE("Document No.","Document No.");

    // Delete the following line.
    ReturnRcptLine.FIND('-');

    TempReturnRcptLine := ReturnRcptLine;
    TempReturnRcptLine.INSERT;
    END;
    IF "Line No." = TempReturnRcptLine."Line No." THEN
    ...

    Pastaba.

    ...        TempReturnRcptLine.SETRANGE("Document No.","Document No.");
    IF NOT TempReturnRcptLine.FIND('-') THEN BEGIN
    ReturnRcptLine.COPYFILTERS(Rec);
    ReturnRcptLine.SETRANGE("Document No.","Document No.");

    // Add the following lines.
    IF NOT ReturnRcptLine.FINDFIRST THEN
    EXIT(FALSE);
    // End of the lines.

    TempReturnRcptLine := ReturnRcptLine;
    TempReturnRcptLine.INSERT;
    END;
    IF "Line No." = TempReturnRcptLine."Line No." THEN

  16. Pakeisti IsFirstDocLine funkcija, t. y. gauti (6648):
    Esamas kodas

    ...        TempReturnShptLine.SETRANGE("Document No.","Document No.");
    IF NOT TempReturnShptLine.FIND('-') THEN BEGIN
    ReturnShptLine.COPYFILTERS(Rec);
    ReturnShptLine.SETRANGE("Document No.","Document No.");

    // Delete the following line.
    ReturnShptLine.FIND('-');

    TempReturnShptLine := ReturnShptLine;
    TempReturnShptLine.INSERT;
    END;
    IF "Line No." = TempReturnShptLine."Line No." THEN
    ...

    Pastaba.

    ...        TempReturnShptLine.SETRANGE("Document No.","Document No.");
    IF NOT TempReturnShptLine.FIND('-') THEN BEGIN
    ReturnShptLine.COPYFILTERS(Rec);
    ReturnShptLine.SETRANGE("Document No.","Document No.");

    // Add the following lines.
    IF NOT ReturnShptLine.FINDFIRST THEN
    EXIT(FALSE);
    // End of the lines.

    TempReturnShptLine := ReturnShptLine;
    TempReturnShptLine.INSERT;
    END;
    IF "Line No." = TempReturnShptLine."Line No." THEN

Būtinosios sąlygos

Turi būti viena iš toliau nurodytų produktų, norint taikyti šias karštąsias pataisas:

  • Microsoft Dynamics NAV 2009 R2

  • Microsoft Dynamics NAV 2009 1 pakeitimų paketas

Pašalinimo informacija

Jūs negalite pašalinti šias karštąsias pataisas.

Būsena

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

Pastaba. Tai yra "GREITAI PUBLIKUOJAMAS" straipsnis, sukurtas tiesiogiai Microsoft palaikymo tarnybos. Čia pateikta informacija yra atsakas į kylančius klausimus. Dėl greito publikavimo medžiagoje gali būti spausdinimo klaidų ir ji gali būti peržiūrima bet kuriuo metu be įspėjimo. Naudojimo ieškokite kitų priežasčių.

Reikia daugiau pagalbos?

Norite daugiau parinkčių?

Sužinokite apie prenumeratos pranašumus, peržiūrėkite mokymo kursus, sužinokite, kaip apsaugoti savo įrenginį ir kt.

Bendruomenės padeda užduoti klausimus ir į juos atsakyti, pateikti atsiliepimų ir išgirsti iš ekspertų, turinčių daug žinių.

Ar ši informacija buvo naudinga?

Ar esate patenkinti kalbos kokybe?
Kas turėjo įtakos jūsų įspūdžiams?
Paspaudus mygtuką Pateikti, jūsų atsiliepimai bus naudojami tobulinant „Microsoft“ produktus ir paslaugas. Jūsų IT administratorius galės rinkti šiuos duomenis. Privatumo patvirtinimas.

Dėkojame už jūsų atsiliepimą!

×