Polje Datum isporuke izračunava nepravilno nakon što ste postavili "Zahtevani datum dostave" u nalogu za prodaju u aplikaciji Microsoft Dynamics NAV

Primenjuje se na: Dynamics NAV 2009Microsoft Dynamics NAV 5.0

Ovaj članak se odnosi na Microsoft Dynamics NAV za sve zemlje i sve lokalne standarde jezik.

Simptomi


Razmotrite sledeći slučaj u aplikaciji Microsoft Dynamics NAV:
  • Imate li Kalendar radne sedmice naveli, na primer, od ponedeljka do petka.
  • Imate polja Vreme isporuke i polje Šifra špeditera koji je naveden u nalogu za prodaju.
  • Polje postavite na Zahtevani datum isporuke u nalogu za prodaju.
U ovom slučaju, polje " Datum isporuke " u nalogu za prodaju jeizračunava nepravilno.
Ovaj problem se javlja u sledeće proizvode:
  • Microsoft Dynamics NAV 2009 R2
  • Microsoft Dynamics NAV 2009 servisni paket 1 (SP1)
  • Microsoft Dynamics NAV 5.0 servisni paket 1 (SP1)

Rezolucija


Informacije o prilagodbenom popravku

Podržana hitna ispravka sada je dostupna od korporacije Microsoft. Međutim, to je namenjena isključivo za rešavanje problema opisanog u ovom članku. Primenite je samo na sisteme sa ovim određenim problemom. Ova hitna ispravka možda će se dodatno testirati. Zbog toga, ako niste ozbiljno ugroženi ovaj problem, preporučujemo da sačekate sledeći servisni paket za Microsoft Dynamics NAV 2009 ili sledeće verzije Microsoft Dynamics NAV koji sadrži ovu zakrpu.

Napomena U posebnim slučajevima, troškovi koji se naplaćuju za podršku mogu biti ukinuti ako stručnjaku 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 važiće za dodatnu podršku pitanja i probleme koji nisu direktno povezani sa datom ispravkom.


Informacije o instalaciji

Microsoft obezbeđuje primere programiranja samo radi ilustracije, bez garancije ili podrazumevane. Ovo uključuje, ali nije ograničen na, podrazumevane garancije o mogućnostima prodaje ili PRIKLADNOSTI za određenu svrhu. Ovaj članak pretpostavlja da ste upoznati sa programskim jezikom koji se prikazuje i sa alatkama koje se koriste za kreiranje i otklanjanja procedure. Inženjeri podrške korporacije Microsoft mogu pomoći u objašnjavanju određene procedure, ali oni neće menjati ove primere da bi obezbedili dodatne funkcije niti kreirati procedure da bi ispunili vaše određene zahteve.

Napomena Pre nego što instalirate taj hitni popravak, provjerite da svi Microsoft Navision klijenta korisnici odjavljeni sistem. Ovo uključuje Microsoft Navision aplikacija usluge (NAS) klijent korisnicima. Treba da si jedini klijent korisnika koji je prijavljen kada primenite ovaj prilagodbeni popravak.

Da biste primenili ovaj hitni popravak, morate imati dozvolu za projektovanje.

Preporučujemo da je korisnički nalog u prozoru Windows prijavljivanja ili u prozoru baze podataka prijavljivanja šansama za „SUPER” ulogu. Ako korisnički račun nije moguće dodeliti ID uloge „SUPER”, morate da proverite da je korisnički nalog ima sledeće dozvole:
  • Izmeni dozvolu za objekat koji će vam biti promena.
  • Execute dozvola za objekat 5210 ID objekta sistema i sistema objekta ID 9015 objekta.


Napomena Ne morate imati prava prodavnicama podataka osim ako treba da izvršite popravku podataka.

Kod se menja

