ResidualsSerie: IMsVariableStub;
Свойство ResidualsSerie определяет переменную, в которую будет выгружаться ряд остатков при расчете задачи моделирования.
Свойство устарело, используйте IMsMedianSmoothingTransform.Residuals.
Для отмены выгрузки данных необходимо данному свойству установить значение Null.
Для выполнения примера предполагается наличие в контейнере задачи моделирования. Первая модель, входящая в задачу, использует для расчета метод медианного сглаживания.
Sub Main;
Var
MB: IMetabase;
KontKey: Integer;
MObj: IMetabaseObject;
Problem: IMsProblem;
CalcSett: IMsProblemCalculationSettings;
Calculation: IMsProblemCalculation;
Model: IMsModel;
Trans: IMsFormulaTransform;
VarTrans: IMsFormulaTransformVariable;
Tree: IMsFormulaTransformSlicesTree;
Slice: IMsFormulaTransformSlice;
Selector: IMsFormulaTransformSelector;
Formula: IMsFormula;
MedSmooth: IMsMedianSmoothingTransform;
Residuals_Var: IMsVariableStub;
Begin
MB := MetabaseClass.Active;
KontKey := MB.ItemById("KONT_MODEL").Key;
MObj := MB.ItemByIdNamespace("PROBLEM_1", KontKey).Edit;
//переменные, в которые будут выгружаться данные
Residuals_Var := MB.ItemByIdNamespace("Residuals_Var", KontKey).Edit As IMsVariableStub;
Problem := MObj As IMsProblem;
Model := (Problem.MetaModel.CalculationChain.Item(0) As IMsCalculationChainModel).Model;
Model := (Model As IMetabaseObject).Edit As IMsModel;
Model.Series.Add(Residuals_Var As IMsVariable);
Trans := Model.Transform;
VarTrans := Trans.Outputs.Item(0);
Tree := VarTrans.SlicesTree(VarTrans);
Slice := Tree.CreateSlice(1);
Selector := Model.Transform.CreateSelector;
Selector.Slice := Slice;
Formula := Model.Transform.Transform(Selector);
MedSmooth := Formula.Method As IMsMedianSmoothingTransform;
//ряд остатков
MedSmooth.ResidualsSerie := Residuals_Var;
//параметры для расчета задачи
CalcSett := Problem.CreateCalculationSettings;
Calculation := Problem.Calculate(CalcSett);
Calculation.Run;
(Model As IMetabaseObject).Save;
MObj.Save;
End Sub Main;
После выполнения примера в список выходных переменных модели будет добавлена переменная с идентификатором "Residuals_Var". После расчета задачи в нее будет выгружен ряд остатков.
См. также: