IMsProblemCalculationSettings.BreakOnError

Синтаксис Fore

BreakOnError: Boolean;

Синтаксис Fore.NET

BreakOnError: boolean;

Описание

Свойство BreakOnError определяет, прерывать ли расчет задачи моделирования при возникновении ошибки.

Комментарии

Возможные значения:

Значение свойства учитывается только на этапе расчета задачи. Если ошибка возникла на этапах загрузки данных или инициализации, то расчет будет прерван независимо от значения BreakOnError.

Пример Fore

Для выполнения примера предполагается наличие задачи моделирования с ключом «13380». Добавьте ссылки на системные сборки «Metabase», «Ms». Также в примере используется класс MCallback, описание которого приведено в IMsProblemCalculationCallback.OnWarning.

Sub UserProc;
Var
    mb: IMetabase;
    Problem: IMsProblem;
    Calculation: IMsProblemCalculation;
    CallBack: MCallback;
    CalcSettings: IMsProblemCalculationSettings;
Begin
    mb := MetabaseClass.Active;
    Problem := mb.Item(13380).Bind As IMsProblem;
    CallBack := New MCallback.Create;
    CalcSettings := Problem.CreateCalculationSettings;
    CalcSettings.Callback := CallBack;
    CalcSettings.FactIncluded := True;
    CalcSettings.BreakOnError := True;
    Calculation := Problem.Calculate(CalcSettings);
    Calculation.Run;
End Sub UserProc;

После выполнения примера задача будет рассчитана. Если возникнет ошибка, то расчет будет остановлен. Обработчиком событий, возникающих при расчете задачи, является класс MCallback.

Пример Fore.NET

Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.

Imports Prognoz.Platform.Interop.Ms;

Public Shared Sub Main(Params: StartParams);
Var
    mb: IMetabase;
    Problem: IMsProblem;
    Calculation: IMsProblemCalculation;
    CallBack: MCallback;
    CalcSettings: IMsProblemCalculationSettings;
Begin
    mb := Params.Metabase;
    Problem := mb.Item[13380].Bind() As IMsProblem;
    CallBack := New MCallback.Create();
    CalcSettings := Problem.CreateCalculationSettings();
    CalcSettings.Callback := CallBack;
    CalcSettings.FactIncluded := True;
    CalcSettings.BreakOnError := True;
    Calculation := Problem.Calculate(CalcSettings);
    Calculation.Run();
End Sub;

См. также:

IMsProblemCalculationSettings