1.8.7. OLAP/Pivot¶
See also
1.8.7.1. 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').Area := 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>
-
1.8.7.2. TbtkScriptOLAPObject¶
-
class
TbtkScriptOLAPObject¶ Объект реализует в себе две сущности:
- Обёртка для интерфейса Фрэйма Олап-куба, предоставляет доступ к олап функционалу.
- 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: Пример использования¶<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>
See also
-
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.SupportedGenelizeOLAPStructure 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>
See also
-
ShowDimensionMapEditor()¶ Отображает редактор карты измерений
-
SaveFrameSettings(ID: Variant): Boolean¶ Сохраняет настройки по указанному идентификатору.
Parameters: ID (Variant) – Идентификатор настройки Return type: Boolean Returns: - True
- Возвращается в случае успешного сохранения.
- False
- Возвращается если сохранить не удалось, в том числе если в качестве ID передан Null.
-
LoadFrameSettings(ID: Variant): Boolean¶ Загружает настройки по указанному идентификатору.
Parameters: ID (Variant) – Идентификатор настройки Return type: Boolean Returns: - True
- Возвращается в случае успешной загрузки.
- False
- Возвращается если загрузить не удалось, в том числе если в качестве ID передан Null.
-
OpenAllDimensions()¶ Разворачивает все измерения.
-
OpenDimension(AtrName: String)¶ Разворачивает измерение соответствующее указанному имени атрибута. Все измерения с более низким уровнем вложенности также разворачиваются.
Parameters: AtrName (String) – Имя атрибута
-
OpenRowDimension(Level: Integer)¶ Разворачивает измерение в области строк с указанным уровнем вложенности. Все измерения с более низким уровнем вложенности также разворачиваются.
Parameters: Level (Integer) – Уровень вложенности разворачиваемого измерения.
-
OpenColumnDimension(Level: Integer)¶ Разворачивает измерение в области колонок с указанным уровнем вложенности. Все измерения с более низким уровнем вложенности также разворачиваются.
Parameters: Level (Integer) – Уровень вложенности разворачиваемого измерения.
1.8.7.3. 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.SummeryType := ostAverage; </pascal>
-
Free()¶ Удаляет поле данных из OLAP-структуры
-
1.8.7.4. 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: Пример использования¶<pascal> Selection.OLAP.AddDimension('TestDimension').AddHierarchy('TestHierarchy').AddLevel('TestLevel'); </pascal>
-
1.8.7.5. 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: Пример использования¶<pascal> Selection.OLAP.AddDimension('TestDimension').AddHierarchy('TestHierarchy').AddLevel('TestLevel').AddLevel('TestLevel2'); </pascal>
-
1.8.7.6. 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>
-
1.8.7.7. TbtkOLAPSummaryType¶
-
class
TbtkOLAPSummaryType¶ Перечисление. Способы вычисления итогов полей данных OLAP-структуры.
-
ostCount¶ Количество значений.
-
ostSum¶ Сумма числовых значений.
-
ostMin¶ Наименьшее значение.
-
ostMax¶ Наибольшее значение.
-
ostAverage¶ Среднее арифметическое для числовых значений.
-
ostStdDev¶ Выборочное среднеквадратическое отклонение для числовых значений.
-
ostStdDevP¶ Генеральное среднеквадратическое отклонение для числовых значений.
-
ostVariance¶ Выборочная дисперсия для числовых значений.
-
ostVarianceP¶ Генеральная дисперсия для числовых значений.
-
ostCustom¶ Пользовательский расчёт.
-