IMsCalculationChainMetaModel.ParamsControl

Синтаксис

ParamsControl: IMsModelParamsControl;

Описание

Свойство ParamsControl возвращает коллекцию контролируемых параметров метамодели, содержащейся в цепочке расчёта.

Пример

Для выполнения примера в репозитории предполагается наличие базы данных временных рядов с идентификатором FC_PARAM. В контейнере моделирования базы располагаются две метамодели с идентификаторами METAMODEL и META_CONTROLLED.

Добавьте ссылки на системные сборки: Metabase, Ms.

Sub UserProc;
Var
    mb: IMetabase;
    Catalog: IRubricator;
    Transforms: IMetabaseObjectDescriptor;
    MetaModel_1, MetaModel_2:IMsMetaModel;
    MMParams: IMsModelParams;
    pMetaModelParam1, pMetaModelParam2:IMsModelParam;
    MainChainEntries: IMsCalculationChainEntries;
    pChain: IMsCalculationChainMetaModel;
    ParamsControl: IMsModelParamsControl;
    pControl: IMsModelParamControl;
Begin
    mb := MetabaseClass.Active;
    Catalog := mb.ItemById("FC_PARAM").Bind As IRubricator;
    Transforms := Catalog.ModelSpace;
    MetaModel_1 := mb.ItemByIdNamespace("METAMODEL", Transforms.Key).Edit As IMsMetaModel;
    MMParams := MetaModel_1.Params;
    MMParams.Clear;
    pMetaModelParam1 := MMParams.Add;
    pMetaModelParam1.Name:= "Main param";
    pMetaModelParam1.Id :="Main_Param";
    pMetaModelParam1.Hidden:= True;
    pMetaModelParam1.DataType:= DbDataType.Float;
    pMetaModelParam1.DefaultValue:= 0.36;
    MainChainEntries := MetaModel_1.CalculationChain;
    MainChainEntries.Clear;
    MetaModel_2 := mb.ItemByIdNamespace("META_CONTROLLED", Transforms.Key).Edit As IMsMetaModel;
    MMParams := MetaModel_2.Params;
    MMParams.Clear;
    pMetaModelParam2 := MMParams.Add;
    pMetaModelParam2.Name:= "Controlled param";
    pMetaModelParam2.Id :="Controlled_param";
    pMetaModelParam2.Hidden:= True;
    pMetaModelParam2.DataType:= DbDataType.Integer;
    pMetaModelParam2.DefaultValue:= 1;
    (MetaModel_2 As IMetabaseObject).Save;
    pChain := MainChainEntries.AddMetaModel(MetaModel_2);
    ParamsControl := pChain.ParamsControl;
    pControl := ParamsControl.Item(0);
    pControl.ControllingParam:= pMetaModelParam1;
    pControl.Value := 4;
    (MetaModel_1 As IMetabaseObject).Save;
End Sub;

В результате выполнения примера для метамоделей будут определены параметры. Метамодель META_CONTROLLED будет включена в цепочку расчёта метамодели METAMODEL. Контролируемым параметром цепочки расчёта будет назначен параметр метамодели METAMODEL, для него будет определено значение.

См. также:

IMsCalculationChainMetaModel