ElementStyle: IPrxDataElementStyle;
Свойство ElementStyle определяет оформление для элемента произвольного размещения.
В рассматриваемом примере предполагается существование объекта Report типа IPrxReport.
Sub UserProc;
Var
Report: IPrxReport;
DI: IPrxDataIsland;
Prop: IPrxDataIslandProperties;
Dim : IDimInstance;
DimProp : IPrxDataIslandDimension;
RN : IPrxDataIslandDimensionLayoutNodes;
n : IPrxDataIslandDimensionLayoutNode;
Cond : ITabFormatCondition;
ValFormat : ITabFormatValues;
Begin
DI := Report.DataIslands.Item(0).Edit;
Prop := DI.Properties;
Dim := DI.Slice.LeftHeader.Item(0).Dimension;
DimProp := Prop.Dimension(Dim.Dimension);
DimProp.CustomLayout := True;
DimProp.Layout.PreserveDimensionElementsOrder := True; // порядок элементов как в измерении
RN := DimProp.Layout.RootNodes;
RN.Clear;
n := RN.Add;
n.DimElement(Dim) := 6;
n.Include := TriState.OnOption;
n.ElementStyle.Header.BackgroundColor := New GxColor.CreateRGB(50,60,210);
n.ElementStyle.Data.BackgroundColor := New GxColor.CreateRGB(150,160,210);
n := RN.Add;
n.DimElement(Dim) := 4;
n.Include := TriState.OnOption;
n.ElementStyle.Header.BackgroundColor := New GxColor.CreateRGB(200,100,100);
n.ElementStyle.Data.BackgroundColor := New GxColor.CreateRGB(220,150,150);
n := RN.Add;
n.DimElement(Dim) := 0;
n.Include := TriState.OnOption;
n.ElementStyle.Header.BackgroundColor := New GxColor.CreateRGB(0,100,100);
Cond := n.ElementStyle.FormatConditions.Add;
Cond.Type := TabConditionType.Values;
ValFormat := Cond.Details As ITabFormatValues;
//двухцветный градиент для оформления ячеек с данными
ValFormat.Style := TabFormatValuesStyle.TwoColorScale;
DI.Save;
End Sub UserProc;
После выполнения примера будет создан произвольный заголовок из трех элементов. Порядок отображения элементов в области данных будет соответствовать иерархии измерения. Для элементов произвольного размещения задано оформление для данных и для заголовка. Для ячеек с данными последнего добавленного элемента настроено условное форматирование.
См. также: