Database: IDatabase;
The Database property determines the database where all tables of data source and data consumer used in calculation are stored.
Executing the example requires that the repository contains a database with the MDBD identifier and two standard cubes CUBE_INPUT and CUBE_OUTPUT. These cubes are based on the tables stored in this database.
Sub UserProc;
Var
MB: IMetabase;
CrInfo: IMetabaseObjectCreateInfo;
MObj: IMetabaseObject;
MDCalc: IMDCalculation;
Cube: ICubeModel;
FormulasTable: IMDCalculationFormulasTable;
TableForFormulas: ITable;
Begin
MB := MetabaseClass.Active;
CrInfo := MB.CreateCreateInfo;
CrInfo.ClassID := MetabaseObjectClass.KE_CLASS_MDCALCULATION;
CrInfo.Id := "MDCALC_1";
CrInfo.Name := "Multidimensional calculation on DB server";
CrInfo.Parent := MB.Root;
MObj := MB.CreateObject(CrInfo).Edit;
MDCalc := MObj As IMDCalculation;
// Add a database
MDCalc.Database := MB.ItemById("MDDB").Bind As IDatabase;
// Specify source cube
Cube := MB.ItemById("CUBE_INPUT").Bind As ICubeModel;
MDCalc.Sources.AddCube(Cube);
// Specify destination cube
MDCalc.Destination.SetCube(MB.ItemById("CUBE_OUTPUT").Bind As ICubeModel);
// Create a new formula table
FormulasTable := MDCalc.FormulasTable;
TableForFormulas := FormulasTable.Create;
FormulasTable.Attach(TableForFormulas);
MObj.Save;
End Sub UserProc;
After executing the example the Multidimensional Calculation on Database Server object is created in the repository root. One source cube and one destination cube are determined, a new formulas table is created.
See also: