AddCalculatedElement(Name: String; RelationElement: Integer; Relation: DimRelation): Integer;
Name. Наименование нового вычисляемого элемента.
RelationElement. Элемент, относительно которого, будет позиционироваться вычисляемый элемент.
Relation. Позиция вставки вычисляемого элемента относительно элемента RelationElement.
Метод AddCalculatedElement осуществляет создание нового вычисляемого элемента для данного измерения.
Для выполнения примера предполагается наличие формы, расположенной на ней кнопки с наименованием «Button1», компонента TabSheetBox и компонента UiErAnalyzer с наименованием «UiErAnalyzer1», являющегося источником данных для TabSheetBox.
Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
Var
OLAP: IEaxAnalyzer;
Pivot: IPivot;
Dim: IDimInstance;
Calcs: IPivotEvaluatorDimCalculates;
Calc: IPivotEvaluatorDimCalculatesItem;
Sel: IDimSelection;
Elements: IDimElements;
Element1, Element2: String;
i: Integer;
Begin
OLAP := UiErAnalyzer1.ErAnalyzer;
Pivot := OLAP.Pivot;
Dim := Pivot.TopHeader.Dim(0);
Calcs := Pivot.Evaluator.DimCalculates;
Calc := Calcs.FindByDimKey(Dim.Key);
Sel := Pivot.Selection.FindByKey(Dim.Key);
Elements := Calc.Dim.Elements;
Element1 := Elements.Id(Sel.Element(0));
Element2 := Elements.Id(Sel.Element(1));
i := Calc.AddCalculatedElement(Element1 + "+" + Element2, Sel.Element(1), DimRelation.Next);
Calc.Expression(i).AsString := "@" + Element1 + "+ @" + Element2;
End Sub Button1OnClick;
При нажатии на кнопку для первого измерения, расположенного по столбцам, будет создан вычисляемый элемент, осуществляющий суммирование первого и второго элемента измерения. Вычисление осуществляется для элементов, присутствующих в отметке измерения.
Исходные данные:

Таблица с вычисляемым элементом:

См. также: