CreateDataSourceCache(Database: IMetabaseObjectDescriptor): Boolean;
CreateDataSourceCache(Database: Prognoz.Platform.Interop.Metabase.IMetabaseObjectDescriptor): boolean;
Database. База данных репозитория, в которую будут сохранены кэшируемые данные.
Метод CreateDataSourceCache создает объект кэширования источника данных экспресс-отчета и возвращает результат его создания.
После использования метода CreateDataSourceCache выполните метод IEaxAnalyzeCore.RefreshDataSourceCache.
Метод возвращает результат выполнения операции создания объекта кэширования:
True. Операция создания выполнена успешно;
False. Операция создания не выполнена.
Для выполнения примера предполагается наличие экспресс-отчета с идентификатором «Eax» и формы, содержащей кнопку с идентификатором «Button1».
Добавьте ссылки на системные сборки «Express» и «Metabase».
Пример является обработчиком события OnClick для компонента «Button1».
Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
Var
MB: IMetabase;
Desc: IMetabaseObjectDescriptor;
Eax: IEaxAnalyzer;
Begin
MB := MetabaseClass.Active;
Desc := MB.ItemById("DB");
Eax := MB.ItemById("Eax").Edit As IEaxAnalyzer;
Eax.ClearDataSourceCache;
Debug.WriteLine("Создан: " + Eax.CreateDataSourceCache(Desc).ToString);
Eax.RefreshDataSourceCache;
Debug.WriteLine("Есть ли объект кэширования: " + Eax.IsDataSourceCacheExist.ToString);
Debug.WriteLine("Название куба-источника: " + Eax.DataSourceCache.Parent.Name);
End Sub Button1OnClick;
После выполнения примера в базе данных с идентификатором «DB» для источника экспресс-отчета будет создан объект кэширования. В окне консоли будет выведен результат его создания, результат проверки на наличие объекта кэширования и название куба-источника.
Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore. Вместо компонентов Fore используйте их Fore.NET аналоги.
Imports Prognoz.Platform.Interop.Express;
…
Private Sub button1_Click(sender: System.Object; e: System.EventArgs);
Var
MB: IMetabase;
Desc: IMetabaseObjectDescriptor;
Eax: IEaxAnalyzer;
Begin
MB := Self.Metabase;
Desc := MB.ItemById["DB"];
Eax := MB.ItemById["Eax"].Edit() As IEaxAnalyzer;
Eax.ClearDataSourceCache();
System.Diagnostics.Debug.WriteLine("Создан: " + Eax.CreateDataSourceCache(Desc).ToString());
Eax.RefreshDataSourceCache();
System.Diagnostics.Debug.WriteLine("Есть ли объект кэширования: " + Eax.IsDataSourceCacheExist.ToString());
System.Diagnostics.Debug.WriteLine("Название куба-источника: " + Eax.DataSourceCache.Parent.Name);
End Sub;
См. также: