IsParentDuplicated: Boolean;
IsParentDuplicated: boolean;
The IsParentDuplicated property determines whether the level elements are repeated for rows or columns.
Available values:
True. Level elements are repeated for rows or columns.
False. Level elements are not repeated for rows or columns.
Executing the example requires a form that contains the Button component with the Button1 identifier and the UiReport component with the UiReport1 identifier. A regular report with a configured hierarchy is used as a data source. The example is a handler of the OnClick event for the Button1 component.
Add a link to the Dimensions system assembly.
Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
Var
Rep: IPrxReport;
DIs: IPrxDataIslands;
DI: IPrxDataIsland;
DimModel: IDimensionModel;
DIProp: IPrxDataIslandProperties;
Top: IPrxDataIslandDimension;
Level: IPrxDataIslandLevel;
Begin
Rep := UiReport1.Report.Edit;
DIs := Rep.DataIslands;
DI := DIs.Item(0).Edit;
DimModel := DI.Slice.TopHeader.Item(0).Dimension.Dimension;
DIProp := DI.Properties;
Top := DIProp.Dimension(DimModel);
Level := Top.Level(DimModel.Levels.Item(0));
If Not Level.IsParentDuplicated Then
Level.DuplicateParent := TriState.OnOption;
End If;
Debug.Write("Level element repetition: ");
Select Case Level.DuplicateParent
Case TriState.OnOption:
Debug.WriteLine("is set");
Case TriState.OffOption:
Debug.WriteLine("is not set");
End Select;
DI.Save();
Rep.Save();
End Sub Button1OnClick;
After executing the example the console window displays result of the checking if level elements are repeated for rows or columns, for columns of the first data area of regular report.
If the option is enabled, it will be disabled for the set area columns.
The requirements and result of the Fore.NET example execution match with those in the Fore example. Use Fore.NET analogs instead of Fore components.
Add links to the Dimensions, ForeSystem and Report system assemblies.
Imports Prognoz.Platform.Interop.Report;
Imports Prognoz.Platform.Interop.Dimensions;
Imports Prognoz.Platform.Interop.ForeSystem;
…
Private Sub button1_Click(sender: System.Object; e: System.EventArgs);
Var
Rep: IPrxReport;
DIs: IPrxDataIslands;
DI: IPrxDataIsland;
DimModel: IDimensionModel;
DIProp: IPrxDataIslandProperties;
Top: IPrxDataIslandDimension;
Level: IPrxDataIslandLevel;
Begin
Rep := uiReportNet1.ReportUi.Report.Edit();
DIs := Rep.DataIslands;
DI := DIs.Item[0].Edit();
DimModel := DI.Slice.TopHeader.Item[0].Dimension.Dimension;
DIProp := DI.Properties;
Top := DIProp.Dimension[DimModel];
Level := Top.Level[DimModel.Levels.Item[0]];
If Not Level.IsParentDuplicated Then
Level.DuplicateParent := TriState.tsOnOption;
End If;
System.Diagnostics.Debug.Write("Level element repetition: ");
Select Case Level.DuplicateParent
Case TriState.tsOnOption:
System.Diagnostics.Debug.WriteLine("is set");
Case TriState.tsOffOption:
System.Diagnostics.Debug.WriteLine("is not set");
End Select;
DI.Save();
Rep.Save();
End Sub;
See also: