Příznaky
Po vydání XBRL (Německo - seznam prodejů EU – novou metodu pro odeslání od 01.01.2013 - Microsoft Dynamics NAV 2009 SP1) klepněte na tlačítko vyhledávání ve formuláři požadavku sestavy 505, řádky taxonomie budou odstraněny neočekávaně. K tomuto problému dochází v následujících produktů:
-
Německé verze Microsoft Dynamics NAV 2009 R2
-
Německé verze Microsoft Dynamics NAV 2009 Service Pack 1
Řešení
Informace o opravě hotfix
Podporovaná oprava hotfix je nyní k dispozici od společnosti Microsoft. Však je určena pouze k odstranění problému popsaného v tomto článku. Použijte ji pouze u systémů, ve kterých dochází k tomuto konkrétnímu problému. Tato oprava hotfix může být dále testována. Proto pokud jste závažně tento problém, doporučujeme počkat na další aktualizaci service pack produktu Microsoft Dynamics NAV 2009 nebo další verze produktu Microsoft Dynamics NAV, která obsahuje tuto opravu hotfix.
Poznámka: Ve zvláštních případech poplatky, které jsou třeba obvykle zaplatit za telefonní hovory mohou být stornovány, jestliže pracovník technické podpory společnosti Microsoft Dynamics a souvisejících produktů Určuje, že konkrétní aktualizace odstraní váš problém. Výdaje na technickou podporu použije dalších otázek a problémů, které nelze vyřešit konkrétní aktualizací.
Informace o instalaci
Společnost Microsoft poskytuje ukázky programování pouze pro ilustraci bez žádné záruky výslovně uvedené nebo odvozené. To zahrnuje, ale není omezen pouze na předpokládané záruky obchodovatelnosti nebo vhodnosti pro určitý účel. Tento článek předpokládá, že jste obeznámeni s programovacím jazykem, který je předmětem ukázky a s nástroji, které slouží k vytvoření a ladění skriptu. Pracovníci podpory společnosti Microsoft mohou vysvětlit funkce určitého postupu. Nemohou však následující příklady rozšířit o další funkce nebo konstrukce podle konkrétních požadavků.
Poznámka: Před instalací této opravy hotfix ověřte, že všichni uživatelé klienta Microsoft Navision odhlášeni systému. To zahrnuje uživatele klienta Microsoft Navision Application Services (NAS). Je třeba klienta pouze uživatel přihlášený při implementaci opravy hotfix.
Chcete-li implementovat tuto opravu hotfix, musí mít licenci vývojáře.
Doporučujeme, aby uživatelský účet v okně přihlášení systému Windows nebo v okně přihlášení databáze přidělí "SUPER" ID role. Pokud uživatelský účet nelze přiřadit ID role "SUPER", musíte ověřit, že uživatelský účet má následující oprávnění:
-
Změnit oprávnění pro objekt, který budete měnit.
-
Oprávnění ke spuštění pro System Object ID 5210 objekt a System Object ID 9015 objekt.
Poznámka: Nemáte práva k úložištím dat. Pokud nebudete provádět opravu dat.
Změny kódu
Poznámka: Vždy otestujte opravy kódu v kontrolovaném prostředí před instalací opravy v provozních počítačích.
Chcete-li vyřešit tento problém, změňte kód v tabulce Nastavení účtování DPH (325). Chcete-li to provést, postupujte takto:
-
Změňte kód vlastnosti následujícím způsobem:
Existující kód 1... Width=16500;
// Delete the following line.
Height=7370;
SaveValues=Yes;
...Změněný kód 1
...Width=16500;
// Add the following line.
Height=8140;
SaveValues=Yes;
...Existující kód 2
...IF NOT XBRLTaxonomy.GET(CurrentTaxonomy) THEN
// Delete the following line.
IF NOT XBRLTaxonomy.FIND('-') THEN
XBRLTaxonomy.INIT;
...Náhradní kód 2
...IF NOT XBRLTaxonomy.GET(CurrentTaxonomy) THEN
// Add the following line.
IF NOT XBRLTaxonomy.FINDFIRST THEN
XBRLTaxonomy.INIT;
...Existující kód 3
...XBRLTaxonomyLabel.SETRANGE("XML Language Identifier",CurrentLang);
// Delete the following line.
IF XBRLTaxonomyLabel.FIND('-') THEN
CurrentLang := XBRLTaxonomyLabel."XML Language Identifier"
...Změněný kód 3
...XBRLTaxonomyLabel.SETRANGE("XML Language Identifier",CurrentLang);
// Add the following line.
IF XBRLTaxonomyLabel.FINDFIRST THEN
CurrentLang := XBRLTaxonomyLabel."XML Language Identifier"
...Existující kód 4
...XBRLTaxonomyLabel.SETRANGE("XML Language Identifier");
// Delete the following line.
IF XBRLTaxonomyLabel.FIND('-') THEN
CurrentLang := XBRLTaxonomyLabel."XML Language Identifier"
...Náhradní kód 4
...XBRLTaxonomyLabel.SETRANGE("XML Language Identifier");
// Add the following line.
IF XBRLTaxonomyLabel.FINDFIRST THEN
CurrentLang := XBRLTaxonomyLabel."XML Language Identifier"
...Existující kód 5
...// Delete the following line.
SETRANGE("Label Language Filter",CurrentLang);
...Změněný kód 5
...// Add the following line.
InitTempTable(ISSERVICETIER);
...Existující kód 6
...// Delete the following lines.
IF ISSERVICETIER THEN
ExpandAll
ELSE
InitTempTable;
// End of the lines.
END;
...Náhradní kód 6
...// Add the following line.
SetFiltersAndUpdate;
END;
...Existující kód 7
...// Delete the following lines.
OnAfterGetRecord=VAR
XBRLLine@1102601000 : Record 395;
BEGIN
IF IsExpanded(Rec) THEN
ActualExpansionStatus := 1
ELSE
IF HasChildren(Rec) THEN
ActualExpansionStatus := 0
ELSE
ActualExpansionStatus := 2;
// End of the lines.
...Změněný kód 7
...// Add the following lines.
OnFindRecord=VAR
Found@1001 : Boolean;
BEGIN
IF NOT FiltersApplied THEN
SetFilters;
FiltersApplied := TRUE;
// End of the lines.
...Existující kód 8
...// Delete the following lines.
XBRLLine.GET("XBRL Taxonomy Name","Line No.");
IF ("Source Type" <> XBRLLine."Source Type") OR
("Constant Amount" <> XBRLLine."Constant Amount") OR
(Description <> XBRLLine.Description)
THEN BEGIN
XBRLLine.CALCFIELDS(Label,Information,Rollup,"G/L Map Lines",Notes,Reference);
Rec := XBRLLine;
MODIFY;
END;
// End of the lines.
...Náhradní kód 8
...// Add the following lines.
TempXBRLLine.COPY(Rec);
Found := TempXBRLLine.FIND(Which);
Rec := TempXBRLLine;
EXIT(Found);
END;
// End of the lines.
...Existující kód 9
...// Delete the following lines.
IF Label = '' THEN
Label := Name;
END;
// End of the lines.
...Náhradní kód 9
...// Add the following lines.
OnNextRecord=VAR
ResultSteps@1001 : Integer;
BEGIN
TempXBRLLine.COPY(Rec);
ResultSteps := TempXBRLLine.NEXT(Steps);
Rec := TempXBRLLine;
EXIT(ResultSteps);
END;
// End of the lines.
...Existující kód 10
...// Delete the following lines.
OnModifyRecord=VAR
XBRLLine@1102601000 : Record 395;
RecRef@1000 : RecordRef;
xRecRef@1001 : RecordRef;
ChangeLogMgt@1002 : Codeunit 423;
BEGIN
RecRef.GETTABLE(Rec);
xRecRef.GETTABLE(xRec);
XBRLLine.GET("XBRL Taxonomy Name","Line No.");
XBRLLine := Rec;
XBRLLine.MODIFY;
Rec := XBRLLine;
MODIFY;
ChangeLogMgt.LogModification(RecRef,xRecRef);
EXIT(FALSE);
END;
// End of the lines.
...Náhradní kód 10
...// Add the following lines.
OnAfterGetRecord=BEGIN
IF IsExpanded(Rec) THEN
ActualExpansionStatus := 1
ELSE
IF HasChildren(Rec) THEN
ActualExpansionStatus := 0
ELSE
ActualExpansionStatus := 2;
// End of the lines.
...Existující kód 11
...// Delete the following lines.
}
CONTROLS
{
{ 1 ;TableBox ;220 ;1760 ;16060;4620 ;HorzGlue=Both;
VertGlue=Both }
{ 35 ;PictureBox ;0 ;2530 ;550 ;3740 ;ParentControl=1;
InColumn=Yes;
BitmapList=47,46;
CaptionML=ENU=Expand;
SourceExpr=ActualExpansionStatus;
OnPush=BEGIN
ToggleExpandCollapse;
END;
}
{ 36 ;Label ;0 ;0 ;0 ;0 ;ParentControl=35;
InColumnHeading=Yes }
{ 28 ;TextBox ;0 ;3410 ;1700 ;440 ;Visible=No;
ParentControl=1;
InColumn=Yes;
SourceExpr="Line No." }
{ 29 ;Label ;0 ;0 ;0 ;0 ;ParentControl=28;
InColumnHeading=Yes }
{ 2 ;TextBox ;0 ;0 ;4400 ;0 ;HorzGlue=Both;
ParentControl=1;
InColumn=Yes;
DrillDown=No;
SourceExpr=Label;
OnFormat=BEGIN
IF Level > 0 THEN
CurrForm.Label.UPDATEINDENT := Level * 220;
// End of the lines.
...Změněný kód 11
...// Add the following lines.
IF Label = '' THEN
Label := Name;
END;
// End of the lines.
...Existující kód 12
...// Delete the following lines.
IF (Level = 0) OR (ActualExpansionStatus < 2) THEN
CurrForm.Label.UPDATEFONTBOLD := TRUE;
END;
}
{ 3 ;Label ;0 ;0 ;0 ;0 ;ParentControl=2;
InColumnHeading=Yes }
{ 4 ;TextBox ;0 ;0 ;550 ;0 ;ParentControl=1;
// End of the lines.
InColumn=Yes;
...Změněný kód 12
...// Add the following lines.
OnAfterGetCurrRecord=VAR
XBRLLine@1000 : Record 395;
BEGIN
XBRLLine.GET("XBRL Taxonomy Name","Line No.");
IF ("Source Type" <> XBRLLine."Source Type") OR
("Constant Amount" <> XBRLLine."Constant Amount") OR
(Description <> XBRLLine.Description)
THEN BEGIN
XBRLLine.CALCFIELDS(Label,Information,Rollup,"G/L Map Lines",Notes,Reference);
TempXBRLLine := XBRLLine;
TempXBRLLine.MODIFY;
END;
END;
OnModifyRecord=VAR
XBRLLine@1102601000 : Record 395;
RecRef@1000 : RecordRef;
xRecRef@1001 : RecordRef;
BEGIN
RecRef.GETTABLE(Rec);
xRecRef.GETTABLE(TempXBRLLine);
XBRLLine := Rec;
XBRLLine.MODIFY;
TempXBRLLine := XBRLLine;
TempXBRLLine.MODIFY;
EXIT(FALSE);
END;
}
CONTROLS
{
{ 1 ;TableBox ;220 ;2530 ;16060;4620 ;HorzGlue=Both;
VertGlue=Both }
{ 35 ;PictureBox ;0 ;2530 ;550 ;3740 ;ParentControl=1;
// End of the lines.
InColumn=Yes;
... -
Změňte kód ovládacích prvků takto:
Existující kód 1...InColumn=Yes;
// Delete the following lines.
SourceExpr="Source Type" }
{ 5 ;Label ;0 ;0 ;0 ;0 ;ParentControl=4;
// End of the lines.
InColumnHeading=Yes }
...Změněný kód 1
...InColumn=Yes;
// Add the following lines.
BitmapList=47,46;
CaptionML=ENU=Expand;
SourceExpr=ActualExpansionStatus;
OnPush=BEGIN
ToggleExpandCollapse;
END;
}
{ 36 ;Label ;0 ;0 ;0 ;0 ;ParentControl=35;
// End of the lines.
InColumnHeading=Yes }
...Existující kód 2
...InColumnHeading=Yes }
// Delete the following line.
{ 6 ;TextBox ;0 ;0 ;2196 ;0 ;ParentControl=1;
InColumn=Yes;
...Náhradní kód 2
...InColumnHeading=Yes }
// Add the following lines.
{ 28 ;TextBox ;0 ;3410 ;1700 ;440 ;Visible=No;
ParentControl=1;
// End of the lines.
InColumn=Yes;
...Existující kód 3
...InColumn=Yes;
// Delete the following lines.
SourceExpr="Constant Amount" }
{ 7 ;Label ;0 ;0 ;0 ;0 ;ParentControl=6;
// End of the lines.
InColumnHeading=Yes }
...Změněný kód 3
...InColumn=Yes;
// Add the following lines.
SourceExpr="Line No." }
{ 29 ;Label ;0 ;0 ;0 ;0 ;ParentControl=28;
// End of the lines.
InColumnHeading=Yes }
...Existující kód 4
...InColumnHeading=Yes }
// Delete the following line.
{ 10 ;CheckBox ;0 ;0 ;1650 ;0 ;ParentControl=1;
InColumn=Yes;
...Náhradní kód 4
...InColumnHeading=Yes }
// Add the following lines.
{ 2 ;TextBox ;0 ;0 ;4400 ;0 ;HorzGlue=Both;
ParentControl=1;
// End of the lines.
InColumn=Yes;
...Existující kód 5
...InColumn=Yes;
// Delete the following lines.
ShowCaption=No;
SourceExpr=Information }
{ 11 ;Label ;0 ;0 ;0 ;0 ;ParentControl=10;
// End of the lines.
InColumnHeading=Yes }
...Změněný kód 5
...InColumn=Yes;
// Add the following lines.
DrillDown=No;
SourceExpr=Label;
OnFormat=BEGIN
IF Level > 0 THEN
CurrForm.Label.UPDATEINDENT := Level * 220;
IF (Level = 0) OR (ActualExpansionStatus < 2) THEN
CurrForm.Label.UPDATEFONTBOLD := TRUE;
END;
}
{ 3 ;Label ;0 ;0 ;0 ;0 ;ParentControl=2;
// End of the lines.
InColumnHeading=Yes }
...Existující kód 6
...InColumnHeading=Yes }
// Delete the following line.
{ 32 ;CheckBox ;10345;2750 ;1700 ;440 ;ParentControl=1;
InColumn=Yes;
...Náhradní kód 6
...InColumnHeading=Yes }
// Add the following line.
{ 4 ;TextBox ;0 ;0 ;550 ;0 ;ParentControl=1;
InColumn=Yes;
...Existující kód 7
...InColumn=Yes;
// Delete the following lines.
ShowCaption=No;
SourceExpr=Reference }
{ 33 ;Label ;0 ;0 ;0 ;0 ;ParentControl=32;
// End of the lines.
InColumnHeading=Yes }
...Změněný kód 7
...InColumn=Yes;
// Add the following lines.
SourceExpr="Source Type" }
{ 5 ;Label ;0 ;0 ;0 ;0 ;ParentControl=4;
// End of the lines.
InColumnHeading=Yes }
...Existující kód 8
...InColumnHeading=Yes }
// Delete the following line.
{ 12 ;CheckBox ;0 ;0 ;1650 ;0 ;ParentControl=1;
InColumn=Yes;
...Náhradní kód 8
...InColumnHeading=Yes }
// Add the following line.
{ 6 ;TextBox ;0 ;0 ;2196 ;0 ;ParentControl=1;
InColumn=Yes;
...Existující kód 9
...InColumn=Yes;
// Delete the following lines.
ShowCaption=No;
SourceExpr=Notes }
{ 13 ;Label ;0 ;0 ;0 ;0 ;ParentControl=12;
// End of the lines.
InColumnHeading=Yes }
...Náhradní kód 9
...InColumn=Yes;
// Add the following lines.
SourceExpr="Constant Amount" }
{ 7 ;Label ;0 ;0 ;0 ;0 ;ParentControl=6;
// End of the lines.
InColumnHeading=Yes }
...Existující kód 10
...InColumnHeading=Yes }
// Delete the following line.
{ 8 ;CheckBox ;7700 ;0 ;1650 ;0 ;ParentControl=1;
InColumn=Yes;
...Náhradní kód 10
...InColumnHeading=Yes }
// Add the following line.
{ 10 ;CheckBox ;0 ;0 ;1650 ;0 ;ParentControl=1;
InColumn=Yes;
...Existující kód 11
...ShowCaption=No;
// Delete the following lines.
SourceExpr="G/L Map Lines" }
{ 9 ;Label ;0 ;0 ;0 ;0 ;ParentControl=8;
// End of the lines.
InColumnHeading=Yes }
...Změněný kód 11
...ShowCaption=No;
// Add the following lines.
SourceExpr=Information }
{ 11 ;Label ;0 ;0 ;0 ;0 ;ParentControl=10;
// End of the lines.
InColumnHeading=Yes }
...Existující kód 12
...InColumnHeading=Yes }
// Delete the following lines.
{ 31 ;CheckBox ;8731 ;2970 ;1650 ;440 ;Visible=No;
ParentControl=1;
// End of the lines.
InColumn=Yes;
...Změněný kód 12
...InColumnHeading=Yes }
// Add the following line.
{ 32 ;CheckBox ;10345;2750 ;1700 ;440 ;ParentControl=1;
InColumn=Yes;
...Existující kód 13
...ShowCaption=No;
// Delete the following lines.
SourceExpr=Rollup }
{ 37 ;Label ;0 ;0 ;0 ;0 ;ParentControl=31;
// End of the lines.
InColumnHeading=Yes }
...Změněný kód 13
...ShowCaption=No;
// Add the following lines.
SourceExpr=Reference }
{ 33 ;Label ;0 ;0 ;0 ;0 ;ParentControl=32;
// End of the lines.
InColumnHeading=Yes }
...Existující kód 14
...InColumnHeading=Yes }
// Delete the following line.
{ 14 ;TextBox ;0 ;0 ;4400 ;0 ;ParentControl=1;
InColumn=Yes;
...Změněný kód 14
...InColumnHeading=Yes }
// Add the following line.
{ 12 ;CheckBox ;0 ;0 ;1650 ;0 ;ParentControl=1;
InColumn=Yes;
...Existující kód 15
...InColumn=Yes;
// Delete the following lines.
SourceExpr=Description }
{ 15 ;Label ;0 ;0 ;0 ;0 ;ParentControl=14;
// End of the lines.
InColumnHeading=Yes }
...Náhradní kód 15
...InColumn=Yes;
// Add the following lines.
ShowCaption=No;
SourceExpr=Notes }
{ 13 ;Label ;0 ;0 ;0 ;0 ;ParentControl=12;
// End of the lines.
InColumnHeading=Yes }
...Existující kód 16
...InColumnHeading=Yes }
// Delete the following lines.
{ 16 ;TextBox ;0 ;0 ;4400 ;0 ;Visible=No;
ParentControl=1;
// End of the lines.
InColumn=Yes;
...Změněný kód 16
...InColumnHeading=Yes }
// Add the following line.
{ 8 ;CheckBox ;7700 ;0 ;1650 ;0 ;ParentControl=1;
InColumn=Yes;
...Existující kód 17
...InColumn=Yes;
// Delete the following lines.
SourceExpr=Name }
{ 17 ;Label ;0 ;0 ;0 ;0 ;ParentControl=16;
// End of the lines.
InColumnHeading=Yes }
...Náhradní kód 17
...InColumn=Yes;
// Add the following lines.
ShowCaption=No;
SourceExpr="G/L Map Lines" }
{ 9 ;Label ;0 ;0 ;0 ;0 ;ParentControl=8;
// End of the lines.
InColumnHeading=Yes }
...Existující kód 18
...InColumnHeading=Yes }
// Delete the following line.
{ 18 ;CommandButton;4400 ;6600 ;2200 ;550 ;HorzGlue=Right;
VertGlue=Bottom;
...Změněný kód 18
...InColumnHeading=Yes }
// Add the following lines.
{ 31 ;CheckBox ;8731 ;2970 ;1650 ;440 ;Visible=No;
ParentControl=1;
InColumn=Yes;
ShowCaption=No;
SourceExpr=Rollup }
{ 37 ;Label ;0 ;0 ;0 ;0 ;ParentControl=31;
InColumnHeading=Yes }
{ 14 ;TextBox ;0 ;0 ;4400 ;0 ;ParentControl=1;
InColumn=Yes;
SourceExpr=Description }
{ 15 ;Label ;0 ;0 ;0 ;0 ;ParentControl=14;
InColumnHeading=Yes }
{ 16 ;TextBox ;0 ;0 ;4400 ;0 ;Visible=No;
ParentControl=1;
InColumn=Yes;
SourceExpr=Name }
{ 17 ;Label ;0 ;0 ;0 ;0 ;ParentControl=16;
InColumnHeading=Yes }
{ 18 ;CommandButton;4400 ;7370 ;2200 ;550 ;HorzGlue=Right;
// End of the lines.
VertGlue=Bottom;
...Existující kód 19
...InvalidActionAppearance=Hide }
// Delete the following line.
{ 19 ;CommandButton;6820 ;6600 ;2200 ;550 ;HorzGlue=Right;
VertGlue=Bottom;
...Změněný kód 19
...InvalidActionAppearance=Hide }
// Add the following line.
{ 19 ;CommandButton;6820 ;7370 ;2200 ;550 ;HorzGlue=Right;
VertGlue=Bottom;
...Existující kód 20
...InvalidActionAppearance=Hide }
// Delete the following line.
{ 20 ;CommandButton;14080;6600 ;2200 ;550 ;HorzGlue=Right;
VertGlue=Bottom;
...Změněný kód 20
...InvalidActionAppearance=Hide }
// Add the following line.
{ 20 ;CommandButton;14080;7370 ;2200 ;550 ;HorzGlue=Right;
VertGlue=Bottom;
...Existující kód 21
...PushAction=FormHelp }
// Delete the following line.
{ 21 ;MenuButton ;9240 ;6600 ;2200 ;550 ;HorzGlue=Right;
VertGlue=Bottom;
...Změněný kód 21
...PushAction=FormHelp }
// Add the following line.
{ 21 ;MenuButton ;9240 ;7370 ;2200 ;550 ;HorzGlue=Right;
VertGlue=Bottom;
...Existující kód 22
...// Delete the following line.
{ 38 ;TabControl ;220 ;220 ;16060;1430 ;HorzGlue=Both }
{ 39 ;TextBox ;3850 ;990 ;2750 ;440 ;ParentControl=38;
...Náhradní kód 22
...// Add the following line.
{ 38 ;TabControl ;220 ;220 ;16060;2090 ;HorzGlue=Both }
{ 39 ;TextBox ;3850 ;990 ;2750 ;440 ;ParentControl=38;
...Existující kód 23
...OnAfterValidate=BEGIN
// Delete the following lines.
FILTERGROUP(2);
SETRANGE("XBRL Taxonomy Name",CurrentTaxonomy);
FILTERGROUP(0);
SETRANGE("XBRL Taxonomy Name");
InitTempTable;
CurrForm.UPDATE(FALSE);
// End of the lines.
END;
...Náhradní kód 23
...OnAfterValidate=BEGIN
// Add the following lines.
InitTempTable(FALSE);
SetFiltersAndUpdate;
// End of the lines.
END;
...Existující kód 24
...IF CurrentLang <> '' THEN
// Delete the following lines.
IF NOT XBRLTaxonomyLabel.FIND('-') THEN
ERROR(Text001,CurrentLang);
SETRANGE("Label Language Filter",CurrentLang);
// End of the lines.
END;
...Náhradní kód 24
...IF CurrentLang <> '' THEN
// Add the following lines.
IF XBRLTaxonomyLabel.ISEMPTY THEN
ERROR(LangLabelsNotDefinedErr,CurrentLang);
// End of the lines.
END;
...Existující kód 25
...XBRLTaxonomyLabel.SETRANGE("XBRL Taxonomy Name",CurrentTaxonomy);
// Delete the following lines.
IF NOT XBRLTaxonomyLabel.FIND('-') THEN
ERROR(Text002,"XBRL Taxonomy Name");
// End of the lines.
XBRLTaxonomyLabel.SETRANGE(
...Změněný kód 25
...XBRLTaxonomyLabel.SETRANGE("XBRL Taxonomy Name",CurrentTaxonomy);
// Add the following lines.
IF NOT XBRLTaxonomyLabel.FINDFIRST THEN
ERROR(TaxonomyLabelsNotDefinedErr,"XBRL Taxonomy Name");
// End of the lines.
XBRLTaxonomyLabel.SETRANGE(
...Existující kód 26
...EXIT(TRUE);
// Delete the following lines.
END ELSE
EXIT(FALSE);
// End of the lines.
END;
...Změněný kód 26
...EXIT(TRUE);
// Add the following lines.
END;
EXIT(FALSE);
// End of the lines.
END;
...Existující kód 27
...END;
// Delete the following line.
}
{ 42 ;Label ;10890;990 ;3300 ;440 ;ParentControl=41 }
...Změněný kód 27
...END;
// Add the following lines.
OnAfterValidate=BEGIN
SetFiltersAndUpdate;
END;
}
// End of the lines.
{ 42 ;Label ;10890;990 ;3300 ;440 ;ParentControl=41 }
...Existující kód 28
...{ 42 ;Label ;10890;990 ;3300 ;440 ;ParentControl=41 }
// Delete the following line.
{ 43 ;MenuButton ;11660;6600 ;2200 ;550 ;HorzGlue=Right;
VertGlue=Bottom;
...Náhradní kód 28
...{ 42 ;Label ;10890;990 ;3300 ;440 ;ParentControl=41 }
// Add the following lines.
{ 49 ;CheckBox ;3850 ;1650 ;440 ;440 ;ParentControl=38;
InPage=0;
ShowCaption=No;
CaptionML=ENU=Show Only Presentation;
SourceExpr=OnlyShowPresentation;
OnAfterValidate=BEGIN
SetFiltersAndUpdate;
END;
}
{ 50 ;Label ;440 ;1650 ;3300 ;440 ;ParentControl=49 }
{ 43 ;MenuButton ;11660;7370 ;2200 ;550 ;HorzGlue=Right;
// End of the lines.
VertGlue=Bottom;
...Existující kód 29
...OnPush=BEGIN
// Delete the following line.
ExpandAll;
END;
...Změněný kód 29
...OnPush=BEGIN
// Add the following lines.
InitTempTable(TRUE);
SetFiltersAndUpdate;
// End of the lines.
END;
...Existující kód 30
...OnPush=BEGIN
// Delete the following line.
InitTempTable;
END;
...Změněný kód 30
...OnPush=BEGIN
// Add the following lines.
InitTempTable(FALSE);
SetFiltersAndUpdate;
// End of the lines.
END;
... -
Přidejte následující globální veriable:
...VAR
// Add the following line.
TempXBRLLine@1005 : TEMPORARY Record 395;
CurrentTaxonomy@1004 : Code[20];
... -
Odstraňte následující globální proměnné:
...ActualExpansionStatus@1000 : Integer;
// Delete the following lines.
Text001@1002 : TextConst 'ENU=Labels are not defined for language %1.';
Text002@1006 : TextConst 'ENU=There are no labels defined for %1.';
// End of the lines.
... -
Přidejte následující globální proměnné:
...ActualExpansionStatus@1000 : Integer;
// Add the following lines.
LangLabelsNotDefinedErr@1002 : TextConst 'ENU=Labels are not defined for language %1.';
TaxonomyLabelsNotDefinedErr@1006 : TextConst 'ENU=There are no labels defined for %1.';
OnlyShowPresentation@1003 : Boolean;
FiltersApplied@1007 : Boolean;
// End of the lines.
... -
Změňte kód ve funkci InitTempTable takto:
Existující kód 1...// Delete the following line.
LOCAL PROCEDURE InitTempTable@4();
VAR
...Změněný kód 1
...// Add the following line.
LOCAL PROCEDURE InitTempTable@4(ExpandAll@1000 : Boolean);
VAR
...Existující kód 2
...VAR
// Delete the following line.
XBRLLine@1000 : Record 395;
BEGIN
...Náhradní kód 2
...VAR
// Add the following line.
XBRLLine@1001 : Record 395;
BEGIN
...Existující kód 3
...ResetFilter;
// Delete the following line.
DELETEALL;
XBRLLine.SETRANGE("XBRL Taxonomy Name",CurrentTaxonomy);
...Změněný kód 3
...ResetFilter;
// Add the following lines.
TempXBRLLine.RESET;
TempXBRLLine.DELETEALL;
TempXBRLLine.SETCURRENTKEY("XBRL Taxonomy Name","Presentation Order");
// End of the lines.
XBRLLine.SETRANGE("XBRL Taxonomy Name",CurrentTaxonomy);
...Existující kód 4
...XBRLLine.SETRANGE("XBRL Taxonomy Name",CurrentTaxonomy);
// Delete the following line.
XBRLLine.SETRANGE(Level,0);
IF XBRLLine.FIND('-') THEN
...Náhradní kód 4
...XBRLLine.SETRANGE("XBRL Taxonomy Name",CurrentTaxonomy);
// Add the following lines.
IF NOT ExpandAll THEN
XBRLLine.SETRANGE(Level,0);
// End of the lines.
IF XBRLLine.FIND('-') THEN
...Existující kód 5
...REPEAT
// Delete the following lines.
- Rec := XBRLLine;
- INSERT;
// End of the lines.
UNTIL XBRLLine.NEXT = 0;
...Změněný kód 5
...REPEAT
// Add the following lines.
TempXBRLLine := XBRLLine;
TempXBRLLine.INSERT;
// End of the lines.
UNTIL XBRLLine.NEXT = 0;
... -
Změňte kód ve funkci Rozbalit vše takto:
Existující kód 1...// Delete the following line.
LOCAL PROCEDURE ExpandAll@12();
VAR
...Změněný kód 1
...// Add the following line.
LOCAL PROCEDURE HasChildren@19(ActualXBRLLine@1000 : Record 395) : Boolean;
VAR
...Existující kód 2
...VAR
// Delete the following line.
XBRLLine@1000 : Record 395;
BEGIN
...Náhradní kód 2
...VAR
// Add the following line.
XBRLLine2@1001 : Record 395;
BEGIN
...Existující kód 3
...BEGIN
// Delete the following lines.
ResetFilter;
DELETEALL;
XBRLLine.SETRANGE("XBRL Taxonomy Name",CurrentTaxonomy);
IF XBRLLine.FIND('-') THEN
REPEAT
Rec := XBRLLine;
INSERT;
UNTIL XBRLLine.NEXT = 0;
// End of the lines.
END;
...Změněný kód 3
...BEGIN
// Add the following lines.
XBRLLine2 := ActualXBRLLine;
XBRLLine2.SETCURRENTKEY("XBRL Taxonomy Name","Presentation Order");
XBRLLine2.SETRANGE("XBRL Taxonomy Name",ActualXBRLLine."XBRL Taxonomy Name");
IF XBRLLine2.NEXT = 0 THEN
EXIT(FALSE);
EXIT(XBRLLine2.Level > ActualXBRLLine.Level);
// End of the lines.
END;
... -
Změňte kód ve funkci HasChildren takto:
Existující kód 1...// Delete the following line.
LOCAL PROCEDURE HasChildren@19(ActualXBRLLine@1000 : Record 395) : Boolean;
VAR
...Změněný kód 1
...// Add the following line.
LOCAL PROCEDURE IsExpanded@20(ActualXBRLLine@1000 : Record 395) : Boolean;
VAR
...Existující kód 2
...VAR
// Delete the following line.
XBRLLine2@1001 : Record 395;
BEGIN
...Náhradní kód 2
...VAR
// Add the following lines.
xXBRLLine@1001 : Record 395;
Found@1002 : Boolean;
// End of the lines.
BEGIN
...Existující kód 3
...BEGIN
// Delete the following lines.
XBRLLine2 := ActualXBRLLine;
XBRLLine2.SETCURRENTKEY("XBRL Taxonomy Name","Presentation Order");
XBRLLine2.SETRANGE("XBRL Taxonomy Name",ActualXBRLLine."XBRL Taxonomy Name");
IF XBRLLine2.NEXT = 0 THEN
EXIT(FALSE)
ELSE
EXIT(XBRLLine2.Level > ActualXBRLLine.Level);
// End of the lines.
END;
...Změněný kód 3
...BEGIN
// Add the following lines.
xXBRLLine.COPY(Rec);
ResetFilter;
TempXBRLLine := ActualXBRLLine;
Found := (TempXBRLLine.NEXT <> 0);
IF Found THEN
Found := (TempXBRLLine.Level > ActualXBRLLine.Level);
COPY(xXBRLLine);
EXIT(Found);
// End of the lines.
END;
... -
Změňte kód ve funkci IsExpanded takto:
Existující kód 1...// Delete the following line.
LOCAL PROCEDURE IsExpanded@20(ActualXBRLLine@1000 : Record 395) : Boolean;
VAR
...Změněný kód 1
...// Add the following line.
LOCAL PROCEDURE ToggleExpandCollapse@1();
VAR
...Existující kód 2
...VAR
xXBRLLine@1001 : Record 395;
...Náhradní kód 2
...VAR
// Add the following line.
XBRLLine@1000 : Record 395;
xXBRLLine@1001 : Record 395;
...Existující kód 3
...xXBRLLine@1001 : Record 395;
// Delete the following line.
Found@1002 : Boolean;
BEGIN
...Změněný kód 3
...xXBRLLine@1001 : Record 395;
BEGIN
...Existující kód 4
...ResetFilter;
// Delete the following lines.
Rec := ActualXBRLLine;
Found := (NEXT <> 0);
IF Found THEN
Found := (Level > ActualXBRLLine.Level);
COPY(xXBRLLine);
EXIT(Found);
END;
LOCAL PROCEDURE ToggleExpandCollapse@1();
VAR
XBRLLine@1000 : Record 395;
xXBRLLine@1001 : Record 395;
BEGIN
xXBRLLine.COPY(Rec);
ResetFilter;
// End of the lines.
IF ActualExpansionStatus = 0 THEN BEGIN // Has children, but not expanded
...Náhradní kód 4
...ResetFilter;
IF ActualExpansionStatus = 0 THEN BEGIN // Has children, but not expanded
... -
Změňte kód ve funkci ToggleExpandCollapse takto:
Existující kód 1...IF XBRLLine.Level > xXBRLLine.Level THEN BEGIN
// Delete the following lines.
Rec := XBRLLine;
IF INSERT THEN;
// End of the lines.
END;
...Změněný kód 1
...IF XBRLLine.Level > xXBRLLine.Level THEN BEGIN
// Add the following lines.
TempXBRLLine := XBRLLine;
IF TempXBRLLine.INSERT THEN;
// End of the lines.
END;
...Existující kód 2
...IF ActualExpansionStatus = 1 THEN BEGIN // Has children and is already expanded
// Delete the following lines.
WHILE (NEXT <> 0) AND (Level > xXBRLLine.Level) DO
DELETE;
// End of the lines.
END;
...Náhradní kód 2
...IF ActualExpansionStatus = 1 THEN BEGIN // Has children and is already expanded
// Add the following lines.
TempXBRLLine := Rec;
WHILE (TempXBRLLine.NEXT <> 0) AND (TempXBRLLine.Level > xXBRLLine.Level) DO
TempXBRLLine.DELETE;
// End of the lines.
END;
... -
Změňte kód ve funkci ResetFilter takto:
Existující kód 1...// Delete the following line.
LOCAL PROCEDURE ResetFilter@3();
BEGIN
...Změněný kód 1
...// Add the following line.
LOCAL PROCEDURE SetFiltersAndUpdate@5();
BEGIN
...Existující kód 2
...BEGIN
// Delete the following lines.
RESET;
SETCURRENTKEY("XBRL Taxonomy Name","Presentation Order");
FILTERGROUP(2);
SETRANGE("XBRL Taxonomy Name",CurrentTaxonomy);
FILTERGROUP(0);
// End of the lines.
END;
...Náhradní kód 2
...BEGIN
// Add the following lines.
SetFilters;
CurrForm.UPDATE(FALSE);
// End of the lines.
END;
...Existující kód 3
...BEGIN
...Změněný kód 3
...
// Add the following line.
LOCAL PROCEDURE SetFilters@11();
BEGIN
...Existující kód 4
...BEGIN
// Delete the following lines.
END.
}
}
// End of the lines.
...Náhradní kód 4
...BEGIN
// Add the following lines.
SETRANGE("Label Language Filter",CurrentLang);
IF OnlyShowPresentation THEN
SETFILTER("Presentation Linkbase Line No.",'>0')
ELSE
SETRANGE("Presentation Linkbase Line No.");
END;
// End of the lines.
... -
Přidejte následující kód ve funkci ResetFilter :
... LOCAL PROCEDURE ResetFilter@3();
BEGIN
RESET;
SETCURRENTKEY("XBRL Taxonomy Name","Presentation Order");
FILTERGROUP(2);
SETRANGE("XBRL Taxonomy Name",CurrentTaxonomy);
FILTERGROUP(0);
END;
... -
Přidejte následující kód ve funkci ResetFilter :
... BEGIN
END.
}
}
...
Předpoklady
Musí mít jednu z následujících produktů nainstalovali tuto opravu hotfix:
-
Německé verze Microsoft Dynamics NAV 2009 R2
-
Německé verze Microsoft Dynamics NAV 2009 Service Pack 1
Informace o odinstalaci
Tato oprava hotfix nelze odebrat.
Stav
Společnost Microsoft potvrdila, že se jedná o problém v produktech společnosti Microsoft, které jsou uvedeny v části "Platí pro".
Poznámka: Toto je článek "Rychlé publikování" vytvářen přímo v rámci odborné pomoci společnosti Microsoft. Informace obsažené v tomto dokumentu jsou poskytovány tak, jak je v reakci na vznikající problémy. V důsledku rychlosti v jeho zpřístupnění materiály, mohou obsahovat typografické chyby a mohou být upraveny kdykoli bez předchozího upozornění. Viz Podmínky použití pro další aspekty.