Перейти к основному содержимому

Утилита командной строки (CLI)

Утилита командной строки позволяет решать модели, данные которых предварительно сохранены в виде двоичных файлов. Для получения файла модели необходимо описать модель программным кодом (см. раздел "Создание модели") и вызвать метод Записать. При решении модели результат решения также сохраняется в виде выходного файла, который может быть загружен в 1С для его дальнейшего анализа. Пример работы утилиты:

1. Создаем и записываем модель​

Код на стороне 1С:

Модель = О2.СоздатьМодель();

// Описываем модель программным кодом
// ...
// ...

Модель.Записать("C:\path\to\model.o2m");

2. Решаем модель с помощью утилиты​

В терминале выполняем команду:

o2 solve "C:\path\to\model.o2m" --output "C:\path\to\solution.o2s"

Утилита выполнит вычисления и создаст файл решения по указанному адресу.

3. Загружаем решение в 1С​

Код на стороне 1С:

Решение = О2.ЗагрузитьРешение("C:\path\to\solution.o2s");

Если Решение.РешениеНайдено() Тогда
// Обрабатываем данные решения
// ...
// ...
КонецЕсли;

Данный механизм может быть использован для создания различных автоматизированных конвейеров обработки данных.

Установка утилиты​

Утилита командной строки не требует отдельной установки, утилита становится доступна сразу после установки сервиса решателя. Установка сервиса решателя описана в соответсвующем разделе.

Чтобы проверить установку утилиты откройте интерфейс командной строки и выполните команду:

o2 --version

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

Доступные команды​

o2​

Корневая команда o2 может быть вызвана только с одним из параметров, описанных ниже:

Параметры​

ПараметрПо умолчаниюОписание
-v, --versionПри указании данного параметра выводит версию сборки
-h, -?, --helpВыводит справку по использованию утилиты

Пример вызова​

o2 --version
o2 --help

o2 solve​

Выполняет решение модели и записывает результат в выходной файл.

Аргументы​

АргументОписание
modelPathПуть к файлу модели

Параметры​

ПараметрПо умолчаниюОписание
-o, --output./{имя_файла_модели}.o2sПуть, по которому необходимо сохранить решение
-s, --solverТип решателя. Доступны значения: glop, clp, pdlp, cbc, scip, glpk, bop, sat, dp, items64, bf
-tl, --time-limit0 (без ограничения)Максимальное время поиска решения в секундах
-tn, --threads-number0 (использует все ядра)Максимальное количество потоков при поиске
-cc, --customer-codeКод лицензиата для отбора лицензий (если не указан, будет применяться только Community-лицензия)
-v, --verbositynormalУровень детализации вывода. Возможные значения: quiet, minimal, normal, detailed, diagnostic
-h, -?, --helpВыводит справку по использованию команды

Примеры вызова​

o2 solve "C:\path\to\model.o2m"

Решение будет сохранено в файл "model.o2s" в текущую директорию командной строки.

o2 validate​

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

Аргументы​

АргументОписание
modelPathПуть к файлу модели

Параметры​

ПараметрПо умолчаниюОписание
-v, --verbositynormalУровень детализации вывода. Возможные значения: quiet, minimal, normal, detailed, diagnostic
-h, -?, --helpВыводит справку по использованию команды

Примеры вызова​

o2 validate "C:\path\to\model.o2m"

o2 inspect​

Выводит метаданные указанного файла модели или решения.

Аргументы​

АргументОписание
filePathПуть к файлу модели или решения

Параметры​

ПараметрПо умолчаниюОписание
-v, --verbositynormalУровень детализации вывода. Возможные значения: quiet, minimal, normal, detailed, diagnostic
-h, -?, --helpВыводит справку по использованию команды

Примеры вызова​

o2 inspect "C:\path\to\model.o2m"

o2 run​

Запускает решатель в режиме web-сервиса.

Параметры​

ПараметрПо умолчаниюОписание
-p, --port4762Порт сервиса
-v, --verbositynormalУровень детализации вывода. Возможные значения: quiet, minimal, normal, detailed, diagnostic
-h, -?, --helpВыводит справку по использованию команды

Примеры вызова​

o2 run