Pierakstīties, izmantojot Microsoft
Pierakstīties vai izveidot kontu
Sveicināti!
Atlasīt citu kontu.
Jums ir vairāki konti
Izvēlieties kontu, ar kuru vēlaties pierakstīties.

Šis raksts attiecas uz Microsoft Dynamics NAV 2009 visās valstīs un visu valodu lokalizācijas.

Pazīmes

Pieņemsim, ka izpildāt plānošanas darblapā un iespējot Automātisko veidot komplektu MK iestatījumu komplektu vienums, kuram ir pietiekami daudz krājumu Microsoft Dynamics NAV 2009 R2 un Microsoft Dynamics NAV 2009. gada 1. servisa pakotne (SP1). Mēģinot ievietot pārdošanas pasūtījuma preces komplektā saņemat šādu kļūdas ziņojumu:

Rezervēšanas ieraksts nepastāv. Identifikācijas lauki un vērtības: ieraksta Nr. "Entry_Number", pozitīvs = = "Jā"

Risinājums

Informācija par labojumfailu

Pašlaik korporācija Microsoft piedāvā atbalstītu labojumfailu. Tomēr tas ir paredzēts tikai šajā rakstā aprakstītās problēmas novēršanai. Izmantojiet to tikai tām sistēmām, kurām ir radusies tieši šī problēma. Iespējams, tiks veikta šī labojumfaila papildu testēšana. Tādēļ, ja jums ir šī problēma nerada nopietnus traucējumus, ieteicams nogaidīt, līdz tiks izlaista nākamā servisa pakotne Microsoft Dynamics NAV 2009 vai nākamo Microsoft Dynamics NAV versiju, kurā ir iekļauts šis labojumfails.


Piezīme. Īpašos gadījumos standarta izmaksas par atbalsta zvaniem nav jāsedz, ja tehniskā atbalsta speciālists Microsoft Dynamics un saistītiem produktiem nosaka, ka šo problēmu novērsīs noteikts atjauninājums. Parasti atbalsta izmaksas tiek piemērotas jautājumiem par papildu atbalstu un problēmām, kas neskar specifisko atjauninājumu apspriešanu.



Informācija par instalēšanu

Microsoft piedāvā programmēšanas piemērus tikai uzskatāmībai, nesniedzot nekādas tiešas vai netiešas garantijas. Tas ietver, bet neaprobežojas ar netiešām garantijām par piemērotību pārdošanai vai atbilstību noteiktam mērķim. Šajā rakstā tiek pieņemts, ka pārzināt programmēšanas valodu, kas tiek aprakstīta, un rīkus, kas tiek izmantoti, lai izveidotu un atkļūdotu procedūras. Microsoft atbalsta inženieri var palīdzēt izskaidrot kādas noteiktas procedūras funkcionalitāti, taču viņi nemainīs šos piemērus, lai sniegtu skaidrāku funkcionalitāti, un neveidos jaunas procedūras, kas atbilstu īpašām prasībām.

Piezīme. Pirms šī labojumfaila instalēšanas pārliecinieties, vai ka visi Microsoft Navision klients lietotāji ir atteikušies sistēmu. Tas ietver Microsoft Navision lietojumprogrammu pakalpojumu (NAS) klients lietotājiem. Jums ir jābūt tikai klienta lietotājam, kurš ir pieteicies datorā, kad izmantojat šo labojumfailu.

Lai ieviestu šo labojumfailu, datorā jābūt instalētai izstrādātāja licenci.

Ieteicams, ka lietotāja konts tiek atvērts logs Windows lietotājvārdi vai logā datu bāzes lietotājvārdi piešķirt "SUPER" lomas ID. Ja lietotāja kontam nevar piešķirt "SUPER" lomas ID, jāpārbauda, lietotāja konts ir šādas atļaujas:

  • Objektu, kas jums būs mainīt modificēt atļaujas.

  • Izpildes atļauja objekta objekta ID 5210 sistēmas un sistēmas objekta ID 9015 objekta.



Piezīme. Jums nav tiesības datu krātuvju vien lai veiktu datu labošanu.

Koda izmaiņas

Piezīme. Vienmēr pārbaudes kods novērš kontrolētā vidē pirms lietojat datoru ražošanas labojumus.
Lai novērstu šo problēmu, mainīt kodu koda krājumu profila ieskaits (99000854) DemandtoInvProfile funkciju šādi:

Piezīme: 10/26/11 radās nelielas šo KB kods vienā rindiņā ar kodu, kas tika publicēts NAV 5.0SP1 jāveic izmaiņas. Funkcionalitāte nav mainījies. Mainīt noteiktu rindas ir sadaļā "Add" aizstāšanas kodu;

Rinda: InventoryProfile. " Rindas Nr.": = LineNo; pārvēršana: InventoryProfile. " Rindas Nr.": = NextLineNo;

Rindu: LineNo: = LineNo + 1; tika noņemts.

Kods

...InventoryProfile.SETCURRENTKEY("Line No.");

SalesLine.SETCURRENTKEY(Type,"No.","Variant Code","Drop Shipment","Location Code","Document Type","Shipment Date");
SalesLine.SETFILTER("Document Type",'%1|%2',SalesLine."Document Type"::Order,SalesLine."Document Type"::"Return Order");
SalesLine.SETRANGE(Type,SalesLine.Type::Item);
SalesLine.SETRANGE("No.",Item."No.");
Item.COPYFILTER("Location Filter",SalesLine."Location Code");
Item.COPYFILTER("Variant Filter",SalesLine."Variant Code");
SalesLine.SETFILTER("Outstanding Qty. (Base)",'<>0');
SalesLine.SETFILTER("Shipment Date",'>%1&<=%2',0D,ToDate);

IF SalesLine.FIND('-') THEN
REPEAT
InventoryProfile.INIT;
InventoryProfile."Line No." := NextLineNo;
InventoryProfile.TransferFromSalesLine(SalesLine,TempItemTrkgEntry);
IF InventoryProfile.IsSupply THEN
InventoryProfile.ChangeSign;
InventoryProfile.INSERT;
UNTIL SalesLine.NEXT = 0;

ServiceLine.SETCURRENTKEY(Type,"No.","Variant Code","Location Code","Posting Date");
ServiceLine.SETRANGE("Document Type",ServiceLine."Document Type"::Order);
ServiceLine.SETRANGE(Type,ServiceLine.Type::Item);
ServiceLine.SETRANGE("No.",Item."No.");
Item.COPYFILTER("Location Filter",ServiceLine."Location Code");
Item.COPYFILTER("Variant Filter",ServiceLine."Variant Code");
ServiceLine.SETFILTER("Outstanding Qty. (Base)",'<>0');
ServiceLine.SETFILTER("Posting Date",'>%1&<=%2',0D,ToDate);

IF ServiceLine.FIND('-') THEN
REPEAT
InventoryProfile.INIT;
InventoryProfile."Line No." := NextLineNo;
InventoryProfile.TransferFromServiceInvLine(ServiceLine,TempItemTrkgEntry);
IF InventoryProfile.IsSupply THEN
InventoryProfile.ChangeSign;
InventoryProfile.INSERT;
UNTIL ServiceLine.NEXT = 0;

ReqLine.SETCURRENTKEY("Ref. Order Type","Ref. Order Status","Ref. Order No.","Ref. Line No.");
ReqLine.SETRANGE("Ref. Order Type",ReqLine."Ref. Order Type"::"Prod. Order");
ProdOrderComp.SETCURRENTKEY("Item No.","Variant Code","Location Code",Status,"Due Date");
ProdOrderComp.SETRANGE("Item No.",Item."No.");
Item.COPYFILTER("Location Filter",ProdOrderComp."Location Code");
Item.COPYFILTER("Variant Filter",ProdOrderComp."Variant Code");
ProdOrderComp.SETRANGE(Status,ProdOrderComp.Status::Planned,ProdOrderComp.Status::Released);
ProdOrderComp.SETFILTER("Due Date",'>%1&<=%2',0D,ToDate);

IF ProdOrderComp.FIND('-') THEN
REPEAT
ReqLine.SETRANGE("Ref. Order Status",ProdOrderComp.Status);
ReqLine.SETRANGE("Ref. Order No.",ProdOrderComp."Prod. Order No.");
ReqLine.SETRANGE("Ref. Line No.",ProdOrderComp."Prod. Order Line No.");
ReqLine.SETRANGE("Operation No.",'');
IF NOT ReqLine.FIND('-') THEN BEGIN
InventoryProfile.INIT;
InventoryProfile."Line No." := NextLineNo;
InventoryProfile.TransferFromComponent(ProdOrderComp,TempItemTrkgEntry);
IF InventoryProfile.IsSupply THEN
InventoryProfile.ChangeSign;
InventoryProfile.INSERT;
END;
UNTIL ProdOrderComp.NEXT = 0;

PlanningComponent.SETCURRENTKEY("Item No.","Variant Code","Location Code","Due Date");
PlanningComponent.SETRANGE("Item No.",Item."No.");
Item.COPYFILTER("Location Filter",PlanningComponent."Location Code");
Item.COPYFILTER("Variant Filter",PlanningComponent."Variant Code");
PlanningComponent.SETFILTER("Due Date",'>%1&<=%2',0D,ToDate);

IF PlanningComponent.FIND('-') THEN
REPEAT
InventoryProfile.INIT;
InventoryProfile."Line No." := NextLineNo;
InventoryProfile."Item No." := Item."No.";
InventoryProfile.TransferFromPlanComponent(PlanningComponent,TempItemTrkgEntry);
IF InventoryProfile.IsSupply THEN
InventoryProfile.ChangeSign;
InventoryProfile.INSERT;
UNTIL PlanningComponent.NEXT = 0;

TransferReqLine.SETCURRENTKEY(Type,"No.","Variant Code","Transfer-from Code","Transfer Shipment Date");
TransferReqLine.SETRANGE("Replenishment System",TransferReqLine."Replenishment System"::Transfer);
TransferReqLine.SETRANGE(Type,TransferReqLine.Type::Item);
TransferReqLine.SETRANGE("No.",Item."No.");
Item.COPYFILTER("Location Filter",TransferReqLine."Transfer-from Code");
Item.COPYFILTER("Variant Filter",TransferReqLine."Variant Code");
TransferReqLine.SETFILTER("Transfer Shipment Date",'>%1&<=%2',0D,ToDate);

IF TransferReqLine.FIND('-') THEN
REPEAT
InventoryProfile.INIT;
InventoryProfile."Line No." := NextLineNo;
InventoryProfile."Item No." := Item."No.";
InventoryProfile.TransferFromOutboundTransfPlan(TransferReqLine,TempItemTrkgEntry);
IF InventoryProfile.IsSupply THEN
InventoryProfile.ChangeSign;
InventoryProfile.INSERT;
UNTIL TransferReqLine.NEXT = 0;

TransLine.SETCURRENTKEY("Item No.");
TransLine.SETRANGE("Item No.",Item."No.");
Item.COPYFILTER("Variant Filter",TransLine."Variant Code");
Item.COPYFILTER("Location Filter",TransLine."Transfer-from Code");
TransLine.SETFILTER("Shipment Date",'>%1&<=%2',0D,ToDate);
FilterIsSetOnLocation := Item.GETFILTER("Location Filter") <> '';

IF TransLine.FIND('-') THEN
REPEAT
InventoryProfile.INIT;
InventoryProfile."Line No." := NextLineNo;
InventoryProfile."Item No." := Item."No.";
InventoryProfile.TransferFromOutboundTransfer(TransLine,TempItemTrkgEntry);
IF InventoryProfile.IsSupply THEN
InventoryProfile.ChangeSign;
IF FilterIsSetOnLocation THEN
InventoryProfile."Transfer Location Not Planned" := TransferLocationIsFilteredOut(Item,TransLine);
InventoryProfile.INSERT;
UNTIL TransLine.NEXT = 0;
...

Aizstāšanas kodu

...InventoryProfile.SETCURRENTKEY("Line No.");

SalesLine.SETCURRENTKEY(Type,"No.","Variant Code","Drop Shipment","Location Code","Document Type","Shipment Date");
SalesLine.SETFILTER("Document Type",'%1|%2',SalesLine."Document Type"::Order,SalesLine."Document Type"::"Return Order");
SalesLine.SETRANGE(Type,SalesLine.Type::Item);
SalesLine.SETRANGE("No.",Item."No.");
Item.COPYFILTER("Location Filter",SalesLine."Location Code");
Item.COPYFILTER("Variant Filter",SalesLine."Variant Code");
SalesLine.SETFILTER("Outstanding Qty. (Base)",'<>0');
SalesLine.SETFILTER("Shipment Date",'>%1&<=%2',0D,ToDate);

// Add the following line.
SalesLine.SETRANGE("Build Kit",FALSE);
// End of the line.

IF SalesLine.FIND('-') THEN
REPEAT
InventoryProfile.INIT;
InventoryProfile."Line No." := NextLineNo;
InventoryProfile.TransferFromSalesLine(SalesLine,TempItemTrkgEntry);
IF InventoryProfile.IsSupply THEN
InventoryProfile.ChangeSign;
InventoryProfile.INSERT;
UNTIL SalesLine.NEXT = 0;

