AggregatorHierarchies(FactKey: Variant; Destination: IStandardCubeDestination): IMatrixAggregatorModelHierarchies;
FactKey. Значение первичного ключа у элемента измерения фактов, для которого необходимо настроить агрегацию по уровням альтернативной иерархии;
Destination. Вариант отображения куба, для которого необходимо настроить агрегацию.
Свойство AggregatorHierarchies определяет настройки агрегации по уровням альтернативной иерархии для указанного факта куба.
Для выполнения примера предполагается наличие в репозитории стандартного куба с идентификатором CUBE. Измерение с индексом «1» использует справочник, у которого настроена альтернативная иерархия.
Добавьте ссылки на системные сборки: Cubes, Dimensions, Matrix, Metabase.
Sub UserProc;
Var
MB: IMetabase;
StdCube: IStandardCube;
Hiers: IMatrixAggregatorModelHierarchies;
AggHier: IBasicMatrixAggregator;
Dim: IStandardCubeDimension;
Dest: IStandardCubeDestination;
HierKey: Integer;
Begin
MB := MetabaseClass.Active;
// Получим куб для редактирования
StdCube := MB.ItemById("CUBE").Edit As IStandardCube;
// Получим параметры варианта отображения куба
Dest := StdCube.Destinations.Item(0);
// Получим первое измерение куба
Dim := Dest.Dimensions.Item(1);
// Получим список альтернативных иерархий
Hiers := Dim.AggregatorHierarchies(1, Dest);
// Добавимнастройки агрегации для справочника альтернативной иерархии
HierKey := Dim.Dimension.Hierarchies.Item(0).Key;
AggHier := Hiers.Add(HierKey) As IBasicMatrixAggregator;
// Изменим параметры агрегации
AggHier.UseSelection := True;
AggHier.DefaultLevelAggregation.Operation := BasicAggregatorOperation.Sum;
// Сохраним изменения в кубе
(StdCube As IMetabaseObject).Save;
End Sub UserProc;
После выполнения примера в кубе будут добавлены параметры агрегации первой альтернативной иерархии указанного измерения:
включена агрегация отмеченных элементов в измерении;
изменен метод агрегации на сумму.
См. также: