Home > Foresight Analytics Platform > Web Application and Desktop Application > Application Development and Functionality Enhancement > Developing in Development Environment > Description of System Assemblies > Ms > Examples > Creating a Metamodel
Executing the example requires that the repository contains a modeling container with the KONT_MODEL identifier. The container includes two MODEL_1 and MODEL_2 models.
Add links to the Metabase and Ms system assemblies.
Sub UserProc;
Var
MB: IMetabase;
KMDesc: IMetabaseObjectDescriptor;
CrInfo: IMetabaseObjectCreateInfo;
MObj: IMetabaseObject;
Meta: IMsMetaModel;
Model1, Model2: IMsModel;
Root: IMsCalculationChainEntries;
NewFolder: IMsCalculationChainFolder;
Begin
MB := MetabaseClass.Active;
KMDesc := MB.ItemById("KONT_MODEL");
CrInfo := MB.CreateCreateInfo;
CrInfo.ClassID := MetabaseObjectClass.KE_CLASS_MSMETAMODEL;
CrInfo.Id := "METAMODEL_1";
CrInfo.Name := "Metamodel";
CrInfo.Parent := KMDesc;
MObj := MB.CreateObject(CrInfo).Edit;
Meta := MObj As IMsMetaModel;
Model1 := MB.ItemByIdNamespace("MODEL_1", KMDesc.Key).Bind As IMsModel;
Model2 := MB.ItemByIdNamespace("MODEL_2", KMDesc.Key).Bind As IMsModel;
Root := Meta.CalculationChain;
NewFolder := Root.AddFolder("Model 1");
NewFolder.Contents.AddModel(Model1);
NewFolder := Root.AddFolder("Model 2");
NewFolder.Contents.AddModel(Model2);
MObj.Save;
End Sub UserProc;
After executing the example a metamodel is created in the modeling container. Two folders are created in the metamodel calculation chain, one model is added to each folder.
See also: