SaveCube(Cube: IMetabaseObject);
SaveCube(Cube: Prognoz.Platform.Interop.Metabase.IMetabaseObject);
Cube. Куб, кэш которого необходимо сохранить.
Метод SaveCube выполняет сохранение кэша для заданного варианта отображения куба с параметрами по умолчанию.
Для выполнения примера понадобится куб с идентификатором «D_SEP», а также база данных с идентификатором «DB». Для куба должна быть установлена возможность кэшировать данные.
Sub UserProc;
Var
MB: IMetabase;
MObj: IMetabaseObjectDescriptor;
CacheSaver: ICubeCacheSaver;
CrInfo: IMetabaseObjectCreateInfo;
Begin
MB := MetabaseClass.Active;
MObj := MB.ItemById("D_SEP");
CrInfo := MB.CreateCreateInfo;
CrInfo.ClassId := MetabaseObjectClass.KE_CLASS_CUBE_CACHE_SAVER;
CrInfo.Parent := MObj;
CrInfo.Permanent := True;
CacheSaver := MB.CreateObject(CrInfo).Edit As ICubeCacheSaver;
CacheSaver.Database := MB.ItemById("DB").Bind As IDatabase;
(CacheSaver As IMetabaseObject).Save;
CacheSaver.SaveCube(MObj.Bind);
End Sub UserProc;
После выполнения примера данные куба будут закэшированы с параметрами по умолчанию.
Для выполнения примера понадобится куб с идентификатором «D_SEP», а также база данных с идентификатором «DB». Для куба должна быть установлена возможность кэшировать данные.
Imports Prognoz.Platform.Interop.Metabase;
Imports Prognoz.Platform.Interop.Cubes;
Imports Prognoz.Platform.Interop.Db;
Imports System;
Public Sub Main(Params: StartParams);
Var
MB: IMetabase;
MObj: IMetabaseObjectDescriptor;
CacheSaver: ICubeCacheSaver;
CrInfo: IMetabaseObjectCreateInfo;
Begin
MB := Params.Metabase;
MObj := MB.ItemById["D_SEP"];
CrInfo := MB.CreateCreateInfo();
CrInfo.ClassId := MetabaseObjectClass.KE_CLASS_CUBE_CACHE_SAVER As Int32;
CrInfo.Parent := MObj;
CrInfo.Permanent := True;
CacheSaver := MB.CreateObject(CrInfo).Edit() As ICubeCacheSaver;
CacheSaver.Database := MB.ItemById["DB"].Bind() As IDatabase;
(CacheSaver As IMetabaseObject).Save();
CacheSaver.SaveCube(MObj.Bind());
End Sub;
После выполнения примера данные куба будут закэшированы с параметрами по умолчанию.
См. также: