OLAP/Pivot

TbtkOLAPDimension

class TbtkOLAPDimension

Размерность OLAP-структуры

Order Integer

Номера, по возрастанию которых определяет порядок следования размерностей в своей области (Area) (Read-Write)

Return type:

Integer

Пример использования
<pascal>
  Selection.OLAP.DimensionByName('TestDimension').Order := 4;
</pascal>
Name String

Имя размерности (Read-Only)

Return type:

String

Пример использования
<pascal>
  str := '';

  for i := 0 to Selection.OLAP.DimensionCount - 1 do
    str := str + Selection.OLAP.Dimensions[i].Name + #13#10;

  ShowMessage(str);
</pascal>
ActiveHierarchy TbtkOLAPHierarchy

Активная иерархия размерности (Read-Only)

Return type:

TbtkOLAPHierarchy

Пример использования
<pascal>
  Selection.OLAP.DimensionByName('TestDimension').ActiveHierarchy.AddLevel('TestLevel');
</pascal>
AreaType TbtkOLAPAreaType

Область которой принадлежат все поля размерности (Read-Write)

Return type:

TbtkOLAPAreaType

Пример использования
<pascal>
  Selection.OLAP.AddDimension('TestDimension').AreaType := atColumn;
</pascal>
HierarchyCount Integer

Количество иерархий

Return type:

Integer

Пример использования
<pascal>
  str := '';
  dimension := Selection.OLAP.DimensionByName('TestDimension');

  for i := 0 to dimension.HierarchyCount - 1 do
    str := str + dimension.Hierarchies[i].Name + #13#10;

  ShowMessage(str);
</pascal>
Hierarchies TbtkOLAPHierarchy

Возвращает иерархию по индексу

Return type:

TbtkOLAPHierarchy

Пример использования
<pascal>
  str := '';
  dimension := Selection.OLAP.DimensionByName('TestDimension');

  for i := 0 to dimension.HierarchyCount - 1 do
    str := str + dimension.Hierarchies[i].Name + #13#10;

  ShowMessage(str);
</pascal>
Free()

Удаляет размерность из OLAP-структуры

Пример использования
<pascal>
  Selection.OLAP.DimensionByName('TestDimension').Free;
</pascal>
DeleteHierarchy(HierarchyName: String; HierarchyIndex: Integer)

Удаляет иерархию по имени или индексу

Parameters:
  • HierarchyName (String) – Имя иерархии.

  • HierarchyIndex (Integer) – Индекс иерархии.

Пример использования
<pascal>
  Selection.OLAP.Dimensions[0].DeleteHierarchy(1);
  Selection.OLAP.Dimensions[0].DeleteHierarchy('TestHierarchy');
</pascal>
HierarchyByName(HierarchyName: String) TbtkOLAPHierarchy

Находит иерархию с указанным именем

Parameters:

HierarchyName (String) – Имя иерархии.

Return type:

TbtkOLAPHierarchy

Пример использования
<pascal>
  hierarchy := Selection.OLAP.Dimensions[0].HierarchyByName('TestHierarchy');
</pascal>
AddHierarchy(HierarchyName: String) TbtkOLAPHierarchy

Добавляет иерархию с заданным именем.

Parameters:

HierarchyName (String) – Добавляет иерархию с заданным именем.

Return type:

TbtkOLAPHierarchy

Пример использования
<pascal>
  Selection.OLAP.AddDimension('TestDimension').AddHierarchy('TestHierarchy');
</pascal>

TbtkScriptOLAPObject

class TbtkScriptOLAPObject

Объект реализует в себе две сущности:

  1. Обёртка для интерфейса Фрэйма Олап-куба, предоставляет доступ к олап функционалу.

  2. OLAP-структура, предоставляющая обобщенный интерфейс управления контролами OLAP-представления данных (например, PivotGrid).

Measures TbtkOLAPMeasureItem

Поле данных по заданному индексу

Return type:

TbtkOLAPMeasureItem

Пример использования
<pascal>
  str := '';

  for i := 0 to Selection.OLAP.MeasureCount - 1 do
    str := str + Selection.OLAP.Measures[i].Name + #13#10;

  ShowMessage(str);
</pascal>
MeasureCount Integer

Количество полей данных

Return type:

Integer

Пример использования
<pascal>
  str := '';

  for i := 0 to Selection.OLAP.MeasureCount - 1 do
    str := str + Selection.OLAP.Measures[i].Name + #13#10;

  ShowMessage(str);
</pascal>
Dimensions TbtkOLAPDimension

Размерность по заданному индексу

Return type:

TbtkOLAPDimension

Пример использования
<pascal>
  str := '';

  for i := 0 to Selection.OLAP.DimensionCount - 1 do
    str := str + Selection.OLAP.Dimensions[i].Name + #13#10;

  ShowMessage(str);
</pascal>
DimensionCount Integer

Количество размерностей OLAP-структуры

Return type:

Integer

Пример использования
<pascal>
  str := '';

  for i := 0 to Selection.OLAP.DimensionCount - 1 do
    str := str + Selection.OLAP.Dimensions[i].Name + #13#10;

  ShowMessage(str);
</pascal>
DeleteMeasure(MeasureName: String; MeasureIndex: Integer)

Удаляет поле данных по указанному имени или порядковому номеру

Parameters:
  • MeasureName (String) – Имя поля данных.

  • MeasureIndex (Integer) – Индекс поля данных.

Пример использования
<pascal>
  Selection.OLAP.DeleteMeasure('NewMeasure');
  Selection.OLAP.DeleteMeasure(0);
</pascal>
MeasureByName(MeasureName: String) TbtkOLAPMeasureItem

Ищет поле данных с указанным именем

Parameters:

MeasureName (String) – Имя поля данных.

Return type:

TbtkOLAPMeasureItem

Пример использования
<pascal>
  measure := Selection.OLAP.MeasureByName('NewMeasure');
</pascal>
AddMeasure(MeasureName: String; MeasureAggregator: TbtkOLAPSummaryType) TbtkOLAPMeasureItem

Добавляет в OLAP-структуру поле данных с возможностью одновременного задания способа вычисления итогов (Aggregator).

Parameters:
  • MeasureName (String) – Имя поля данных.

  • MeasureAggregator (TbtkOLAPSummaryType) – Способы вычисления итогов.

Return type:

TbtkOLAPMeasureItem

Пример использования
<pascal>
  Selection.OLAP.AddMeasure('NewMeasure');
  Selection.OLAP.AddMeasure('NewMeasure', ostCount);
</pascal>
DeleteDimension(DimensionName: String; DimensionIndex: Integer)

Удаляет размерность с указанным именем или порядковым номером.

Parameters:
  • DimensionName (String) – Имя размерности.

  • DimensionIndex (Integer) – Индекс размерности.

Пример использования
<pascal>
  Selection.OLAP.DeleteDimension('TestDimension');
  Selection.OLAP.DeleteDimension(0);
 </pascal>
DimensionByName(DimensionName: String) TbtkOLAPDimension

Ищет размерность с заданным именем.

Parameters:

DimensionName (String) – Имя размерности

Return type:

TbtkOLAPDimension

Пример использования
<pascal>
  dim := Selection.OLAP.DimensionByName('TestDimension');
</pascal>
AddDimension(DimensionName: String) TbtkOLAPDimension

Добавляет размерность с указанным именем в OLAP-структуру

Parameters:

DimensionName (String) – Уникальное непустое имя создаваемой размерности

Return type:

TbtkOLAPDimension

Пример использования
<pascal>
  Selection.OLAP.AddDimension('TestDimension');
</pascal>
ClearOLAPStructure()

Очищает все настройки OLAP-структуры

Пример использования
<pascal>
  Selection.OLAP.ClearOLAPStructure;
</pascal>
DoUpdate()

Применяет настройки OLAP-структуры к физическому OLAP-контролу.

Пример использования
<pascal>
  Selection.OLAP.DoUpdate;
</pascal>
SupportedGeneralizeOLAPStructure() Boolean

Возвращает, поддерживает ли OLAP-контрол возможность управления OLAP-структурой.

Return type:

Boolean

Пример использования
<pascal>
  if Selection.OLAP.SupportedGeneralizeOLAPStructure then
  begin
    ...
  end;
</pascal>
GetDimensionValueList() TStringList

Возвращает список с именами и заголовками размерностей.

Return type:

TStringList

Пример использования
<pascal>
  dimValueList := Selection.OLAP.GetDimensionValueList;
  names := '';
  captions := '';

  for i := 0 to dimValueList.Count - 1 do
  begin
    names := names + dimValueList.Names[i] + #13#10;
    values := values + dimValueList.Values[dimValueList.Names[i]] + #13#10;
  end;

  ShowMessage(str);
</pascal>

Warning

Не реализовано

ShowDimensionMapEditor()

Отображает редактор карты измерений

Warning

Не реализовано

SaveFrameSettings(ID: Variant) Boolean

Сохраняет настройки по указанному идентификатору.

Parameters:

ID (Variant) – Идентификатор настройки

Return type:

Boolean

Returns:

True

Возвращается в случае успешного сохранения.

False

Возвращается если сохранить не удалось, в том числе если в качестве ID передан Null.

Warning

Не реализовано

LoadFrameSettings(ID: Variant) Boolean

Загружает настройки по указанному идентификатору.

Parameters:

ID (Variant) – Идентификатор настройки

Return type:

Boolean

Returns:

True

Возвращается в случае успешной загрузки.

False

Возвращается если загрузить не удалось, в том числе если в качестве ID передан Null.

Warning

Не реализовано

OpenAllDimensions()

Разворачивает все измерения.

OpenDimension(AtrName: String)

Разворачивает измерение соответствующее указанному имени атрибута. Все измерения с более низким уровнем вложенности также разворачиваются.

Parameters:

AtrName (String) – Имя атрибута

OpenRowDimension(Level: Integer)

Разворачивает измерение в области строк с указанным уровнем вложенности. Все измерения с более низким уровнем вложенности также разворачиваются.

Parameters:

Level (Integer) – Уровень вложенности разворачиваемого измерения.

OpenColumnDimension(Level: Integer)

Разворачивает измерение в области колонок с указанным уровнем вложенности. Все измерения с более низким уровнем вложенности также разворачиваются.

Parameters:

Level (Integer) – Уровень вложенности разворачиваемого измерения.

TbtkOLAPMeasureItem

class TbtkOLAPMeasureItem

Поле данных OLAP-структуры

Caption String

Заголовок, визуально отображаемый в OLAP-контроле. Если пустой, используется значение по умолчанию (соответствующее заголовку атрибута выборки)

Return type:

String

Пример использования
<pascal>
  str := '';

  for i := 0 to Selection.OLAP.MeasureCount - 1 do
    str := str + Selection.OLAP.Measures[i].Caption + #13#10;

  ShowMessage(str);
</pascal>
Order Integer

Номера, по возрастанию которых определяет порядок следования полей данных

Return type:

Integer

Пример использования
<pascal>
  measure.Order := 1;
</pascal>
Name String

Уникальное среди полей данных непустое имя

Return type:

String

Пример использования
<pascal>
  str := '';

  for i := 0 to Selection.OLAP.MeasureCount - 1 do
    str := str + Selection.OLAP.Measures[i].Name + #13#10;

  ShowMessage(str);
</pascal>
SummaryType TbtkOLAPSummaryType

Способ вычисления итогов.

Return type:

TbtkOLAPSummaryType

Пример использования
<pascal>
  measure.SummaryType := ostAverage;
</pascal>
Free()

Удаляет поле данных из OLAP-структуры

TbtkOLAPHierarchy

class TbtkOLAPHierarchy

Иерархия OLAP-структуры

Name String

Уникальное в пределах размерности имя

Return type:

String

Пример использования
<pascal>
  str := '';
  dimension := Selection.OLAP.DimensionByName('TestDimension');

  for i := 0 to dimension.HierarchyCount - 1 do
    str := str + dimension.Hierarchies[i].Name + #13#10;

  ShowMessage(str);
</pascal>
Order Integer

Номера, по возрастанию которых определяет порядок следования иерархий в своей размерности. Фактически не нужен - вся работа идет только с активной иерархией

Return type:

Integer

Levels TbtkOLAPLevel

Уровень по идексу

Return type:

TbtkOLAPLevel

Пример использования
<pascal>
  str := '';
  hierarchy := Selection.OLAP.DimensionByName('TestDimension').HierarchyByName('TestHierarchy');

  for i := 0 to hierarchy.LevelCount - 1 do
    str := str + hierarchy.Levels[i].Name + #13#10;

  ShowMessage(str);
</pascal>
LevelCount Integer

Количество уровней иерархии

Return type:

Integer

Пример использования
<pascal>
  str := '';
  hierarchy := Selection.OLAP.DimensionByName('TestDimension').HierarchyByName('TestHierarchy');

  for i := 0 to hierarchy.LevelCount - 1 do
    str := str + hierarchy.Levels[i].Name + #13#10;

  ShowMessage(str);
</pascal>
Activate()

Делает иерархию активной в своей размерности

Пример использования
<pascal>
  Selection.OLAP.DimensionByName('TestDimension').HierarchyByName('TestHierarchy').Activate;
</pascal>
Free()

Удаляет иерархию из размерности

Пример использования
<pascal>
  Selection.OLAP.DimensionByName('TestDimension').HierarchyByName('TestHierarchy').Free;
</pascal>
DeleteLevel(LevelName: String; LevelIndex: Integer)

Удаляет уровень по имени или порядковому номеру

Parameters:
  • LevelName (String) – Имя уровня.

  • LevelIndex (Integer) – Индекс уровня.

Пример использования
<pascal>
  hierarchy.DeleteLevel('TestLevel');
  hierarchy.DeleteLevel(1);
</pascal>
LevelByName(LevelName: String) TbtkOLAPLevel

Возвращает уровень по имени

Parameters:

LevelName (String) – Имя уровня.

Return type:

TbtkOLAPLevel

Пример использования
<pascal>
  level := hierarchy.LevelByName('TestLevel');
</pascal>
AddLevels(InputArgs: Array)

Добавляет произвольное количество дочерних уровней с возможностью одновременного указания их дочерних полей (Members)

Parameters:

InputArgs (Array) – Массив аргументов. Включает в себя имена добавляемых уровней и массивы их дочерних полей.

Пример использования
<pascal>
  Selection.OLAP.AddDimension('TestDimension').AddHierarchy('TestHierarchy').AddLevels(['Level1',
  ['Member1', 'Member2'], 'Level2', 'Level3', ['Member3', 'Member4']]);
</pascal>
AddLevel(LevelName, KeyMemberName: String) TbtkOLAPLevel

Добавляет уровень OLAP-структуры с заданным именем и именем ключевого поля.

Parameters:
  • LevelName (String) – Уникальное в пределах иерархии непустое имя

  • KeyMemberName (String) – Имя ключевого поля.

Return type:

TbtkOLAPLevel

Пример использования
<pascal>
  Selection.OLAP.AddDimension('TestDimension').AddHierarchy('TestHierarchy').AddLevel('TestLevel');
</pascal>

TbtkOLAPLevel

class TbtkOLAPLevel

Уровень OLAP-структуры. В реализации Pivot-грида верхний уровень (неподсредственно под иерархией) в области строк визуально представляет собой отдельную строку - последующие уровни идут на своих строках.

KeyMember TbtkOLAPMember

Ключевое поле

Return type:

TbtkOLAPMember

Пример использования
<pascal>
  level := Selection.OLAP.DimensionByName('TestDimension').HierarchyByName('TestHierarchy').AddLevel('TestLevel');
  member := level.AddMember('TestMember');
  level.KeyMember := member;
</pascal>
Name String

Уникальное в пределах иерархии имя уровня

Return type:

String

Пример использования
<pascal>
  str := '';
  hierarchy := Selection.OLAP.DimensionByName('TestDimension').HierarchyByName('TestHierarchy');

  for i := 0 to hierarchy.LevelCount - 1 do
    str := str + hierarchy.Levels[i].Name + #13#10;

  ShowMessage(str);
</pascal>
MemberCount Integer

Количество полей уровня

Return type:

Integer

Пример использования
<pascal>
  str := '';
  level := Selection.OLAP.DimensionByName('TestDimension').HierarchyByName('TestHierarchy').LevelByName('TestLevel');

  for i := 0 to level.MemberCount - 1 do
    str := str + level.Members[i].Name + #13#10;

  ShowMessage(str);
</pascal>
Members TbtkOLAPMember

Поле по индексу

Return type:

TbtkOLAPMember

Пример использования
<pascal>
  str := '';
  level := Selection.OLAP.DimensionByName('TestDimension').HierarchyByName('TestHierarchy').LevelByName('TestLevel');

  for i := 0 to level.MemberCount - 1 do
    str := str + level.Members[i].Name + #13#10;

  ShowMessage(str);
</pascal>
Order Integer

Номера, по возрастанию которых определяет порядок следования уровней в своей иерархии или подуровне.

Return type:

Integer

Пример использования
<pascal>
  Selection.OLAP.DimensionByName('TestDimension').HierarchyByName('TestHierarchy').LevelByName('TestLevel').Order := 1;
</pascal>
LevelCount Integer

Количество подуровней

Return type:

Integer

Пример использования
<pascal>
  str := '';
  level := Selection.OLAP.DimensionByName('TestDimension').HierarchyByName('TestHierarchy').LevelByName('TestLevel');

  for i := 0 to level.LevelCount - 1 do
    str := str + level.Levels[i].Name + #13#10;

  ShowMessage(str);
</pascal>
Levels TbtkOLAPLevel

Уровень по идексу

Return type:

TbtkOLAPLevel

Пример использования
<pascal>
  str := '';
  level := Selection.OLAP.DimensionByName('TestDimension').HierarchyByName('TestHierarchy').LevelByName('TestLevel');

  for i := 0 to level.LevelCount - 1 do
    str := str + level.Levels[i].Name + #13#10;

  ShowMessage(str);
</pascal>
Free()

Удаляет уровень из иерархии или родительского уровня

Пример использования
<pascal>
  Selection.OLAP.AddDimension('TestDimension').AddHierarchy('TestHierarchy').AddLevel('TestLevel').Free;
</pascal>
DeleteMember(MemberName: String; MemberIndex: Integer)

Удаляет поле по имени или индексу

Parameters:
  • MemberName (String) – Имя поля.

  • MemberIndex (Integer) – Индекс поля.

Пример использования
<pascal>
  level.DeleteMember('TestMember');
  level.DeleteMember(1);
</pascal>
MemberByName(MemberName: String) TbtkOLAPMember

Ищет поле по имени

Parameters:

MemberName (String) – Имя поля.

Return type:

TbtkOLAPMember

Пример использования
<pascal>
  member := level.MemberByName('TestMember');
</pascal>
AddMembers(MemberNames: Array)

Добавляет поля с указанными именами

Parameters:

MemberNames (Array) – Имена полей.

Пример использования
<pascal>
  level.AddMembers(['TestMember1', 'TestMember2', ...]);
</pascal>
AddMember(MemberName: String) TbtkOLAPMember

Добавляет поле в уровень

Parameters:

MemberName (String) – Имя поля.

Return type:

TbtkOLAPMember

Пример использования
<pascal>
  level.AddMember('TestMember');
</pascal>
DeleteLevel(LevelName: String; LevelIndex: Integer)

Удаляет уровень по имени или порядковому номеру

Parameters:
  • LevelName (String) – Имя уровня.

  • LevelIndex (Integer) – Индекс уровня.

Пример использования
<pascal>
  level.DeleteLevel('TestLevel');
  level.DeleteLevel(1);
</pascal>
LevelByName(LevelName: String) TbtkOLAPLevel

Возвращает уровень по имени

Parameters:

LevelName (String) – Имя уровня.

Return type:

TbtkOLAPLevel

Пример использования
<pascal>
  level := level.LevelByName('TestLevel');
</pascal>
AddLevels(InputArgs: Array)

Добавляет произвольное количество дочерних уровней с возможностью одновременного указания их дочерних полей (Members)

Parameters:

InputArgs (Array) – Массив аргументов. Включает в себя имена добавляемых уровней и массивы их дочерних полей.

Пример использования
<pascal>
  level := Selection.OLAP.AddDimension('TestDimension').AddHierarchy('TestHierarchy').AddLevel('LevelName');
  level.AddLevels(['Level1', ['Member1', 'Member2'], 'Level2', 'Level3', ['Member3', 'Member4']]);
</pascal>
AddLevel(LevelName, KeyMemberName: String) TbtkOLAPLevel

Добавляет уровень OLAP-структуры с заданным именем и именем ключевого поля.

Parameters:
  • LevelName (String) – Имя уровня.

  • KeyMemberName (String) – Имя ключевого поля.

Return type:

TbtkOLAPLevel

Пример использования
<pascal>
  Selection.OLAP.AddDimension('TestDimension').AddHierarchy('TestHierarchy').AddLevel('TestLevel').AddLevel('TestLevel2');
</pascal>

TbtkOLAPMember

class TbtkOLAPMember

Поле OLAP-структуры

Order Integer

Номера, по возрастанию которых определяет порядок следования полей в своем уровне

Return type:

Integer

Пример использования
<pascal>
  member.Order := 5;
</pascal>
Caption String

Заголовок, визуально отображаемый в OLAP-контроле. Если пустой, используется значение по умолчанию (соответствующее заголовку атрибута выборки)

Return type:

String

Пример использования
<pascal>
  str := '';
  level := Selection.OLAP.DimensionByName('TestDimension').HierarchyByName('TestHierarchy').LevelByName('TestLevel');

  for i := 0 to level.MemberCount - 1 do
    str := str + level.Members[i].Caption + #13#10;

  ShowMessage(str);
</pascal>
Name String

Уникальное в размерности непустое имя

Return type:

String

Пример использования
<pascal>
  str := '';
  level := Selection.OLAP.DimensionByName('TestDimension').HierarchyByName('TestHierarchy').LevelByName('TestLevel');

  for i := 0 to level.MemberCount - 1 do
    str := str + level.Members[i].Name + #13#10;

  ShowMessage(str);
</pascal>

TbtkOLAPSummaryType

class TbtkOLAPSummaryType

Перечисление. Способы вычисления итогов полей данных OLAP-структуры.

ostCount

Количество значений.

ostSum

Сумма числовых значений.

ostMin

Наименьшее значение.

ostMax

Наибольшее значение.

ostAverage

Среднее арифметическое для числовых значений.

ostStdDev

Выборочное среднеквадратическое отклонение для числовых значений.

ostStdDevP

Генеральное среднеквадратическое отклонение для числовых значений.

ostVariance

Выборочная дисперсия для числовых значений.

ostVarianceP

Генеральная дисперсия для числовых значений.

ostCustom

Пользовательский расчёт.

TbtkOLAPAreaType

class TbtkOLAPAreaType

Перечисление. Области отображения полей OLAP-структуры.

atRow

Область строк.

atColumn

Область колонок.

atFilter

Область фильтрации.

atInvisible

Не отображаются.

TbtkScriptPivotGridObject

class TbtkScriptPivotGridObject

Класс предоставляет доступ к компоненту PivotGrid.

ResetAllSettings()

Сбрасывает все настройки конфигурации Pivot-грида. Все поля перемещаются в область фильтрации.

Пример использования
<PASCAL>
  stream := Selection.PivotGrid.ResetAllSettings;
</PASCAL>

Warning

Не реализовано