// Add the following lines.
KitSalesLine.SETCURRENTKEY("Document Type",Type,"No.","Variant Code","Location Code","Shipment Date");
KitSalesLine.SETRANGE("Document Type",KitSalesLine."Document Type"::Order);
KitSalesLine.SETRANGE(Type,KitSalesLine.Type::Item);
KitSalesLine.SETRANGE("No.",Item."No.");
Item.COPYFILTER("Location Filter",KitSalesLine."Location Code");
Item.COPYFILTER("Variant Filter",KitSalesLine."Variant Code");
KitSalesLine.SETFILTER("Outstanding Qty. (Base)",'<>0');
KitSalesLine.SETFILTER("Shipment Date",'>%1&<=%2',0D,ToDate);
IF KitSalesLine.FINDFIRST THEN
REPEAT
InventoryProfile.INIT;
InventoryProfile."Line No." := NextLineNo;
InventoryProfile.TransferFromKitSalesLine(KitSalesLine,TempItemTrkgEntry);
IF InventoryProfile.IsSupply THEN
InventoryProfile.ChangeSign;
InventoryProfile.INSERT;
UNTIL KitSalesLine.NEXT = 0;
// End of the lines.

ServiceLine.SETCURRENTKEY(Type,"No.","Variant Code","Location Code","Posting Date");
ServiceLine.SETRANGE("Document Type",ServiceLine."Document Type"::Order);
ServiceLine.SETRANGE(Type,ServiceLine.Type::Item);
ServiceLine.SETRANGE("No.",Item."No.");
Item.COPYFILTER("Location Filter",ServiceLine."Location Code");
Item.COPYFILTER("Variant Filter",ServiceLine."Variant Code");
ServiceLine.SETFILTER("Outstanding Qty. (Base)",'<>0');
ServiceLine.SETFILTER("Posting Date",'>%1&<=%2',0D,ToDate);

IF ServiceLine.FIND('-') THEN
REPEAT
InventoryProfile.INIT;
InventoryProfile."Line No." := NextLineNo;
InventoryProfile.TransferFromServiceInvLine(ServiceLine,TempItemTrkgEntry);
IF InventoryProfile.IsSupply THEN
InventoryProfile.ChangeSign;
InventoryProfile.INSERT;
UNTIL ServiceLine.NEXT = 0;

ReqLine.SETCURRENTKEY("Ref. Order Type","Ref. Order Status","Ref. Order No.","Ref. Line No.");
ReqLine.SETRANGE("Ref. Order Type",ReqLine."Ref. Order Type"::"Prod. Order");
ProdOrderComp.SETCURRENTKEY("Item No.","Variant Code","Location Code",Status,"Due Date");
ProdOrderComp.SETRANGE("Item No.",Item."No.");
Item.COPYFILTER("Location Filter",ProdOrderComp."Location Code");
Item.COPYFILTER("Variant Filter",ProdOrderComp."Variant Code");
ProdOrderComp.SETRANGE(Status,ProdOrderComp.Status::Planned,ProdOrderComp.Status::Released);
ProdOrderComp.SETFILTER("Due Date",'>%1&<=%2',0D,ToDate);

IF ProdOrderComp.FIND('-') THEN
REPEAT
ReqLine.SETRANGE("Ref. Order Status",ProdOrderComp.Status);
ReqLine.SETRANGE("Ref. Order No.",ProdOrderComp."Prod. Order No.");
ReqLine.SETRANGE("Ref. Line No.",ProdOrderComp."Prod. Order Line No.");
ReqLine.SETRANGE("Operation No.",'');
IF NOT ReqLine.FIND('-') THEN BEGIN
InventoryProfile.INIT;
InventoryProfile."Line No." := NextLineNo;
InventoryProfile.TransferFromComponent(ProdOrderComp,TempItemTrkgEntry);
IF InventoryProfile.IsSupply THEN
InventoryProfile.ChangeSign;
InventoryProfile.INSERT;
END;
UNTIL ProdOrderComp.NEXT = 0;

PlanningComponent.SETCURRENTKEY("Item No.","Variant Code","Location Code","Due Date");
PlanningComponent.SETRANGE("Item No.",Item."No.");
Item.COPYFILTER("Location Filter",PlanningComponent."Location Code");
Item.COPYFILTER("Variant Filter",PlanningComponent."Variant Code");
PlanningComponent.SETFILTER("Due Date",'>%1&<=%2',0D,ToDate);

