Change the code in the Purch. Analysis by Dim Matrix form (9225) as follows:
Existing code 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;
}
...
Replacement code 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;
}
...
Existing code 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;
...
Replacement code 2...
Text001@1032 : TextConst 'ENU=<Precision,';
Text002@1031 : TextConst 'ENU=><Standard Format,0>';
ShowColumnName@1036 : Boolean;
...
Existing code 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;...
Replacement code 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;
...
Change the code in the FieldDrillDown function in the Purch. Analysis by Dim Matrix form (9225) as follow:
Existing codeBEGIN
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;
Replacement codeBEGIN
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;
Change the code in the ShowMatrix function in the Sales Analysis by Dim form (9226) as follow:
Existing code...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;...
Replacement code...
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;
...
Change the code in the Sales Analysis by Dim Matrix form (9227) as follows:
Existing code 1…
SourceTable=Table367;
OnOpenForm=BEGIN
// Delete the following line.
ApplyColumnFilter;
CurrForm.Field1.VISIBLE(1 <= NoOfRecords);
CurrForm.Field2.VISIBLE(2 <= NoOfRecords);
…
Replacement code 1…
SourceTable=Table367;
OnOpenForm=BEGIN
CurrForm.Field1.VISIBLE(1 <= NoOfRecords);
CurrForm.Field2.VISIBLE(2 <= NoOfRecords);
…
Existing code 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;
}
…
Replacement code 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;
}
…
Existing code 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;
…
Replacement code 3…
Text002@1031 : TextConst 'ENU=><Standard Format,0>';
ShowColumnName@1027 : Boolean;
…
Existing code 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;…
Replacement code 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;…
Change the code in the FieldDrillDown function in the Sales Analysis by Dim Matrix form (9227) as follow:
Existing codeBEGIN
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;
Replacement codeBEGIN
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;