Тази статия се отнася за Microsoft Dynamics NAV за всички страни и всички езикови променливи.
Симптоми
Да предположим, че сте избрали квадратчето за отметка "Покажи името на колоната " в анализа на продажбите по измерение в RoleTailored клиент (RTC) в Microsoft Dynamic NAV 2009 Service Pack 1 (SP1). Когато изпълните функцията " Показване на матрица " при анализа на продажбите по измерение, стойностите се показват неправилно в отчета "Анализ на продажбите по променлива матрица".
Решение
Информация за горещи поправки
Поддържа гореща поправка вече се предлага от Microsoft. Целта му е обаче само да коригира проблема, който е описан в тази статия. Прилагайте го само към системи, които срещат този конкретен проблем. Тази гореща корекция може да бъде подложена на допълнително тестване. Ето защо, ако не сте сериозно засегнати от този проблем, ви препоръчваме да изчакате следващия сервизен пакет за Microsoft Dynamics NAV или следващата версия на Microsoft Dynamics NAV, която съдържа тази гореща корекция.
Забележка: При специални случаи таксите, които обикновено се начисляват за свързани с поддръжката разговори, могат да бъдат отменени, ако специалист по техническа поддръжка за Microsoft Dynamics и свързаните продукти реши, че проблемът може да бъде решен със специфична актуализация. Стандартните такси за поддръжката ще важат за допълнителни въпроси, свързани с нея, както и за проблеми, които не спадат към съответната актуализация.
Информация за инсталиране
Microsoft предоставя примери за програмиране само за илюстрация, без гаранция, нито изрична, или подразбираща се. Това включва, но не се ограничава до, подразбиращите се гаранции за продаваемост или годност за определена цел. В тази статия се предполага, че сте запознати с езика за програмиране, който се демонстрира, и с инструментите, които се използват за създаване и за процедури за отстраняване на грешки. Инженерите по поддръжка на Microsoft могат да ви помогнат да обяснят функционалността на дадена процедура, но няма да променят тези примери, за да предоставят допълнителна функционалност или да конструират процедури, които да отговарят на вашите конкретни изисквания.
Забележка Преди да инсталирате тази гореща корекция, уверете се, че всички потребители на клиента на Microsoft Navision са излезли от системата. Това включва потребители на клиенти на Microsoft Navision Application Services (NAS). Когато внедрявате тази гореща корекция, трябва да сте единственият клиентски потребител е влязъл.
За да приложите тази гореща корекция, трябва да имате лиценз за разработчик.
Препоръчваме на потребителския акаунт в прозореца за влизане в Windows или в прозореца за влизане в база данни да бъде присвоен ИД на роля "SUPER". Ако на потребителския акаунт не може да бъде присвоен ИД на роля "SUPER", трябва да се уверите, че този потребителски акаунт има следните разрешения:
- Разрешението за промяна за обекта, който ще променяте.
- Разрешението за изпълнение за обекта 5210 на системен обект с ИД 5210 и за обекта 9015 на системен обект.
Забележка: Не е необходимо да имате права за хранилищата за данни, освен ако не трябва да извършите поправка на данни.
Промени в кода
Забележка: Винаги тествайте корекциите на кода в контролирана среда, преди да ги приложите към производствените си компютри.
За да решите този проблем, изпълнете следните стъпки:
Променете кода в кошчето. Анализ по Dim форма (9224), както следва:
Съществуващ код 1... Steps@1033 : Integer; // Delete the following lines. Dim1Filter1@1017 : Code[250]; Dim2Filter1@1012 : Code[250]; Dim3Filter1@1010 : Code[250]; ItemFilter1@1009 : Code[250]; LocationFilter1@1003 : Code[250]; DateFilter1@1013 : Text[30]; // End of the lines. DateFilter@1021 : Text[30]; Dim1Filter@1043 : Code[250]; ...Код за замяна 1
... Steps@1033 : Integer; DateFilter@1021 : Text[30]; Dim1Filter@1043 : Code[250]; ...Съществуващ код 2
... LOCAL PROCEDURE FillColumnsItem@9(VAR MatrixColumnCaptions@1009 : ARRAY [32] OF Text[30]) : Boolean; BEGIN CLEAR(MatrixColumnCaptions); i := 1; // Delete the following line. Item.SETFILTER("No.",ItemFilter1); ...Код за замяна 2
... LOCAL PROCEDURE FillColumnsItem@9(VAR MatrixColumnCaptions@1009 : ARRAY [32] OF Text[30]) : Boolean; // Add the following lines. VAR Item@1013 : Record 27; i@1004 : Integer; // End of the lines. BEGIN CLEAR(MatrixColumnCaptions); i := 1; // Add the following line. Item.SETFILTER("No.",ItemFilter); ...Променете кода във функцията FillColumnsLocation в библиотеката. Анализ по Dim форма (9224), както следва:
Съществуващ код... BEGIN CLEAR(MatrixColumnCaptions); i := 1; // Delete the following line. Location.SETFILTER(Code,LocationFilter1); ...Код за подмяна
... CLEAR(MatrixColumnCaptions); i := 1; // Add the following line. Location.SETFILTER(Code,LocationFilter); ...Променете кода във функцията ShowMatrix в библиотеката. Анализ по Dim форма (9224), както следва:
Съществуващ код... BEGIN // Delete the following line. ApplyColumnFilter; PurchAnalysisByDimMatrix.LoadVariables(ItemAnalysisView,ItemStatisticsBuffer, CurrentItemAnalysisViewCode,CurrentAnalysisArea, LineDimOption,ColumnDimOption,LineDimCode,ColumnDimCode,PeriodType,ValueType, RoundingFactor,ShowActualBudget,MatrixColumnCaptions, // Delete the following line. ShowOppositeSign,PeriodInitialized,FirstColumn,LastColumn,ShowColumnName,MATRIX_CurrSetLength); ...Код за подмяна
... BEGIN PurchAnalysisByDimMatrix.LoadVariables(ItemAnalysisView,ItemStatisticsBuffer, CurrentItemAnalysisViewCode,CurrentAnalysisArea, LineDimOption,ColumnDimOption,LineDimCode,ColumnDimCode,PeriodType,ValueType, RoundingFactor,ShowActualBudget,MatrixColumnCaptions, // Add the following line. ShowOppositeSign,PeriodInitialized,ShowColumnName,MATRIX_CurrSetLength); ...Изтрийте функцията ApplyColumnFilter в библиотеката. Анализ по Dim форма (9224), както следва:
// Delete the following lines. PROCEDURE ApplyColumnFilter@13(); BEGIN CLEAR(ItemFilter1); CLEAR(LocationFilter1); CLEAR(DateFilter1); CLEAR(Dim1Filter1); CLEAR(Dim2Filter1); CLEAR(Dim3Filter1); CASE ColumnDimOption OF ColumnDimOption::Item: BEGIN IF ItemFilter <> '' THEN ItemFilter1 := ItemFilter + '&'; ItemFilter1 := ItemFilter1 + FORMAT(FirstColumn) + '..' + FORMAT(LastColumn); LocationFilter1 := LocationFilter; DateFilter1 := DateFilter; Dim1Filter1 := Dim1Filter; Dim2Filter1 := Dim2Filter; Dim3Filter1 := Dim3Filter; END; ColumnDimOption::Location: BEGIN ItemFilter1 := ItemFilter; IF LocationFilter <> '' THEN LocationFilter1 := LocationFilter + '&'; LocationFilter1 := LocationFilter1 + FORMAT(FirstColumn) + '..' + FORMAT(LastColumn); DateFilter1 := DateFilter; Dim1Filter1 := Dim1Filter; Dim2Filter1 := Dim2Filter; Dim3Filter1 := Dim3Filter; END; ColumnDimOption::Period: BEGIN ItemFilter1 := ItemFilter; LocationFilter1 := LocationFilter; DateFilter1 := DateFilter; Dim1Filter1 := Dim1Filter; Dim2Filter1 := Dim2Filter; Dim3Filter1 := Dim3Filter; END; ColumnDimOption::"Dimension 1": BEGIN ItemFilter1 := ItemFilter; LocationFilter1 := LocationFilter; DateFilter1 := DateFilter; IF Dim1Filter <> '' THEN Dim1Filter1 := Dim1Filter + '&'; Dim1Filter1 := Dim1Filter1 + FORMAT(FirstColumn) + '..' + FORMAT(LastColumn); Dim2Filter1 := Dim2Filter; Dim3Filter1 := Dim3Filter; END; ColumnDimOption::"Dimension 2": BEGIN ItemFilter1 := ItemFilter; LocationFilter1 := LocationFilter; DateFilter1 := DateFilter; Dim1Filter1 := Dim1Filter; IF Dim2Filter <> '' THEN Dim2Filter1 := Dim2Filter + '&'; Dim2Filter1 := Dim2Filter1 + FORMAT(FirstColumn) + '..' + FORMAT(LastColumn); Dim3Filter1 := Dim3Filter; END; ColumnDimOption::"Dimension 3": BEGIN ItemFilter1 := ItemFilter; LocationFilter1 := LocationFilter; DateFilter1 := DateFilter; Dim1Filter1 := Dim1Filter; Dim2Filter1 := Dim2Filter; IF Dim3Filter <> '' THEN Dim3Filter1 := Dim3Filter + '&'; Dim3Filter1 := Dim3Filter1 + FORMAT(FirstColumn) + '..' + FORMAT(LastColumn); END; END; END; // End of the lines.Променете кода в свойствата в кошчето. Анализ чрез формата на Dim Matrix (9225), както следва:
Съществуващ код{ Width=19140; Height=6710; Editable=No; TableBoxID=1; LinksAllowed=No; SourceTable=Table367; OnOpenForm=BEGIN // Delete the following line. ApplyColumnFilter; CurrForm.Field1.VISIBLE(1 <= NoOfRecords); ...Код за подмяна
{ Width=19140; Height=6710; Editable=No; TableBoxID=1; LinksAllowed=No; SourceTable=Table367; OnOpenForm=BEGIN CurrForm.Field1.VISIBLE(1 <= NoOfRecords); ...Променете кода в кошчето. Анализ по форма на Dim Matrix (9225), както следва:
Съществуващ код 1... OnAfterGetRecord=BEGIN IF CurrForm.TotalQuantity.VISIBLE THEN Quantity := CalcAmt(DimCodeBufferColumn,2,FALSE); IF CurrForm.TotalInvtValue.VISIBLE THEN Amount := CalcAmt(DimCodeBufferColumn,1,FALSE); Steps := 1; // Delete the following line. ApplyColumnFilter; Which := '-'; ItemAnalysisMgt.FindRec( ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Which, // Delete the following lines. ItemFilter1,LocationFilter1,PeriodType,DateFilter1,PeriodInitialized,InternalDateFilter, Dim1Filter1,Dim2Filter1,Dim3Filter1); // End of the lines. i := 1; WHILE (i <= NoOfRecords) AND (i <= ARRAYLEN(MatrixColumnCaptions)) DO BEGIN MatrixData[i] := CalcAmt(DimCodeBufferColumn3,ValueType,TRUE); ItemAnalysisMgt.NextRec( ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Steps, // Delete the following lines. ItemFilter1,LocationFilter1,PeriodType,DateFilter1, Dim1Filter1,Dim2Filter1,Dim3Filter1); // End of the lines. i := i + 1; END; END; OnAfterGetCurrRecord=BEGIN IF CurrForm.TotalQuantity.VISIBLE THEN Quantity := CalcAmt(DimCodeBufferColumn,2,FALSE); IF CurrForm.TotalInvtValue.VISIBLE THEN Amount := CalcAmt(DimCodeBufferColumn,1,FALSE); Steps := 1; // Delete the following line. ApplyColumnFilter; Which := '-'; ItemAnalysisMgt.FindRec( ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Which, // Delete the following lines. ItemFilter1,LocationFilter1,PeriodType,DateFilter1,PeriodInitialized,InternalDateFilter, Dim1Filter1,Dim2Filter1,Dim3Filter1); // End of the lines. i := 1; WHILE (i <= NoOfRecords) AND (i <= ARRAYLEN(MatrixColumnCaptions)) DO BEGIN MatrixData[i] := CalcAmt(DimCodeBufferColumn3,ValueType,TRUE); ItemAnalysisMgt.NextRec( ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Steps, // Delete the following lines. ItemFilter1,LocationFilter1,PeriodType,DateFilter1, Dim1Filter1,Dim2Filter1,Dim3Filter1); // End of the lines. i := i + 1; END; END; } ...Код за замяна 1
... OnAfterGetRecord=BEGIN IF CurrForm.TotalQuantity.VISIBLE THEN Quantity := CalcAmt(DimCodeBufferColumn,2,FALSE); IF CurrForm.TotalInvtValue.VISIBLE THEN Amount := CalcAmt(DimCodeBufferColumn,1,FALSE); Steps := 1; Which := '-'; ItemAnalysisMgt.FindRec( ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Which, // Add the following lines. ItemFilter,LocationFilter,PeriodType,DateFilter,PeriodInitialized,InternalDateFilter, Dim1Filter,Dim2Filter,Dim3Filter); // End of the lines. i := 1; WHILE (i <= NoOfRecords) AND (i <= ARRAYLEN(MatrixColumnCaptions)) DO BEGIN MatrixData[i] := CalcAmt(DimCodeBufferColumn3,ValueType,TRUE); ItemAnalysisMgt.NextRec( ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Steps, // Add the following lines. ItemFilter,LocationFilter,PeriodType,DateFilter, Dim1Filter,Dim2Filter,Dim3Filter); // End of the lines. i := i + 1; END; END; OnAfterGetCurrRecord=BEGIN IF CurrForm.TotalQuantity.VISIBLE THEN Quantity := CalcAmt(DimCodeBufferColumn,2,FALSE); IF CurrForm.TotalInvtValue.VISIBLE THEN Amount := CalcAmt(DimCodeBufferColumn,1,FALSE); Steps := 1; Which := '-'; ItemAnalysisMgt.FindRec( ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Which, // Add the following lines. ItemFilter,LocationFilter,PeriodType,DateFilter,PeriodInitialized,InternalDateFilter, Dim1Filter,Dim2Filter,Dim3Filter); // End of the lines. i := 1; WHILE (i <= NoOfRecords) AND (i <= ARRAYLEN(MatrixColumnCaptions)) DO BEGIN MatrixData[i] := CalcAmt(DimCodeBufferColumn3,ValueType,TRUE); ItemAnalysisMgt.NextRec( ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Steps, // Add the following lines. ItemFilter,LocationFilter,PeriodType,DateFilter, Dim1Filter,Dim2Filter,Dim3Filter); // End of the lines. i := i + 1; END; END; } ...Съществуващ код 2
... Text001@1032 : TextConst 'ENU=<Precision,'; Text002@1031 : TextConst 'ENU=><Standard Format,0>'; // Delete the following lines. LocationFilter1@1043 : Code[250]; ItemFilter1@1042 : Code[250]; Dim1Filter1@1041 : Code[250]; Dim2Filter1@1040 : Code[250]; Dim3Filter1@1039 : Code[250]; DateFilter1@1038 : Text[30]; FirstColumn@1044 : Text[50]; LastColumn@1045 : Text[50]; // End of the lines. ShowColumnName@1036 : Boolean; ...Код за замяна 2
... Text001@1032 : TextConst 'ENU=<Precision,'; Text002@1031 : TextConst 'ENU=><Standard Format,0>'; ShowColumnName@1036 : Boolean; ...Съществуващ код 3
...PROCEDURE LoadVariables@1(ItemAnalysisView1@1000 : Record 7152;ItemStatisticsBuffer1@1004 : Record 5821;CurrentItemAnalysisViewCode1@1005 : Code[10]; CurrentAnalysisArea1@1003 : 'Sales,Purchase,Inventory';LineDimOption1@1010 : 'Item,Period,Location,Dimension 1,Dimension 2,Dimension 3'; ColumnDimOption1@1002 : 'Item,Period,Location,Dimension 1,Dimension 2,Dimension 3';LineDimCode1@1016 : Text[30];ColumnDimCode1@1015 : Text[30]; PeriodType1@1007 : 'Day,Week,Month,Quarter,Year,Accounting Period';ValueType1@1009 : 'Sales Amount,Inventory Value,Sales Quantity'; RoundingFactor1@1011 : 'None,1,1000,1000000';ShowActualBudget1@1012 : 'Actual Amounts,Budgeted Amounts,Variance,Variance%,Index%'; MatrixColumnCaptions1@1001 : ARRAY [32] OF Text[1024];ShowOppositeSign1@1006 : Boolean;PeriodInitialized1@1008 : Boolean; // Delete the following line. FirstColumn1@1014 : Text[50];LastColumn1@1013 : Text[50]; ShowColumnName1@1017 : Boolean;NoOfRecordsLocal@1018 : Integer); BEGIN CLEAR(MatrixColumnCaptions); ItemAnalysisView.COPY(ItemAnalysisView1); CurrentItemAnalysisViewCode := CurrentItemAnalysisViewCode1; CurrentAnalysisArea := CurrentAnalysisArea1; LineDimOption := LineDimOption1; ColumnDimOption := ColumnDimOption1; LineDimCode := LineDimCode1; ColumnDimCode := ColumnDimCode1; PeriodType := PeriodType1; ShowOppositeSign := ShowOppositeSign1; COPYARRAY(MatrixColumnCaptions,MatrixColumnCaptions1,1); PeriodInitialized := PeriodInitialized1; PeriodType := PeriodType1; ValueType := ValueType1; RoundingFactor := RoundingFactor1; ShowActualBudget := ShowActualBudget1; // Delete the following lines. FirstColumn := FirstColumn1; LastColumn := LastColumn1; // End of the lines. ShowColumnName := ShowColumnName1; NoOfRecords := NoOfRecordsLocal; END;...Код за замяна 3
...PROCEDURE LoadVariables@1(ItemAnalysisView1@1000 : Record 7152;ItemStatisticsBuffer1@1004 : Record 5821;CurrentItemAnalysisViewCode1@1005 : Code[10]; CurrentAnalysisArea1@1003 : 'Sales,Purchase,Inventory';LineDimOption1@1010 : 'Item,Period,Location,Dimension 1,Dimension 2,Dimension 3'; ColumnDimOption1@1002 : 'Item,Period,Location,Dimension 1,Dimension 2,Dimension 3';LineDimCode1@1016 : Text[30];ColumnDimCode1@1015 : Text[30]; PeriodType1@1007 : 'Day,Week,Month,Quarter,Year,Accounting Period';ValueType1@1009 : 'Sales Amount,Inventory Value,Sales Quantity'; RoundingFactor1@1011 : 'None,1,1000,1000000';ShowActualBudget1@1012 : 'Actual Amounts,Budgeted Amounts,Variance,Variance%,Index%'; MatrixColumnCaptions1@1001 : ARRAY [32] OF Text[1024];ShowOppositeSign1@1006 : Boolean;PeriodInitialized1@1008 : Boolean; ShowColumnName1@1017 : Boolean;NoOfRecordsLocal@1018 : Integer); BEGIN CLEAR(MatrixColumnCaptions); ItemAnalysisView.COPY(ItemAnalysisView1); CurrentItemAnalysisViewCode := CurrentItemAnalysisViewCode1; CurrentAnalysisArea := CurrentAnalysisArea1; LineDimOption := LineDimOption1; ColumnDimOption := ColumnDimOption1; LineDimCode := LineDimCode1; ColumnDimCode := ColumnDimCode1; PeriodType := PeriodType1; ShowOppositeSign := ShowOppositeSign1; COPYARRAY(MatrixColumnCaptions,MatrixColumnCaptions1,1); PeriodInitialized := PeriodInitialized1; PeriodType := PeriodType1; ValueType := ValueType1; RoundingFactor := RoundingFactor1; ShowActualBudget := ShowActualBudget1; ShowColumnName := ShowColumnName1; NoOfRecords := NoOfRecordsLocal; END; ...Променете кода във функцията FieldDrillDown в хранилището. Анализ чрез формата на Dim Matrix (9225), както следва:
Съществуващ кодBEGIN CLEAR(DimCodeBufferColumn3); Which := '-'; ItemAnalysisMgt.FindRec( ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Which, // Delete the following lines. ItemFilter1,LocationFilter1,PeriodType,DateFilter1,PeriodInitialized,InternalDateFilter, Dim1Filter1,Dim2Filter1,Dim3Filter1); // End of the lines. Steps := Ordinal - 1; ItemAnalysisMgt.NextRec( ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Steps, // Delete the following lines. ItemFilter1,LocationFilter1,PeriodType,DateFilter1, Dim1Filter1,Dim2Filter1,Dim3Filter1); // End of the lines. ItemAnalysisMgt.DrillDown( CurrentAnalysisArea,ItemStatisticsBuffer,CurrentItemAnalysisViewCode, // Delete the following lines. ItemFilter1,LocationFilter1,DateFilter1, Dim1Filter1,Dim2Filter1,Dim3Filter1,BudgetFilter, // End of the lines. LineDimOption,Rec, ColumnDimOption,DimCodeBufferColumn3, TRUE,ValueType,ShowActualBudget); END;Код за подмяна
BEGIN CLEAR(DimCodeBufferColumn3); Which := '-'; ItemAnalysisMgt.FindRec( ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Which, // Add the following lines. ItemFilter,LocationFilter,PeriodType,DateFilter,PeriodInitialized,InternalDateFilter, Dim1Filter,Dim2Filter,Dim3Filter); // End of the lines. Steps := Ordinal - 1; ItemAnalysisMgt.NextRec( ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Steps, // Add the following lines. ItemFilter,LocationFilter,PeriodType,DateFilter, Dim1Filter,Dim2Filter,Dim3Filter); // End of the lines. ItemAnalysisMgt.DrillDown( CurrentAnalysisArea,ItemStatisticsBuffer,CurrentItemAnalysisViewCode, // Add the following lines. ItemFilter,LocationFilter,DateFilter, Dim1Filter,Dim2Filter,Dim3Filter,BudgetFilter, // End of the lines. LineDimOption,Rec, ColumnDimOption,DimCodeBufferColumn3, TRUE,ValueType,ShowActualBudget); END;Изтрийте функцията ApplyColumnFilter в библиотеката. Анализ чрез формата на Dim Matrix (9225), както следва:
// Delete the following lines. PROCEDURE ApplyColumnFilter@13(); BEGIN CLEAR(ItemFilter1); CLEAR(LocationFilter1); CLEAR(DateFilter1); CLEAR(Dim1Filter1); CLEAR(Dim2Filter1); CLEAR(Dim3Filter1); CASE ColumnDimOption OF ColumnDimOption::Item: BEGIN IF ItemFilter <> '' THEN ItemFilter1 := ItemFilter + '&'; ItemFilter1 := ItemFilter1 + FORMAT(FirstColumn) + '..' + FORMAT(LastColumn); LocationFilter1 := LocationFilter; DateFilter1 := DateFilter; Dim1Filter1 := Dim1Filter; Dim2Filter1 := Dim2Filter; Dim3Filter1 := Dim3Filter; END; ColumnDimOption::Location: BEGIN ItemFilter1 := ItemFilter; IF LocationFilter <> '' THEN LocationFilter1 := LocationFilter + '&'; LocationFilter1 := LocationFilter1 + FORMAT(FirstColumn) + '..' + FORMAT(LastColumn); DateFilter1 := DateFilter; Dim1Filter1 := Dim1Filter; Dim2Filter1 := Dim2Filter; Dim3Filter1 := Dim3Filter; END; ColumnDimOption::Period: BEGIN ItemFilter1 := ItemFilter; LocationFilter1 := LocationFilter; IF DateFilter <> '' THEN DateFilter1 := DateFilter ELSE DateFilter1 := FORMAT(FirstColumn) + '..' + FORMAT(LastColumn); Dim1Filter1 := Dim1Filter; Dim2Filter1 := Dim2Filter; Dim3Filter1 := Dim3Filter; END; ColumnDimOption::"Dimension 1": BEGIN ItemFilter1 := ItemFilter; LocationFilter1 := LocationFilter; DateFilter1 := DateFilter; IF Dim1Filter <> '' THEN Dim1Filter1 := Dim1Filter + '&'; Dim1Filter1 := Dim1Filter1 + FORMAT(FirstColumn) + '..' + FORMAT(LastColumn); Dim2Filter1 := Dim2Filter; Dim3Filter1 := Dim3Filter; END; ColumnDimOption::"Dimension 2": BEGIN ItemFilter1 := ItemFilter; LocationFilter1 := LocationFilter; DateFilter1 := DateFilter; Dim1Filter1 := Dim1Filter; IF Dim2Filter <> '' THEN Dim2Filter1 := Dim2Filter + '&'; Dim2Filter1 := Dim2Filter1 + FORMAT(FirstColumn) + '..' + FORMAT(LastColumn); Dim3Filter1 := Dim3Filter; END; ColumnDimOption::"Dimension 3": BEGIN ItemFilter1 := ItemFilter; LocationFilter1 := LocationFilter; DateFilter1 := DateFilter; Dim1Filter1 := Dim1Filter; Dim2Filter1 := Dim2Filter; IF Dim3Filter <> '' THEN Dim3Filter1 := Dim3Filter + '&'; Dim3Filter1 := Dim3Filter1 + FORMAT(FirstColumn) + '..' + FORMAT(LastColumn); END; END; END; BEGIN END. } } // End of the lines.Променете кода във формуляра "Анализ на продажбите по DIM" (9226) по следния начин:
Съществуващ код 1... Text001@1024 : TextConst 'ENU=<Precision,'; Text002@1023 : TextConst 'ENU=><Standard Format,0>'; Steps@1033 : Integer; // Delete the following lines. Dim1Filter1@1017 : Code[250]; Dim2Filter1@1012 : Code[250]; Dim3Filter1@1010 : Code[250]; ItemFilter1@1009 : Code[250]; LocationFilter1@1003 : Code[250]; DateFilter1@1013 : Text[30]; // End of the lines. DateFilter@1021 : Text[30]; Dim1Filter@1043 : Code[250]; Dim2Filter@1042 : Code[250]; Dim3Filter@1041 : Code[250]; ItemFilter@1040 : Code[250]; ...Код за замяна 1
... Text001@1024 : TextConst 'ENU=<Precision,'; Text002@1023 : TextConst 'ENU=><Standard Format,0>'; Steps@1033 : Integer; DateFilter@1021 : Text[30]; Dim1Filter@1043 : Code[250]; Dim2Filter@1042 : Code[250]; Dim3Filter@1041 : Code[250]; ItemFilter@1040 : Code[250]; ...Съществуващ код 2
...LOCAL PROCEDURE FillColumnsItem@9(VAR MatrixColumnCaptions@1009 : ARRAY [32] OF Text[30]) : Boolean; VAR Item@1013 : Record 27; i@1004 : Integer; BEGIN CLEAR(MatrixColumnCaptions); i := 1; // Delete the following line. Item.SETFILTER("No.",ItemFilter1);...Код за замяна 2
...LOCAL PROCEDURE FillColumnsItem@9(VAR MatrixColumnCaptions@1009 : ARRAY [32] OF Text[30]) : Boolean; VAR Item@1013 : Record 27; i@1004 : Integer; BEGIN CLEAR(MatrixColumnCaptions); i := 1; // Add the following line. Item.SETFILTER("No.",ItemFilter); ...Променете кода във функцията FillColumnsLocation във формуляра за анализ на продажбите по DIM (9226) по следния начин:
Съществуващ код...BEGIN CLEAR(MatrixColumnCaptions); i := 1; // Delete the following line. Location.SETFILTER(Code,LocationFilter1);...Код за подмяна
...BEGIN CLEAR(MatrixColumnCaptions); i := 1; // Add the following line. Location.SETFILTER(Code,LocationFilter);...Променете кода във функцията FillColumnsDim във формуляра за анализ на продажбите по DIM (9226) по следния начин:
Съществуващ код...BEGIN CLEAR(MatrixColumnCaptions); // Delete the following line. ApplyColumnFilter; DimVal.SETRANGE("Dimension Code",DimensionCode); DimVal.SETFILTER(Code,DimFilter); i := 1;...Код за подмяна
...BEGIN CLEAR(MatrixColumnCaptions); DimVal.SETRANGE("Dimension Code",DimensionCode); DimVal.SETFILTER(Code,DimFilter); i := 1;...Променете кода във функцията ShowMatrix във формуляра за анализ на продажбите по DIM (9226) както следва:
Съществуващ код...BEGIN // Delete the following line. ApplyColumnFilter; IF ColumnDimOption = ColumnDimOption::Period THEN BEGIN FirstColumn := FORMAT(FirstColumnDate); LastColumn := FORMAT(LastColumnDate); END; SalesAnalysisByDimMatrix.LoadVariables(ItemAnalysisView,ItemStatisticsBuffer, CurrentItemAnalysisViewCode,CurrentAnalysisArea, LineDimOption,ColumnDimOption,LineDimCode,ColumnDimCode,PeriodType,ValueType, RoundingFactor,ShowActualBudget,MatrixColumnCaptions, ShowOppositeSign,PeriodInitialized,FirstColumn,LastColumn,ShowColumnName,MATRIX_CurrSetLength); SalesAnalysisByDimMatrix.LoadFilters(ItemFilter,LocationFilter,Dim1Filter,Dim2Filter,Dim3Filter, DateFilter,BudgetFilter,InternalDateFilter); SalesAnalysisByDimMatrix.RUNMODAL; END;...Код за подмяна
... BEGIN IF ColumnDimOption = ColumnDimOption::Period THEN BEGIN FirstColumn := FORMAT(FirstColumnDate); LastColumn := FORMAT(LastColumnDate); END; SalesAnalysisByDimMatrix.LoadVariables(ItemAnalysisView,ItemStatisticsBuffer, CurrentItemAnalysisViewCode,CurrentAnalysisArea, LineDimOption,ColumnDimOption,LineDimCode,ColumnDimCode,PeriodType,ValueType, RoundingFactor,ShowActualBudget,MatrixColumnCaptions, ShowOppositeSign,PeriodInitialized,ShowColumnName,MATRIX_CurrSetLength); SalesAnalysisByDimMatrix.LoadFilters(ItemFilter,LocationFilter,Dim1Filter,Dim2Filter,Dim3Filter, DateFilter,BudgetFilter,InternalDateFilter); SalesAnalysisByDimMatrix.RUNMODAL; END; ...Изтрийте функцията ApplyColumnFilter във формуляра за анализ на продажбите по DIM (9226), както следва:
// Delete the following lines. PROCEDURE ApplyColumnFilter@13(); BEGIN CLEAR(ItemFilter1); CLEAR(LocationFilter1); CLEAR(DateFilter1); CLEAR(Dim1Filter1); CLEAR(Dim2Filter1); CLEAR(Dim3Filter1); CASE ColumnDimOption OF ColumnDimOption::Item: BEGIN IF ItemFilter <> '' THEN ItemFilter1 := ItemFilter + '&'; ItemFilter1 := ItemFilter1 + FORMAT(FirstColumn) + '..' + FORMAT(LastColumn); LocationFilter1 := LocationFilter; DateFilter1 := DateFilter; Dim1Filter1 := Dim1Filter; Dim2Filter1 := Dim2Filter; Dim3Filter1 := Dim3Filter; END; ColumnDimOption::Location: BEGIN ItemFilter1 := ItemFilter; IF LocationFilter <> '' THEN LocationFilter1 := LocationFilter + '&'; LocationFilter1 := LocationFilter1 + FORMAT(FirstColumn) + '..' + FORMAT(LastColumn); DateFilter1 := DateFilter; Dim1Filter1 := Dim1Filter; Dim2Filter1 := Dim2Filter; Dim3Filter1 := Dim3Filter; END; ColumnDimOption::Period: BEGIN ItemFilter1 := ItemFilter; LocationFilter1 := LocationFilter; DateFilter1 := DateFilter; Dim1Filter1 := Dim1Filter; Dim2Filter1 := Dim2Filter; Dim3Filter1 := Dim3Filter; END; ColumnDimOption::"Dimension 1": BEGIN ItemFilter1 := ItemFilter; LocationFilter1 := LocationFilter; DateFilter1 := DateFilter; IF Dim1Filter <> '' THEN Dim1Filter1 := Dim1Filter + '&'; Dim1Filter1 := Dim1Filter1 + FORMAT(FirstColumn) + '..' + FORMAT(LastColumn); Dim2Filter1 := Dim2Filter; Dim3Filter1 := Dim3Filter; END; ColumnDimOption::"Dimension 2": BEGIN ItemFilter1 := ItemFilter; LocationFilter1 := LocationFilter; DateFilter1 := DateFilter; Dim1Filter1 := Dim1Filter; IF Dim2Filter <> '' THEN Dim2Filter1 := Dim2Filter + '&'; Dim2Filter1 := Dim2Filter1 + FORMAT(FirstColumn) + '..' + FORMAT(LastColumn); Dim3Filter1 := Dim3Filter; END; ColumnDimOption::"Dimension 3": BEGIN ItemFilter1 := ItemFilter; LocationFilter1 := LocationFilter; DateFilter1 := DateFilter; Dim1Filter1 := Dim1Filter; Dim2Filter1 := Dim2Filter; IF Dim3Filter <> '' THEN Dim3Filter1 := Dim3Filter + '&'; Dim3Filter1 := Dim3Filter1 + FORMAT(FirstColumn) + '..' + FORMAT(LastColumn); END; END; END; // End of the lines.Променете кода във формуляра за анализ на продажбите по матрица на DIM (9227) по следния начин:
Съществуващ код 1… SourceTable=Table367; OnOpenForm=BEGIN // Delete the following line. ApplyColumnFilter; CurrForm.Field1.VISIBLE(1 <= NoOfRecords); CurrForm.Field2.VISIBLE(2 <= NoOfRecords); …Код за замяна 1
… SourceTable=Table367; OnOpenForm=BEGIN CurrForm.Field1.VISIBLE(1 <= NoOfRecords); CurrForm.Field2.VISIBLE(2 <= NoOfRecords); …Съществуващ код 2
… OnAfterGetRecord=BEGIN IF CurrForm.TotalQuantity.VISIBLE THEN Quantity := CalcAmt(DimCodeBufferColumn,2,FALSE); IF CurrForm.TotalInvtValue.VISIBLE THEN Amount := CalcAmt(DimCodeBufferColumn,0,FALSE); Steps := 1; // Delete the following line. ApplyColumnFilter; Which := '-'; ItemAnalysisMgt.FindRec( ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Which, // Delete the following lines. ItemFilter1,LocationFilter1,PeriodType,DateFilter1,PeriodInitialized,InternalDateFilter, Dim1Filter1,Dim2Filter1,Dim3Filter1); // End of the lines. i := 1; WHILE (i <= NoOfRecords) AND (i <= ARRAYLEN(MatrixColumnCaptions)) DO BEGIN MatrixData[i] := CalcAmt(DimCodeBufferColumn3,ValueType,TRUE); ItemAnalysisMgt.NextRec( ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Steps, // Delete the following lines. ItemFilter1,LocationFilter1,PeriodType,DateFilter1, ItemFilter,LocationFilter,PeriodType,DateFilter, Dim1Filter1,Dim2Filter1,Dim3Filter1); // End of the lines. Dim1Filter,Dim2Filter,Dim3Filter); i := i + 1; END; END; OnAfterGetCurrRecord=BEGIN IF CurrForm.TotalQuantity.VISIBLE THEN Quantity := CalcAmt(DimCodeBufferColumn,2,FALSE); IF CurrForm.TotalInvtValue.VISIBLE THEN Amount := CalcAmt(DimCodeBufferColumn,0,FALSE); Steps := 1; // Delete the following line. ApplyColumnFilter; Which := '-'; ItemAnalysisMgt.FindRec( ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Which, // Delete the following lines. ItemFilter1,LocationFilter1,PeriodType,DateFilter1,PeriodInitialized,InternalDateFilter, Dim1Filter1,Dim2Filter1,Dim3Filter1); // End of the lines. i := 1; WHILE (i <= NoOfRecords) AND (i <= ARRAYLEN(MatrixColumnCaptions)) DO BEGIN MatrixData[i] := CalcAmt(DimCodeBufferColumn3,ValueType,TRUE); ItemAnalysisMgt.NextRec( ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Steps, // Delete the following lines. ItemFilter1,LocationFilter1,PeriodType,DateFilter1, Dim1Filter1,Dim2Filter1,Dim3Filter1); // End of the lines. i := i + 1; END; END; } …Код за замяна 2
… OnAfterGetRecord=BEGIN IF CurrForm.TotalQuantity.VISIBLE THEN Quantity := CalcAmt(DimCodeBufferColumn,2,FALSE); IF CurrForm.TotalInvtValue.VISIBLE THEN Amount := CalcAmt(DimCodeBufferColumn,0,FALSE); Steps := 1; Which := '-'; ItemAnalysisMgt.FindRec( // Add the following lines. ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Which, ItemFilter,LocationFilter,PeriodType,DateFilter,PeriodInitialized,InternalDateFilter, Dim1Filter,Dim2Filter,Dim3Filter); // End of the lines. i := 1; WHILE (i <= NoOfRecords) AND (i <= ARRAYLEN(MatrixColumnCaptions)) DO BEGIN MatrixData[i] := CalcAmt(DimCodeBufferColumn3,ValueType,TRUE); ItemAnalysisMgt.NextRec( ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Steps, // Add the following lines. ItemFilter,LocationFilter,PeriodType,DateFilter, Dim1Filter,Dim2Filter,Dim3Filter); // End of the lines. i := i + 1; END; END; OnAfterGetCurrRecord=BEGIN IF CurrForm.TotalQuantity.VISIBLE THEN Quantity := CalcAmt(DimCodeBufferColumn,2,FALSE); IF CurrForm.TotalInvtValue.VISIBLE THEN Amount := CalcAmt(DimCodeBufferColumn,0,FALSE); Steps := 1; Which := '-'; ItemAnalysisMgt.FindRec( // Add the following lines. ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Which, ItemFilter,LocationFilter,PeriodType,DateFilter,PeriodInitialized,InternalDateFilter, Dim1Filter,Dim2Filter,Dim3Filter); // End of the lines. i := 1; WHILE (i <= NoOfRecords) AND (i <= ARRAYLEN(MatrixColumnCaptions)) DO BEGIN MatrixData[i] := CalcAmt(DimCodeBufferColumn3,ValueType,TRUE); ItemAnalysisMgt.NextRec( ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Steps, // Add the following lines. ItemFilter,LocationFilter,PeriodType,DateFilter, Dim1Filter,Dim2Filter,Dim3Filter); // End of the lines. i := i + 1; END; END; } …Съществуващ код 3
… Text002@1031 : TextConst 'ENU=><Standard Format,0>'; // Delete the following lines. LocationFilter1@1043 : Code[250]; ItemFilter1@1042 : Code[250]; Dim1Filter1@1041 : Code[250]; Dim2Filter1@1040 : Code[250]; Dim3Filter1@1039 : Code[250]; DateFilter1@1038 : Text[30]; FirstColumn@1044 : Text[50]; LastColumn@1045 : Text[50]; // End of the lines. ShowColumnName@1027 : Boolean; …Код за замяна 3
… Text002@1031 : TextConst 'ENU=><Standard Format,0>'; ShowColumnName@1027 : Boolean; …Съществуващ код 4
…PROCEDURE LoadVariables@1(ItemAnalysisView1@1000 : Record 7152;ItemStatisticsBuffer1@1004 : Record 5821;CurrentItemAnalysisViewCode1@1005 : Code[10]; CurrentAnalysisArea1@1003 : 'Sales,Purchase,Inventory';LineDimOption1@1010 : 'Item,Period,Location,Dimension 1,Dimension 2,Dimension 3'; ColumnDimOption1@1002 : 'Item,Period,Location,Dimension 1,Dimension 2,Dimension 3';LineDimCode1@1016 : Text[30];ColumnDimCode1@1015 : Text[30]; PeriodType1@1007 : 'Day,Week,Month,Quarter,Year,Accounting Period';ValueType1@1009 : 'Sales Amount,Inventory Value,Sales Quantity'; RoundingFactor1@1011 : 'None,1,1000,1000000';ShowActualBudget1@1012 : 'Actual Amounts,Budgeted Amounts,Variance,Variance%,Index%'; MatrixColumnCaptions1@1001 : ARRAY [32] OF Text[1024];ShowOppositeSign1@1006 : Boolean;PeriodInitialized1@1008 : Boolean; // Delete the following line. FirstColumn1@1014 : Text[50];LastColumn1@1013 : Text[50]; ShowColumnName1@1017 : Boolean;NoOfRecordsLocal@1018 : Integer); BEGIN CLEAR(MatrixColumnCaptions); ItemAnalysisView.COPY(ItemAnalysisView1); CurrentItemAnalysisViewCode := CurrentItemAnalysisViewCode1; CurrentAnalysisArea := CurrentAnalysisArea1; LineDimOption := LineDimOption1; ColumnDimOption := ColumnDimOption1; LineDimCode := LineDimCode1; ColumnDimCode := ColumnDimCode1; PeriodType := PeriodType1; ShowOppositeSign := ShowOppositeSign1; COPYARRAY(MatrixColumnCaptions,MatrixColumnCaptions1,1); PeriodInitialized := PeriodInitialized1; PeriodType := PeriodType1; ValueType := ValueType1; RoundingFactor := RoundingFactor1; ShowActualBudget := ShowActualBudget1; // Delete the following lines. FirstColumn := FirstColumn1; LastColumn := LastColumn1; // End of the lines. ShowColumnName := ShowColumnName1; NoOfRecords := NoOfRecordsLocal; END;…Код за замяна 4
…PROCEDURE LoadVariables@1(ItemAnalysisView1@1000 : Record 7152;ItemStatisticsBuffer1@1004 : Record 5821;CurrentItemAnalysisViewCode1@1005 : Code[10]; CurrentAnalysisArea1@1003 : 'Sales,Purchase,Inventory';LineDimOption1@1010 : 'Item,Period,Location,Dimension 1,Dimension 2,Dimension 3'; ColumnDimOption1@1002 : 'Item,Period,Location,Dimension 1,Dimension 2,Dimension 3';LineDimCode1@1016 : Text[30];ColumnDimCode1@1015 : Text[30]; PeriodType1@1007 : 'Day,Week,Month,Quarter,Year,Accounting Period';ValueType1@1009 : 'Sales Amount,Inventory Value,Sales Quantity'; RoundingFactor1@1011 : 'None,1,1000,1000000';ShowActualBudget1@1012 : 'Actual Amounts,Budgeted Amounts,Variance,Variance%,Index%'; MatrixColumnCaptions1@1001 : ARRAY [32] OF Text[1024];ShowOppositeSign1@1006 : Boolean;PeriodInitialized1@1008 : Boolean; ShowColumnName1@1017 : Boolean;NoOfRecordsLocal@1018 : Integer); BEGIN CLEAR(MatrixColumnCaptions); ItemAnalysisView.COPY(ItemAnalysisView1); CurrentItemAnalysisViewCode := CurrentItemAnalysisViewCode1; CurrentAnalysisArea := CurrentAnalysisArea1; LineDimOption := LineDimOption1; ColumnDimOption := ColumnDimOption1; LineDimCode := LineDimCode1; ColumnDimCode := ColumnDimCode1; PeriodType := PeriodType1; ShowOppositeSign := ShowOppositeSign1; COPYARRAY(MatrixColumnCaptions,MatrixColumnCaptions1,1); PeriodInitialized := PeriodInitialized1; PeriodType := PeriodType1; ValueType := ValueType1; RoundingFactor := RoundingFactor1; ShowActualBudget := ShowActualBudget1; ShowColumnName := ShowColumnName1; NoOfRecords := NoOfRecordsLocal; END;…Променете кода във функцията FieldDrillDown във формуляра за анализ на продажбите по матрица по DIM (9227) както следва:
Съществуващ кодBEGIN CLEAR(DimCodeBufferColumn3); Which := '-'; ItemAnalysisMgt.FindRec( ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Which, // Delete the following lines. ItemFilter1,LocationFilter1,PeriodType,DateFilter1,PeriodInitialized,InternalDateFilter, Dim1Filter1,Dim2Filter1,Dim3Filter1); // End of the lines. Steps := Ordinal - 1; ItemAnalysisMgt.NextRec( ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Steps, // Delete the following lines. ItemFilter1,LocationFilter1,PeriodType,DateFilter1, Dim1Filter1,Dim2Filter1,Dim3Filter1); // End of the lines. ItemAnalysisMgt.DrillDown( CurrentAnalysisArea,ItemStatisticsBuffer,CurrentItemAnalysisViewCode, // Delete the following lines. ItemFilter1,LocationFilter1,DateFilter1, Dim1Filter1,Dim2Filter1,Dim3Filter1,BudgetFilter, // End of the lines. LineDimOption,Rec, ColumnDimOption,DimCodeBufferColumn3, TRUE,ValueType,ShowActualBudget); END;Код за подмяна
BEGIN CLEAR(DimCodeBufferColumn3); Which := '-'; ItemAnalysisMgt.FindRec( ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Which, // Add the following lines. ItemFilter,LocationFilter,PeriodType,DateFilter,PeriodInitialized,InternalDateFilter, Dim1Filter,Dim2Filter,Dim3Filter); // End of the lines. Steps := Ordinal - 1; ItemAnalysisMgt.NextRec( ItemAnalysisView,ColumnDimOption,DimCodeBufferColumn3,Steps, // Add the following lines. ItemFilter,LocationFilter,PeriodType,DateFilter, Dim1Filter,Dim2Filter,Dim3Filter); // End of the lines. ItemAnalysisMgt.DrillDown( CurrentAnalysisArea,ItemStatisticsBuffer,CurrentItemAnalysisViewCode, // Add the following lines. ItemFilter,LocationFilter,DateFilter, Dim1Filter,Dim2Filter,Dim3Filter,BudgetFilter, // End of the lines. LineDimOption,Rec, ColumnDimOption,DimCodeBufferColumn3, TRUE,ValueType,ShowActualBudget); END;Изтрийте функцията ApplyColumnFilter във формуляра за анализ на продажбите по матрица (9227), както следва:
// Delete the following lines. BEGIN CLEAR(ItemFilter1); CLEAR(LocationFilter1); CLEAR(DateFilter1); CLEAR(Dim1Filter1); CLEAR(Dim2Filter1); CLEAR(Dim3Filter1); CASE ColumnDimOption OF ColumnDimOption::Item: BEGIN IF ItemFilter <> '' THEN ItemFilter1 := ItemFilter + '&'; ItemFilter1 := ItemFilter1 + FORMAT(FirstColumn) + '..' + FORMAT(LastColumn); LocationFilter1 := LocationFilter; DateFilter1 := DateFilter; Dim1Filter1 := Dim1Filter; Dim2Filter1 := Dim2Filter; Dim3Filter1 := Dim3Filter; END; ColumnDimOption::Location: BEGIN ItemFilter1 := ItemFilter; IF LocationFilter <> '' THEN LocationFilter1 := LocationFilter + '&'; LocationFilter1 := LocationFilter1 + FORMAT(FirstColumn) + '..' + FORMAT(LastColumn); DateFilter1 := DateFilter; Dim1Filter1 := Dim1Filter; Dim2Filter1 := Dim2Filter; Dim3Filter1 := Dim3Filter; END; ColumnDimOption::Period: BEGIN ItemFilter1 := ItemFilter; LocationFilter1 := LocationFilter; IF DateFilter <> '' THEN DateFilter1 := DateFilter ELSE DateFilter1 := FORMAT(FirstColumn) + '..' + FORMAT(LastColumn); Dim1Filter1 := Dim1Filter; Dim2Filter1 := Dim2Filter; Dim3Filter1 := Dim3Filter; END; ColumnDimOption::"Dimension 1": BEGIN ItemFilter1 := ItemFilter; LocationFilter1 := LocationFilter; DateFilter1 := DateFilter; IF Dim1Filter <> '' THEN Dim1Filter1 := Dim1Filter + '&'; Dim1Filter1 := Dim1Filter1 + FORMAT(FirstColumn) + '..' + FORMAT(LastColumn); Dim2Filter1 := Dim2Filter; Dim3Filter1 := Dim3Filter; END; ColumnDimOption::"Dimension 2": BEGIN ItemFilter1 := ItemFilter; LocationFilter1 := LocationFilter; DateFilter1 := DateFilter; Dim1Filter1 := Dim1Filter; IF Dim2Filter <> '' THEN Dim2Filter1 := Dim2Filter + '&'; Dim2Filter1 := Dim2Filter1 + FORMAT(FirstColumn) + '..' + FORMAT(LastColumn); Dim3Filter1 := Dim3Filter; END; ColumnDimOption::"Dimension 3": BEGIN ItemFilter1 := ItemFilter; LocationFilter1 := LocationFilter; DateFilter1 := DateFilter; Dim1Filter1 := Dim1Filter; Dim2Filter1 := Dim2Filter; IF Dim3Filter <> '' THEN Dim3Filter1 := Dim3Filter + '&'; Dim3Filter1 := Dim3Filter1 + FORMAT(FirstColumn) + '..' + FORMAT(LastColumn); END; END; END; BEGIN END. } } // End of the lines.
Предварителни изисквания
Трябва да имате инсталиран Microsoft Dynamics NAV 2009 Service Pack 1, за да приложите тази гореща корекция.
Информация за премахване
Не можете да премахнете тази гореща корекция.
Състояние
Microsoft потвърждава, че това е проблем в продуктите на Microsoft, които са изброени в раздела „Важи за“.
Забележка: Това е статия "FAST PUBLISH", създадена директно от организацията за поддръжка на Microsoft. Информацията, съдържаща се тук, е предоставена както е в отговор на възникващи проблеми. В резултат на бързината на предоставянето им, материалите могат да включват печатни грешки и могат да бъдат коригирани по всяко време без предизвестие. Вижте условията на използване за други съображения.