IF PlanningComponent.FIND('-') THEN
REPEAT
InventoryProfile.INIT;
InventoryProfile."Line No." := NextLineNo;
InventoryProfile."Item No." := Item."No.";
InventoryProfile.TransferFromPlanComponent(PlanningComponent,TempItemTrkgEntry);
IF InventoryProfile.IsSupply THEN
InventoryProfile.ChangeSign;
InventoryProfile.INSERT;
UNTIL PlanningComponent.NEXT = 0;

TransferReqLine.SETCURRENTKEY(Type,"No.","Variant Code","Transfer-from Code","Transfer Shipment Date");
TransferReqLine.SETRANGE("Replenishment System",TransferReqLine."Replenishment System"::Transfer);
TransferReqLine.SETRANGE(Type,TransferReqLine.Type::Item);
TransferReqLine.SETRANGE("No.",Item."No.");
Item.COPYFILTER("Location Filter",TransferReqLine."Transfer-from Code");
Item.COPYFILTER("Variant Filter",TransferReqLine."Variant Code");
TransferReqLine.SETFILTER("Transfer Shipment Date",'>%1&<=%2',0D,ToDate);

IF TransferReqLine.FIND('-') THEN
REPEAT
InventoryProfile.INIT;
InventoryProfile."Line No." := NextLineNo;
InventoryProfile."Item No." := Item."No.";
InventoryProfile.TransferFromOutboundTransfPlan(TransferReqLine,TempItemTrkgEntry);
IF InventoryProfile.IsSupply THEN
InventoryProfile.ChangeSign;
InventoryProfile.INSERT;
UNTIL TransferReqLine.NEXT = 0;

TransLine.SETCURRENTKEY("Item No.");
TransLine.SETRANGE("Item No.",Item."No.");
Item.COPYFILTER("Variant Filter",TransLine."Variant Code");
Item.COPYFILTER("Location Filter",TransLine."Transfer-from Code");
TransLine.SETFILTER("Shipment Date",'>%1&<=%2',0D,ToDate);
FilterIsSetOnLocation := Item.GETFILTER("Location Filter") <> '';

IF TransLine.FIND('-') THEN
REPEAT
InventoryProfile.INIT;
InventoryProfile."Line No." := NextLineNo;
InventoryProfile."Item No." := Item."No.";
InventoryProfile.TransferFromOutboundTransfer(TransLine,TempItemTrkgEntry);
IF InventoryProfile.IsSupply THEN
InventoryProfile.ChangeSign;
IF FilterIsSetOnLocation THEN
InventoryProfile."Transfer Location Not Planned" := TransferLocationIsFilteredOut(Item,TransLine);
InventoryProfile.INSERT;
UNTIL TransLine.NEXT = 0;
...

Priekšnosacījumi

Datorā ir jābūt instalētai kādai no šiem produktiem, lai lietotu šo labojumfailu:

  • Microsoft Dynamics NAV 2009 R2

  • Microsoft Dynamics NAV 2009 servisa pakotnes 1.

Informācija par noņemšanu

Nevar noņemt šo labojumfailu.

Statuss

Korporācija Microsoft ir apstiprinājusi, ka šī problēma pastāv Microsoft produktos, kas ir minēti sadaļā "Attiecas uz".

Piezīme. Šis ir STEIDZAMI PUBLICĒJAMS raksts, kas izveidots tieši Microsoft atbalsta organizācijā. Šajā rakstā ietvertā informācija ir sniegta, reaģējot uz nesen konstatētām problēmām. Tā kā šis raksts ir tapis pieejams neilgā laikā, materiālos var būt pareizrakstības kļūdas un tās var tikt labotas jebkurā laikā bez paziņojuma. Skatīt Lietošanas citi apsvērumi.

Nepieciešama papildu palīdzība?

Vēlaties vairāk opciju?

Izpētiet abonementa priekšrocības, pārlūkojiet apmācības kursus, uzziniet, kā aizsargāt ierīci un veikt citas darbības.

Kopienas palīdz uzdot jautājumus un atbildēt uz tiem, sniegt atsauksmes, kā arī saņemt informāciju no ekspertiem ar bagātīgām zināšanām.

Vai šī informācija bija noderīga?

Cik lielā mērā esat apmierināts ar valodas kvalitāti?
Kas ietekmēja jūsu pieredzi?
Nospiežot Iesniegt, jūsu atsauksmes tiks izmantotas Microsoft produktu un pakalpojumu uzlabošanai. Jūsu IT administrators varēs vākt šos datus. Paziņojums par konfidencialitāti.

Paldies par jūsu atsauksmēm!

×