Запуск разных компонентов «1С:Предприятия»

Фоновые задания, файловый вариант работы

В общем случае при исполнении фоновых заданий в файловом варианте работы могут быть задействованы следующие схемы работы:

Фоновые задания всегда исполняются в контексте сервера. Исполнение фоновых заданий может начаться в результате:
В любом из этих случаев должно существовать одно клиентское приложение (тонкий клиент, веб-клиент или толстый клиент) , подключенное к информационной базе:
  • Либо оно само непосредственно запускает фоновые задания;
  • Либо исполняет по расписанию регламентные задания, которые, в свою очередь, запускают фоновые задания;
  • Либо подключение необходимо для того, чтобы модуль расширения веб-сервера запускал регламентные задания.
Подробнее можно прочитать в 1С:Предприятие.3. Руководство разработчика.
Запуск
Вы запускаете клиентское приложение (толстый клиент, тонкий клиент или веб-клиент) и фоновые задания начинают исполняться.
Если фоновое задание порождено регламентным заданием, оно будет выполнено по расписанию.
Если фоновое задание вызывается непосредственно из встроенного языка или в результате интерактивных действий пользователя, вам нужно выполнить интерактивные действия, которые приводят к его запуску.
Отладка
Для отладки фоновых заданий в файловом варианте работы требуется дополнительная настройка (подробнее).
Важно: В файловом варианте работы в сеансе, который получен с использованием внешнего соединения, не поддерживается работа фоновых заданий (подробнее в документации «1С:Предприятия»). Если вы хотите запускать и отлаживать фоновые задания при работе через внешнее соединение — используйте клиент-серверный вариант работы.

Фоновые задания, клиент-серверный вариант работы

В общем случае при исполнении фоновых заданий в клиент-серверном варианте работы могут быть задействованы следующие схемы работы:

Фоновые задания всегда исполняются в контексте сервера. Исполнение фоновых заданий может начаться в результате:
  1. Непосредственного запуска из встроенного языка;
  2. Интерактивных действий пользователя (например, выполнение отчета);
  3. Запуска регламентного задания по расписанию.

В первом случае исполнение встроенного языка может начаться либо в одном из клиентских приложений, либо в результате обращения стороннего приложения (например, к опубликованным Web- или HTTP-сервисам).

Во втором случае фоновые задания запускаются механизмами платформы, встроенными в клиентские приложения.

В третьем случае регламентные задания по расписанию запускает кластер серверов, и это не зависит от наличия подключенных клиентских приложений.

Запуск
Если фоновое задание порождено регламентным заданием, то для его выполнения вам не нужно предпринимать никаких действий — такие задания будут выполняться по расписанию автоматически, пока работает кластер серверов.
Если фоновое задание вызывается непосредственно из встроенного языка, вам нужно выполнить интерактивные действия, которые приводят к его запуску, либо запустить стороннее приложение, работа которого приводит к его запуску.
Отладка
Для отладки фоновых заданий в клиент-серверном варианте работы требуется дополнительная настройка (подробнее).

Внешнее соединение

Важно: Использование внешних соединений (COM-соединений) возможно только при работе под управлением операционной системы Windows.

В общем случае стороннее приложение взаимодействует с информационной базой через внешнее соединение (COM-соединение) по следующей схеме:

На компьютере в локальной сети зарегистрирован класс COM-объектов V83.COMConnector. Стороннее приложение создает COM-объект V83.COMConnector и с его помощью устанавливает внешнее соединение с файловой или клиент-серверной базой, расположенной в этой же сети.

В результате установки такого соединения начинает исполняться модуль внешнего соединения базы. В случае файловой базы код на встроенном языке исполняется на том компьютере, на котором создается объект V83.COMConnector (и в контексте клиента, и в контексте сервера). В случае клиент-серверной информационной базы код в контексте клиента исполняется на том компьютере, где создается COM-объект V83.COMConnector , а код в контексте сервера исполняется на компьютере кластера серверов.

Запуск
Компонент платформы 1С:Предприятие (который используется во всех этих вариантах) содержит библиотеку comcntr.dll. Эта библиотека обеспечивает функционирование внешнего соединения. При установке платформы она регистрируется автоматически.
Возможная проблема: Если пользователь, от имени которого выполнятся установка платформы, ограничен в правах, регистрация библиотеки может не выполниться. В этом случае можно зарегистрировать ее вручную, запустив интерпретатор командной строки от имени администратора:
regsvr32 comcntr.dll
Библиотека comcntr.dll находится в каталоге бинарных файлов платформы, например C:\Program Files\1cv8\8.3.14.1779\bin.

Вы запускаете стороннее приложение и выполняете в нем действия, приводящие к установлению внешнего соединения с информационной базой. В результате запускается COM-сервер, который и исполняет код на встроенном языке.

Важно: Если используется файловый вариант работы, то в сеансе, который получен с использованием внешнего соединения, не поддерживается работа фоновых заданий (подробнее в документации «1С:Предприятия»). Если вы хотите запускать и отлаживать фоновые задания при работе через внешнее соединение — используйте клиент-серверный вариант работы.
Отладка
Для отладки внешнего соединения требуется дополнительная настройка:

Web-сервисы

В общем случае при исполнении Web-сервисов могут быть задействованы следующие схемы работы:

Web-сервисы всегда исполняются в контексте сервера. Исполнение Web-сервиса начинается в результате того, что стороннее приложение обращается к операции Web-сервиса, который опубликован на веб-сервере. Можно опубликовать Web-сервис как файловой, так и клиент-серверной информационной базы.

В случае файловой базы она располагается на том же компьютере, что и веб-сервер. На этом компьютере модуль расширения веб-сервера создает специализированную серверную среду, в которой исполняется код на встроенном языке.

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

Запуск
Вы создаете в конфигурации Web-сервис и обновляете публикацию базы на веб-сервере каждый раз, когда меняется структура Web-сервиса.

Затем вы запускаете стороннее приложение и выполняете в нем действия, приводящие к вызову операции Web-сервиса. В результате исполняется код на встроенном языке, содержащийся в обработчике этой операции.

В файловом варианте работы код будет исполнен пока работает веб-сервер, в клиент-серверном варианте — пока работает кластер серверов.

Отладка
Для отладки Web-сервисов требуется дополнительная настройка (подробнее).

HTTP-сервисы

В общем случае при исполнении HTTP-сервисов могут быть задействованы следующие схемы работы:

HTTP-сервисы всегда исполняются в контексте сервера. Исполнение HTTP-сервиса начинается в результате того, что стороннее приложение обращается к методу HTTP-сервиса, который опубликован на веб-сервере. Можно опубликовать HTTP-сервис как файловой, так и клиент-серверной информационной базы.

В случае файловой базы она располагается на том же компьютере, что и веб-сервер. На этом компьютере модуль расширения веб-сервера создает специализированную серверную среду, в которой исполняется код на встроенном языке.

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

Запуск
Вы создаете в конфигурации HTTP-сервис и публикуете базу на веб-сервере.
Затем вы запускаете стороннее приложение и выполняете в нем действия, приводящие к вызову метода HTTP-сервиса. В результате исполняется код на встроенном языке, содержащийся в обработчике этого метода.
В файловом варианте работы код будет исполнен пока работает веб-сервер, в клиент-серверном варианте — пока работает кластер серверов.
Отладка
Для отладки HTTP-сервисов требуется дополнительная настройка (подробнее).

Стандартный интерфейс OData

В общем случае при обращении к стандартному интерфейсу OData могут быть задействованы следующие схемы работы:

Интерфейс OData позволяет модифицировать данные информационной базы, поэтому в результате обращения к его методам может выполняться запись объектов и, как следствие, исполнение обработчиков событий на встроенном языке. Все обработчики, связанные с модификацией данных, исполняются в контексте сервера. Можно опубликовать на веб-сервере интерфейс OData как файловой, так и клиент-серверной информационной базы.

В случае файловой базы она располагается на том же компьютере, что и веб-сервер. На этом компьютере модуль расширения веб-сервера создает специализированную серверную среду, в которой исполняется код на встроенном языке.

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

Запуск
Вы публикуете базу на веб-сервере. Затем создаете, например, внешнюю обработку и один раз выполняете ее, чтобы указать, какие объекты конфигурации будут доступны через интерфейс OData. Для этого во встроенном языке существует метод УстановитьСоставСтандартногоИнтерфейсаOData().

Затем вы запускаете стороннее приложение и выполняете в нем действия, приводящие к вызову метода интерфейса OData. В результате может быть выполнен код на встроенном языке, связанный с модификацией данных.

В файловом варианте работы код будет исполнен пока работает веб-сервер, в клиент-серверном варианте — пока работает кластер серверов.

Отладка
Для отладки интерфейса OData требуется дополнительная настройка (подробнее).