Napomena Uvek test Šifra rešava u kontrolisanom okruženju prije primjene zakrpe sa računarima u proizvodnji.
Da biste riješili taj problem, slijedite ove korake:
  1. Dodajte kao globalna promenljiva u tabeli Red prodaje (37), a zatim navedite promenljivu na sledeći način:
    • Ime: RequestedPromisedDateCalulated
    • Tip podataka: Boolean
  2. Da promenite šifru u okidaču Zahtevani datum dostave - OnValidate u tabeli Red prodaje (37) na sledeći način:
    Postojeća Šifra
    ...
    IF ("Requested Delivery Date" <> xRec."Requested Delivery Date") AND
    ("Promised Delivery Date" <> 0D)
    THEN
    ERROR(
    Text028,
    FIELDCAPTION("Requested Delivery Date"),
    FIELDCAPTION("Promised Delivery Date"));
    IF "Requested Delivery Date" <> 0D THEN
    VALIDATE("Planned Delivery Date","Requested Delivery Date")
    ELSE BEGIN
    GetSalesHeader;
    VALIDATE("Shipment Date",SalesHeader."Shipment Date");
    END;
    END;
    }
    { 5791; ;Promised Delivery Date;Date ;OnValidate=BEGIN
    TestStatusOpen;
    IF "Promised Delivery Date" <> 0D THEN
    VALIDATE("Planned Delivery Date","Promised Delivery Date")
    ELSE
    ...
    Zamena Šifra
    ...
    IF ("Requested Delivery Date" <> xRec."Requested Delivery Date") AND
    ("Promised Delivery Date" <> 0D)
    THEN
    ERROR(
    Text028,
    FIELDCAPTION("Requested Delivery Date"),
    FIELDCAPTION("Promised Delivery Date"));

    RequestedPromisedDateCalulated := "Requested Delivery Date" <> 0D;
    IF "Requested Delivery Date" <> 0D THEN
    VALIDATE("Planned Delivery Date","Requested Delivery Date")
    ELSE BEGIN
    GetSalesHeader;
    VALIDATE("Shipment Date",SalesHeader."Shipment Date");
    END;
    END;
    }
    { 5791; ;Promised Delivery Date;Date ;OnValidate=BEGIN
    TestStatusOpen;
    RequestedPromisedDateCalulated := "Promised Delivery Date" <> 0D;
    IF "Promised Delivery Date" <> 0D THEN
    VALIDATE("Planned Delivery Date","Promised Delivery Date")
    ELSE
    ...
  3. Da promenite šifru u okidaču Planirani datum dostave - OnValidate u tabeli Red prodaje (37) na sledeći način:
    Postojeća Šifra
    ...
    IF FORMAT("Shipping Time") <> '' THEN
    VALIDATE(
    "Planned Shipment Date",
    CalendarMgmt.CalcDateBOC2(
    FORMAT("Shipping Time"),
    "Planned Delivery Date",
    CalChange."Source Type"::"Shipping Agent",
    "Shipping Agent Code",
    "Shipping Agent Service Code",
    CalChange."Source Type"::Customer,
    "Sell-to Customer No.",
    '',
    TRUE))
    ELSE
    VALIDATE(
    "Planned Shipment Date",
    CalendarMgmt.CalcDateBOC(
    FORMAT(''),
    "Planned Delivery Date",
    CalChange."Source Type"::"Shipping Agent",
    "Shipping Agent Code",
    "Shipping Agent Service Code",
    CalChange."Source Type"::Customer,
    "Sell-to Customer No.",
    '',
    TRUE));

    IF "Planned Shipment Date" > "Planned Delivery Date" THEN
    ...
    Zamena Šifra
    ...
    IF FORMAT("Shipping Time") <> '' THEN
    VALIDATE(
    "Planned Shipment Date",
    CalendarMgmt.CalcDateBOC2(
    FORMAT("Shipping Time"),
    "Planned Delivery Date",
    CalChange."Source Type"::"Shipping Agent",
    "Shipping Agent Code",
    "Shipping Agent Service Code",
    CalChange."Source Type"::Customer,
    "Sell-to Customer No.",
    '',
    NOT RequestedPromisedDateCalulated))
    ELSE
    VALIDATE(
    "Planned Shipment Date",
    CalendarMgmt.CalcDateBOC(
    FORMAT(''),
    "Planned Delivery Date",
    CalChange."Source Type"::"Shipping Agent",
    "Shipping Agent Code",
    "Shipping Agent Service Code",
    CalChange."Source Type"::Customer,
    "Sell-to Customer No.",
    '',
    NOT RequestedPromisedDateCalulated));

    IF "Planned Shipment Date" > "Planned Delivery Date" THEN
    ...

Preduslovi

Morate imati jedan od sljedećih proizvoda da biste primijenili ovaj hitni popravak:
  • Microsoft Dynamics NAV 2009 R2
  • Microsoft Dynamics NAV 2009 servisni paket 1 (SP1)
  • Microsoft Dynamics NAV 5.0 servisni paket 1 (SP1)

Informacije o uklanjanju

Ne možete ukloniti ovaj prilagodbeni popravak.

Status


Microsoft je potvrdio da je ovo problem kod Microsoft proizvoda koji su navedeni u odeljku „Odnosi se na”.
Napomena Ovo je „Brzo se objavi” članak kreirane direktno iz unutar organizacije Microsoft podrške. Podaci sadržani data je kao-je kao odgovor na pitanja. Kao rezultat brzine u učiniti dostupnom, materijali koji može da sadrži tipografske greške i možda biti revidiran u bilo kom trenutku bez prethodne najave. Potražite Uslove korišćenja za druge razloge.