IMsProblemCalculationSettings.Callback

Синтаксис

Callback: IMsProblemCalculationCallback;

Описание

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

Пример

Public Class MCallback: Object, IMsProblemCalculationCallback

Public Sub OnError(Message: String);

Begin

Debug.WriteLine(Message);

End Sub OnError;

Public Sub OnFinish;

Begin

Debug.WriteLine("Расчет задачи завершен");

End Sub OnFinish;

Public Sub OnMessage(Message: String);

Begin

Debug.Write(DateTime.Now);

Debug.WriteLine(": " + Message);

End Sub OnMessage;

Public Sub OnModelCalculation(Model: IMsModel);

Begin

Debug.WriteLine("Расчет модели: " + (Model As IMetabaseObject).Id);

End Sub OnModelCalculation;

Public Sub OnStep;

Begin

Debug.WriteLine("Step");

End Sub OnStep;

End Class MCallback;

 

Sub Main;

Var

MB: IMetabase;

MObj: IMetabaseObject;

Problem: IMsProblem;

CallBack: MCallback;

CalcSett: IMsProblemCalculationSettings;

Calculation: IMsProblemCalculation;

Begin

MB := MetabaseClass.Active;

MObj := MB.ItemByIdNamespace("PROBLEM_1", MB.ItemById("KONT_MODEL").Key).Edit;

Problem := MObj As IMsProblem;

CallBack := New MCallback.Create;

CalcSett := Problem.CreateCalculationSettings;

CalcSett.Callback := CallBack;

Calculation := Problem.Calculate(CalcSett);

Calculation.Run;

MObj.Save;

End Sub Main;

После выполнения примера будет осуществлен расчет задачи с идентификатором "PROBLEM_1". Для отслеживания событий, происходящих во время расчета, используется объект пользовательского класса "MCallback".

См. также:

IMsProblemCalculationSettings