DrillThroughQuery: IDatasetModel;
DrillThroughQuery: Prognoz.Platform.Interop.Db.IDatasetModel;
Свойство DrillThroughQuery определяет объект репозитория «Запрос» для получения детализированных данных.
Для каждого реляционного источника данных стандартного куба возможно использование запроса.
Для выполнения примера в репозитории необходимо наличие:
стандартного куба с идентификатором «CUBE»;
объекта репозитория «Запрос» с идентификатором «QUERY».
Добавьте ссылки на системные сборки: Cubes, Db, Metabase.
Sub UserProc;
Var
MB: IMetabase;
StandCub: IStandardCube;
Dataset: IStandardCubeDataset;
Begin
// Получим репозиторий
MB := MetabaseClass.Active;
// Получим стандартный куб
StandCub := MB.ItemById("CUBE").Edit As IStandardCube;
// Получим первый источник данных куба
Dataset := StandCub.Datasets.Item(0);
// Зададим запрос для получения детализированных данных
Dataset.DrillThroughQuery := MB.ItemById("QUERY").Bind as IDatasetModel;
// Сохраним изменения
(StandCub As IMetabaseObject).Save;
End Sub UserProc;
После выполнения примера для первого реляционного источника данных стандартного куба будет применен указанный запрос для получения детализированных данных.
Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.
Imports Prognoz.Platform.Interop.Cubes;
Imports Prognoz.Platform.Interop.Db;
…
Public Shared Sub Main(Params: StartParams);
Var
MB: IMetabase;
StandCub: IStandardCube;
Dataset: IStandardCubeDataset;
Begin
// Получим репозиторий
MB := Params.Metabase;
// Получим стандартный куб
StandCub := MB.ItemById["CUBE"].Edit() As IStandardCube;
// Получим первый источник данных куба
Dataset := StandCub.Datasets.Item[0];
// Зададим запрос для получения детализированных данных
Dataset.DrillThroughQuery := MB.ItemById["QUERY"].Bind() As IDatasetModel;
// Сохраним изменения
(StandCub As IMetabaseObject).Save();
End Sub;
См. также: