Rychle publikované články poskytují informace přímo od organizace podpory Microsoftu. Zde obsažené informace jsou vytvářeny jako reakce na nová nebo jedinečná témata nebo jsou určeny k doplnění dalších informací znalostní báze Knowledge Base.
Tento článek platí pro Microsoft Dynamics NAV 2009 pro všechny země a všechna jazyková národní prostředí.
Příznaky
Předpokládejme, že kód hodnoty dimenze položky komponenty sady se liší od kódu nadřazené položky sady v aplikaci Microsoft Dynamics NAV 2009 SP1. Při zaúčtování deníku kusovníku nebo prodejní objednávky vám aplikace Microsoft Dynamics NAV 2009 SP1 nesprávně umožní zaúčtovat deník kusovníku nebo prodejní objednávku bez chybové zprávy. K tomuto problému dochází, i když je zaúčtovací kód hodnoty dimenze definován jako "stejný kód" pro komponentu sady i nadřazenou položku sady.
Očekáváte, že "dimenze použitá v řádku deníku zboží, výchozí, 10000 způsobila chybu. Vybraný kód hodnoty dimenze [Hodnota dimenze code_Number] pro kód dimenze [code_Number dimenze] pro položku [Item_Number]", která se zobrazí při zaúčtování deníku kusovníku nebo prodejní objednávky v této situaci.
K tomuto problému dochází u produktů, které mají funkci Kitting zahrnutou v následujících zemích:
- Austrálie
- Rakousko
- Francie
- Indonésie
- Malajsie
- Nový Zéland
- Severní Amerika
- Filipíny
- Singapur
- Thajsko
Řešení
Informace o opravě hotfix
Od Microsoftu je teď k dispozici podporovaná oprava hotfix. Účelem je však pouze vyřešení problému, který je popsán v tomto článku. Aplikujte ho jenom na systémy, ve kterých dochází k tomuto konkrétnímu problému. Tato oprava hotfix může projít dalším testováním. Pokud se vás tedy tento problém vážně netýká, doporučujeme počkat na další aktualizaci Service Pack pro produkt Microsoft Dynamics NAV 2009 nebo další verzi aplikace Microsoft Dynamics NAV, která tuto opravu hotfix obsahuje.
Poznámka: Ve zvláštních případech mohou být poplatky, které jsou obvykle účtovány za telefonická hovory podpory, zrušeny, pokud pracovník technické podpory pro řešení Microsoft Dynamics a související produkty zjistí, že konkrétní aktualizace vyřeší váš problém. Další dotazy a problémy týkající se podpory, které se netýkají této konkrétní opravy, podléhají běžným sazbám za podporu.
Informace o instalaci
Společnost Microsoft poskytuje příklady programování pouze pro ilustraci, bez záruky, ať už vyjádřené nebo předpokládané. To zahrnuje, ale není omezeno na, předpokládané záruky prodejnosti nebo vhodnosti pro konkrétní účel. Tento článek předpokládá, že jste obeznámeni s programovacím jazykem, který je předváděn, a s nástroji, které se používají k vytváření a ladění procedur. Pracovníci technické podpory Microsoftu vám můžou pomoct vysvětlit funkčnost určitého postupu, ale nebudou tyto příklady upravovat za účelem poskytování dalších funkcí nebo konstrukce procedur, které by splňovaly vaše konkrétní požadavky.
Poznámka: Před instalací této opravy hotfix ověřte, zda jsou všichni uživatelé klienta Microsoft Navision odhlášeni ze systému. To zahrnuje i uživatele klienta Microsoft Navision Application Services (NAS). Měli byste být jediným klientským uživatelem, který je přihlášen při implementaci této opravy hotfix.
K implementaci této opravy hotfix musíte mít vývojářskou licenci.
Doporučujeme, aby uživatelské účtu v okně Windows Přihlášení nebo v okně Přihlášení k databázi bylo přiřazeno ID role "SUPER". Pokud nelze uživatelskému účtu přiřadit ID role "SUPER", je nutné ověřit, zda má uživatelský účet následující oprávnění:
- Oprávnění k úpravám objektu, který budete měnit.
- Oprávnění ke spuštění pro objekt s ID systémového objektu 5210 a pro objekt s ID systémového objektu 9015.
Poznámka: K úložištím dat nemusíte mít práva, ledaže byste museli provádět opravu dat.
Změny kódu
Poznámka: Před použitím oprav v produkčních počítačích vždy otestujte opravy kódu v kontrolovaném prostředí.
Chcete-li tento problém vyřešit, změňte kód ve funkci Code v kódové jednotce BOM Jnl.-Post Line(32) následujícím způsobem:
Existující kód
...
ELSE
BuildTotalDisassemblyCost(BOMJnlLine,ItemJnlLine.Amount - "Total Cost");
TransferDimToItemJnlLine(ItemJnlLine,TempJnlLineDim2,FALSE);
ReserveBOMJnlLine.TransferBOMJnlToItemJnlLine(BOMJnlLine,ItemJnlLine,"Quantity (Base)");
...
Náhradní kód
...
ELSE
BuildTotalDisassemblyCost(BOMJnlLine,ItemJnlLine.Amount - "Total Cost");
// Add the following line.
TransferDimToItemJnlLine(ItemJnlLine,TempJnlLineDim2);
// End of the added line.
ReserveBOMJnlLine.TransferBOMJnlToItemJnlLine(BOMJnlLine,ItemJnlLine,"Quantity (Base)");
...
změňte kód ve funkci PostTempJnlLines v kódové jednotce BOM Jnl.-Post Line (32) takto:
Existující kód
...
IF TempItemJnlLine.FIND('-') THEN
REPEAT
TempItemJnlLine2 := TempItemJnlLine;
TransferDimToItemJnlLine(TempItemJnlLine,TempJnlLineDim2,TRUE);
ItemJnlPostLine.RunWithCheck(TempItemJnlLine,TempJnlLineDim2);
WITH TempItemJnlLine DO BEGIN
Quantity := TempItemJnlLine2.Quantity;
...
Náhradní kód
...
IF TempItemJnlLine.FIND('-') THEN
REPEAT
TempItemJnlLine2 := TempItemJnlLine;
// Add the following line.
TransferDimToItemJnlLine(TempItemJnlLine,TempJnlLineDim2);
// End of the added line.
ItemJnlPostLine.RunWithCheck(TempItemJnlLine,TempJnlLineDim2);
WITH TempItemJnlLine DO BEGIN
Quantity := TempItemJnlLine2.Quantity;
...
změňte kód ve funkci TransferDimToItemJnlLine v kódové jednotce řádku BOM Jnl.-Post (32) takto:
Existující kód
...
TempJnlLineDim2."Journal Line No." := ItemJnlLine2."Line No.";
TempJnlLineDim2."Allocation Line No." := 0;
TempJnlLineDim2."Dimension Code" := TempJnlLineDim."Dimension Code";
IF Consumption THEN
IF DefDim.GET(DATABASE::Item,ItemJnlLine2."Item No.",TempJnlLineDim."Dimension Code") THEN BEGIN
TempJnlLineDim2."Dimension Value Code" := DefDim."Dimension Value Code";
CASE DefDim."Dimension Code" OF
GLSetup."Global Dimension 1 Code":
ItemJnlLine2."Shortcut Dimension 1 Code" := DefDim."Dimension Value Code";
GLSetup."Global Dimension 2 Code":
ItemJnlLine2."Shortcut Dimension 2 Code" := DefDim."Dimension Value Code";
END;
END ELSE
TempJnlLineDim2."Dimension Value Code" := TempJnlLineDim."Dimension Value Code"
ELSE
TempJnlLineDim2."Dimension Value Code" := TempJnlLineDim."Dimension Value Code";
TempJnlLineDim2.INSERT;
UNTIL TempJnlLineDim.NEXT = 0;
END;
...
Náhradní kód
...
TempJnlLineDim2."Journal Line No." := ItemJnlLine2."Line No.";
TempJnlLineDim2."Allocation Line No." := 0;
TempJnlLineDim2."Dimension Code" := TempJnlLineDim."Dimension Code";
// Add the following line.
TempJnlLineDim2."Dimension Value Code" := TempJnlLineDim."Dimension Value Code";
// End of the added line.
TempJnlLineDim2.INSERT;
UNTIL TempJnlLineDim.NEXT = 0;
END;
...
změňte kód ve funkci PostResourceCost v kódové jednotce řádku BOM Jnl.-Post (32) následujícím způsobem:
Existující kód
...
ItemJnlLine.Kitting := TRUE;
TotalCost := "Total Cost";
UnitCost := "Unit Cost";
TransferDimToItemJnlLine(ItemJnlLine,TempJnlLineDim2,TRUE);
IF OutputItemLedgEntryNo <> 0 THEN BEGIN
ItemJnlLine."Item Shpt. Entry No." := OutputItemLedgEntryNo;
...
Náhradní kód
...
ItemJnlLine.Kitting := TRUE;
TotalCost := "Total Cost";
UnitCost := "Unit Cost";
// Add the following line.
TransferDimToItemJnlLine(ItemJnlLine,TempJnlLineDim2);
// End of the added line.
IF OutputItemLedgEntryNo <> 0 THEN BEGIN
ItemJnlLine."Item Shpt. Entry No." := OutputItemLedgEntryNo;
...
Požadavky
Pro instalaci této opravy hotfix musíte mít nainstalovanou aplikaci Microsoft Dynamics NAV 2009 SP1.
Informace o odebrání
Tuto opravu hotfix nelze odebrat.
Stav
Společnost Microsoft potvrdila, že se jedná o problém produktů Microsoft, které jsou uvedeny v sekci Platí pro.
SPOLEČNOST MICROSOFT A JEJÍ DODAVATELÉ NENESOU ŽÁDNOU ZODPOVĚDNOST A NEPOSKYTUJÍ ŽÁDNÉ ZÁRUKY ZA VHODNOST, SPOLEHLIVOST NEBO PŘESNOST INFORMACÍ OBSAŽENÝCH V DOKUMENTECH A SOUVISEJÍCÍ GRAFICE PUBLIKOVANÝCH NA TOMTO WEBU ("MATERIÁLY") PRO ŽÁDNÝ ÚČEL.
MATERIÁLY MOHOU OBSAHOVAT TECHNICKÉ NEPŘESNOSTI NEBO TYPOGRAFICKÉ CHYBY A MOHOU BÝT KDYKOLI BEZ UPOZORNĚNÍ OPRAVENY. V MAXIMÁLNÍM ROZSAHU POVOLENÉM PLATNÝMI ZÁKONY SE MICROSOFT A JEJÍ DODAVATELÉ ZŘÍKAJÍ A VYLUČUJÍ VEŠKERÁ PROHLÁŠENÍ, ZÁRUKY A PODMÍNKY, AŤ UŽ VÝSLOVNÉ, PŘEDPOKLÁDANÉ NEBO ZÁKONNÉ, VČETNĚ, ALE NIKOLI VÝHRADNĚ, PROHLÁŠENÍ, ZÁRUK NEBO PODMÍNEK VLASTNICTVÍ, NEPORUŠENÍ PRÁV, USPOKOJIVÉHO STAVU NEBO KVALITY, PRODEJNOSTI A VHODNOSTI PRO URČITÝ ÚČEL VE VZTAHU K MATERIÁLŮM.