IMsBreakpoints.FindByKey

Syntax

FindByKey(BreakpointKey: Integer): IMsBreakpoint;

Parameters

BreakpointKey. Breakpoint key.

Description

The FindByKey method searches for a breakpoint in the collection by its key.

Comments

If the breakpoint with specified key is not found, the method returns Null.

Example

Executing the example requires that the repository contains a modeling container with the MODEL_SPACE identifier. This container must have a modeling problem with the PROBLEM identifier that calculates a model with the MODEL identifier. The example uses the MCallback class described in IMsproblemCalculationCallback.OnBreak.

Also, before starting the procedure add links to the Metabase, Ms system assemblies.

Sub Main;

Var

Mb: IMetabase;

ModelSpaceDescr: IMetabaseObjectDescriptor;

Problem: IMsProblem;

CalcSettings: IMsProblemCalculationSettings;

CallBack: MCallback;

Calculation: IMsProblemCalculation;

Breakpoints: IMsBreakpoints;

Breakpoint: IMsBreakpoint;

CalendarBreakpoint: IMsModelCalendarBreakpoint;

Model: IMsModel;

Begin

Mb := MetabaseClass.Active;

ModelSpaceDescr := Mb.ItemById("MODEL_SPACE");

Problem := Mb.ItemByIdNamespace("PROBLEM", ModelSpaceDescr.Key).Edit As IMsProblem;

CalcSettings := Problem.CreateCalculationSettings;

CallBack := New MCallback.Create;

CalcSettings.Callback := CallBack;

CalcSettings.FactIncluded := True;

Calculation := Problem.Calculate(CalcSettings);

Breakpoints := Calculation.Breakpoints;

Breakpoints.Clear;

Breakpoint := Breakpoints.Add(MsBreakpointKind.ModelCalendar);

CalendarBreakpoint := Breakpoint As IMsModelCalendarBreakpoint;

CalendarBreakpoint.Name := "CalendarBreakpoint";

Model := Mb.ItemByIdNamespace("MODEL", ModelSpaceDescr.Key).Edit As IMsModel;

CalendarBreakpoint.Model := Model;

CalendarBreakpoint.CalendarPoint := DateTime.ComposeDay(2012, 01, 01);

Calculation.Run;

Breakpoint := Breakpoints.FindByKey(0);

If Breakpoint <> Null Then

Breakpoint.Enable := False;

End If;

Calculation.Resume;

End Sub Main;

After executing the example the breakpoint that is triggered if the MODEL model is calculated for 01.01.2012 is set for the problem. The problem calculation is started. Then, if a point with the 0 key is found, it is deactivated.

See also:

IMsBreakpoints