IPrxDataIslandDimensionLayoutFormulaParser.Node

Syntax

Node: IPrxDataIslandDimensionLayoutNode;

Description

The Node property determines the heading element, to which a formula belongs.

Example

Executing the example requires a form, a button on this form and named Button1, the UiReport component with the UiReport1 identifier used as a data source for the ReportBox component. The repository should contain the OBJ_REPORT regular report containing a data area.

Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);

Var

MB: IMetabase;

ReportObj: IMetabaseObject;

Report: IPrxReport;

DIs: IPrxDataIslands;

DI: IPrxDataIsland;

Prop: IPrxDataIslandProperties;

Dim: IDimInstance;

DimProp: IPrxDataIslandDimension;

Layout: IPrxDataIslandDimensionLayout;

RN: IPrxDataIslandDimensionLayoutNodes;

Element: IPrxDataIslandDimensionLayoutNode;

FormulaParser: IPrxDataIslandDimensionLayoutFormulaParser;

Term: String;

Begin

MB := MetabaseClass.Active;

ReportObj := MB.ItemById("OBJ_REPORT").Edit;

Report := ReportObj As IPrxReport;

DIs := Report.DataIslands;

DI := DIs.Item(0).Edit;

Prop := DI.Properties;

Dim := DI.Slice.LeftHeader.Item(0).Dimension;

DimProp := Prop.Dimension(Dim.Dimension);

DimProp.CustomLayout := True;

Layout := DimProp.Layout;

Layout.FitToSelection := False;

RN := Layout.RootNodes;

RN.Clear;

Element := RN.Add;

Element.DimElement(Dim) := 1;

Element.Caption := "Element";

FormulaParser := Layout.CreateFormulaParser;

Term := FormulaParser.AddTerm;

FormulaParser.TermType(Term) := LayoutFormulaTermType.Value;

Element := RN.Add;

Element.DimElement(Dim) := 1;

Element.Caption := "Doubled element";

FormulaParser.Node := Element;

FormulaParser.Parse(Term + " * 2");

DI.Save;

Report.Recalc;

ReportObj.Save;

UiReport1.Active := False;

UiReport1.Instance := ReportObj;

End Sub Button1OnClick;

After executing the example two heading elements are created in the first data area of the regular report. The following formula is set for values of the second element: doubled value of the first element.

See also:

IPrxDataIslandDimensionLayoutFormulaParser