Открытие переменной в контейнере моделирования

Содержание

Описание

Требования

Пример Fore

Пример Fore.NET

Результат выполнения примеров Fore и Fore.NET

Описание

Рассмотрим пример открытия переменной для редактирования в интерфейсе контейнера моделирования.

Требования

В репозитории предполагается наличие контейнера моделирования с идентификатором «MS», содержащего переменную моделирования с идентификатором «VARIABLE».

Добавьте ссылки на системные сборки: Metabase, Ui. Для примера Fore.NET добавьте ссылку на системную сборку Fore.

Пример Fore

Sub OpenVariable;
Var
    Mb: IMetabase;
    ObjDes: IMetabaseObjectDescriptor;
    Target: IUiCommandTarget;
Begin
    MB := MetabaseClass.Active;
    // Получаем переменную моделирования
    ObjDes := MB.ItemByIdNamespace("VARIABLE", MB.GetObjectKeyById("MS"));
    // Получаем объект для выполнения действий над переменной
    Target := WinApplication.Instance.GetObjectTarget(ObjDes);
    // Открываем переменную моделирования для редактирования
    Target.Execute("Object.Edit"Null);
End Sub OpenVariable;

Пример Fore.NET

Imports Prognoz.Platform.Interop.Fore;
Imports Prognoz.Platform.Interop.Ui;

Public Shared Sub Main(Params: StartParams);
Var
    Mb: IMetabase;
    ObjDes: IMetabaseObjectDescriptor;
    RunContext: ForeRuntimeContext;
    WinApp: WinApplicationClassClass = New WinApplicationClassClass();
    Target: IUiCommandTarget;
Begin
    MB := Params.Metabase;
    // Получаем переменную моделирования
    ObjDes := MB.ItemByIdNamespace["VARIABLE", MB.GetObjectKeyById("MS")];
    // Получаем объект для выполнения действий над переменной
    RunContext := (MB As IForeServices).GetRuntime().Context;
    Target := WinApp.Instance[RunContext].GetObjectTarget(ObjDes);
    // Открываем переменную моделирования для редактирования    
    Target.Execute("Object.Edit"Null, RunContext);
End Sub;

Результат выполнения примеров Fore и Fore.NET

Переменная «VARIABLE» будет открыта для редактирования в интерфейсе контейнера моделирования.

См. также:

Примеры