Запуск додатків із 1С Підприємства 8

Платформа 1С:Підприємство 8.x дозволяє виконувати запуск сторонніх програм вбудованими засобами. Наприклад, якщо потрібно запустити браузер для відкриття посилання, достатньо написати наступний програмний код:

Таким же способом можна виконувати запуск будь-якої іншої програми, явно вказавши шлях до EXE-файлу, що виконується.

Після виконання цього рядка коду буде запущено стандартну програму Windows - "Блокнот".

Використовувати цей метод глобального контексту більше має сенс на стороні клієнта (тонкого або товстого), так як в абсолютній більшості випадків після запуску програми працювати з ним з 1С:Підприємства неможливо. Тобто. після відкриття браузера обробляти його події або отримувати дані платформа не зможе.

Але виконувати взаємодії з запущеним таким способом додатком все ж таки можна! Наприклад, виконавши запуск очікуємо коли запущений додаток сформує файл у відповідь і потім читаємо його. Якщо використовувати метод "ЗапуститиДодаток()", то нам доведеться перевіряти наявність файлу у відповідь у циклі і в разі появи доступу до цього файлу - обробити його.

Раціональнішим було б запустити програму, дочекатися завершення її виконання і потім виконати всі необхідні дії. А якщо запуск виконується на клієнтській машині, показувати вікно програми взагалі може виявитися не обов'язково.

додатків

Для цього можна використовувати COM-об'єкт "WScript.Shell":

А) - команда системи (шлях до файлу або будь-яка інша команда у форматі DOS).

Б) - варіант показу вікна програми. Вказувати необов'язково. Можливі значення:

1 - Активізує та показує вікно. Якщо вікно мінімізовано абомаксимізовано, система відновлює його до оригінального розміру та положення. Використовується під час першого відкриття вікна програми. 2 - Активізує вікно згорнутого режиму. 3 - Активізує вікно та розгортає на весь екран. 4 - Показує вікно в його новому розмірі та положенні. Активним залишається поточне вікно. 5 - Активізує вікно та показує його у поточному розмірі. 6 - Мінімізує вікно та активізує наступне на панелі завдань. 7 - Відображає вікно як мінімізоване. Активне вікно залишається активним. 8 - Відображає вікно у його поточному стані. Активне вікно залишається активним. 9 - Активізує та показує вікно. Якщо вікно мінімізоване або максимізоване, система відновлює його до оригінального розміру та положення. Використовується для відновлення мінімізованого вікна. 10 - показує вікно в тому ж стані, що і вікно програми, що викликає.

В) - чи потрібно очікувати завершення команди: 0 - не потрібно чекати завершення виконання команди, 1 - чекати завершення виконання команди.

Ось так виглядає запуск програми "Блокнот" у такий спосіб:

Але знову ж таки, очікування завершення роботи програми не буде. Для цього третій параметр потрібно виставити на значення 1.

Приклад використання COM-об'єкта "WScript.Shell" можна переглянути в обробці "Yandex.Wordstat", де за його допомогою запускається утиліта відправки JSON-запиту через Yandex.API.

Мінусом другого способу є його не універсальність, адже робота COM-об'єкта можлива лише для випадків, коли платформи (або сервер 1С:Підприємства) запущені під керуванням операційної системи Windows.