IPrxDataIslandHeaderCommon.IsParentDuplicated

Fore Syntax

IsParentDuplicated: Boolean;

Fore.NET Syntax

IsParentDuplicated: boolean;

Description

The IsParentDuplicated property determines whether the level elements are repeated for rows or columns.

Comments

Available values:

Fore Example

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.

Fore.NET Example

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:

IPrxDataIslandHeaderCommon