IMsProblemCalculation.MetaAttributeFilter

Синтаксис

MetaAttributeFilter: IMsMetaAttributeFilter;

Описание

Свойство MetaAttributeFilter возвращает объект, содержащий фильтр, применяемый при расчете задачи моделирования.

Пример

Для выполнения примера предполагается наличие в репозитории базы данных временных рядов с идентификатором «OBJ_RUBRICATOR». В контейнере моделирования данной базы данных временных рядовй должна существовать задача, основанная на показателях базы, с идентификатором «OBJ_PROBLEM». «COUNTRY» - пользовательский атрибут показателей базы, ссылающийся на справочник.

Sub Main;

Var

MB: IMetabase;

RubDescr: IMetabaseObjectDescriptor;

ContKey: Integer;

Obj: IMetabaseObject;

Problem: IMsProblem;

T: IMsTransformationProblem;

CalcSettings: IMsProblemCalculationSettings;

Calculation: IMsProblemCalculation;

Ruby: IRubricator;

MetaAttr: IMetaAttribute;

MetaVals: IMsMetaAttributeValues;

Dict: IMetabaseObject;

DI: IDimInstance;

Sel: IDimSelection;

Begin

MB := MetabaseClass.Active;

RubDescr := MB.ItemById("OBJ_RUBRICATOR");

ContKey := MB.ItemByIdNamespace("MODELSPACE_TRANSFORMS", RubDescr.Key).Key;

Obj := MB.ItemByIdNamespace("OBJ_PROBLEM", ContKey).Edit;

Problem := Obj As IMsProblem;

T := New MsTransformationProblem.Create;

Problem.Details := T;

CalcSettings := Problem.CreateCalculationSettings;

CalcSettings.FactIncluded := True;

Obj.Save;

Calculation := Problem.Calculate(CalcSettings);

Ruby := RubDescr.Bind As IRubricator;

MetaAttr := Ruby.Facts.Attributes.FindById("COUNTRY");

MetaVals := Calculation.MetaAttributeFilter.Add(MetaAttr);

Dict := MetaAttr.ValuesObject.Bind;

DI := Dict.Open(Null) As IDimInstance;

Sel := DI.CreateSelection;

Sel.SelectElement(0, False);

MetaVals.Selection := Sel;

Calculation.Run;

Obj.Save;

End Sub Main;

После выполнения примера, для задачи моделирования будет определена фильтрация, затем задача будет рассчитана.

См. также:

IMsProblemCalculation