IMsProblemCalculationSettings.Details

Синтаксис Fore

Details: Object;

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

Details: object;

Описание

Свойство Details определяет тип рассчитываемой целевой задачи.

Комментарии

Если в свойстве Details содержится объект типа:

Пример Fore

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

Добавьте ссылки на системные сборки: Metabase, Ms.

Sub UserProc;
Var
    mb: IMetabase;
    MsKey: Integer;
    Problem: IMsProblem;
    CalcSettings: IMsProblemCalculationSettings;
    Calculation: IMsProblemCalculation;
    TargetProblem: IMsTargetProblem;
Begin
    mb := MetabaseClass.Active;
    // Получаем ключ контейнера моделирования
    MsKey := mb.GetObjectKeyById("MS");
    // Получаем целевую задачу
    Problem := mb.ItemByIdNamespace("TARGET_PROBLEM", MsKey).Bind As IMsProblem;
    // Создаем параметры расчета задачи
    CalcSettings := Problem.CreateCalculationSettings;
    // Получаем параметры целевой задачи
    TargetProblem := Problem.AdditionalDetails.Item(0As IMsTargetProblem;
    // Указываем тип рассчитываемой задачи
    CalcSettings.Details := TargetProblem;
    // Выполняем расчет задачи
    Calculation := Problem.Calculate(CalcSettings);
    Calculation.Run;
End Sub UserProc;

В результате выполнения примера будет рассчитана задача оптимального управления.

Пример Fore.NET

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

Imports Prognoz.Platform.Interop.Ms;

Public Shared Sub Main(Params: StartParams);
Var
    mb: IMetabase;
    MsKey: uinteger;
    Problem: IMsProblem;
    CalcSettings: IMsProblemCalculationSettings;
    Calculation: IMsProblemCalculation;
    TargetProblem: IMsTargetProblem;
Begin
    mb := Params.Metabase;
    // Получаем ключ контейнера моделирования
    MsKey := mb.GetObjectKeyById("MS");
    // Получаем целевую задачу
    Problem := mb.ItemByIdNamespace["TARGET_PROBLEM", MsKey].Bind() As IMsProblem;
    // Создаем параметры расчета задачи
    CalcSettings := Problem.CreateCalculationSettings();
    // Получаем параметры целевой задачи
    TargetProblem := Problem.AdditionalDetails.Item[0As IMsTargetProblem;
    // Указываем тип рассчитываемой задачи
    CalcSettings.Details := TargetProblem;
    // Выполняем расчет задачи
    Calculation := Problem.Calculate(CalcSettings);
    Calculation.Run();
End Sub;

См. также:

IMsProblemCalculationSettings