Database: IDatabase;
Свойство Database определяет базу данных, в которой хранятся все таблицы источников и приемника данных, участвующих в расчете.
Для выполнения примера предполагается наличие в репозитории базы данных с идентификатором "MDBD", а так же двух стандартных кубов "CUBE_INPUT" и "CUBE_OUTPUT". Данные кубы основаны на таблицах, хранящихся в данной базе данных.
Sub Main;
Var
MB: IMetabase;
CrInfo: IMetabaseObjectCreateInfo;
MObj: IMetabaseObject;
MDCalc: IMDCalculation;
Cube: ICubeModel;
Source: IMDCalculationSource;
Destination: IMDCalculationDestination;
FormulasTable: IMDCalculationFormulasTable;
TableForFormulas: ITable;
Begin
MB := MetabaseClass.Active;
CrInfo := MB.CreateCreateInfo;
CrInfo.ClassID := MetabaseObjectClass.KE_CLASS_MDCALCULATION;
CrInfo.Id := "MDCALC_1";
CrInfo.Name := "Многомерный расчет на сервере";
CrInfo.Parent := Null;
MObj := MB.CreateObject(CrInfo).Edit;
MDCalc := MObj As IMDCalculation;
//Добавляем БД
MDCalc.Database := MB.ItemById("MDBD").Bind As IDatabase;
//Указываю куб-источник
Cube := MB.ItemById("CUBE_INPUT").Bind As ICubeModel;
Source := MDCalc.Sources.AddCube(Cube);
//Указываем куб-назначение
Destination := MDCalc.Destination;
Destination.SetCube(MB.ItemById("CUBE_OUTPUT").Bind As ICubeModel);
//Создаем новую таблицу формул
FormulasTable := MDCalc.FormulasTable;
TableForFormulas := FormulasTable.Create;
FormulasTable.Attach(TableForFormulas);
MObj.Save;
End Sub Main;
После выполнения примера в корневом каталоге репозитория будет создан объект - Многомерный расчет на сервере БД. Будут установлены один куб-источник, куб-назначение и создана новая таблица формул.
См. также: