Здравствуйте. Суть проблемы вот в чем, непосредственно на клиентских машинах есть доступ к устройствам, которым нужно отправлять данные(отправка выполняется в локальной сети по http, на устройстве работает rest сервис). Отправка производится с клиента(тонкий клиент). Перенести эту задачу на сервер - не возможно по ряду причин. Пожалуйста, подскажите можно ли на клиенте выполнить код на фоне не блокируя интерфейс пользователя?
---
Такой же вопрос уже давно и у меня возникает. Создавала тему Асинхронный вызов клиентской процедуры.
Нормального решения пока нет, как вариант - запускать отдельный сеанс + обработчик ожидания.
Для тех, кто спрашивает, зачем, тот вот два примера:
1) клиентская машина находится в защищенной сети для обмена с федеральной системой (в частности, Суперсервис МинОбра), обмен возможен только с этой машины (кластер доступа к защищенной сети не имеет), производить обмен нужно каждую минуту (решено через обработчик ожидания).
2) генерация нескольких объемных Word-документов, при этом на сервере компоненты офиса не установлены (генерация на клиенте).
---
Перенести эту задачу на сервер - не возможно по ряду причин
Например?
---
Это устройство - регистратор выбытия. Каждый регистратор выбытия привязан к определенному подразделению. Физически он должен находится в подразделении, раз в 24 часа он проверяет свое местоположение. Если он будет включен в другом месте то его ждет блокировка.
---
эээ....Пусть это устройство физически находится где угодно, доступ к нему по сети есть с сервера?
Какая разница, что будет источником REST-запроса с нужными параметрами к этому устройству: клиентское приложение или сервер 1С?
---
да вы правы, мысль понял, спасибо
---
обработчик ожидания в отдельном сеансе
---
ок, спасибо за ответ
---
Такой же вопрос уже давно и у меня возникает. Создавала тему Асинхронный вызов клиентской процедуры.
Нормального решения пока нет, как вариант - запускать отдельный сеанс + обработчик ожидания.
Для тех, кто спрашивает, зачем, тот вот два примера:
1) клиентская машина находится в защищенной сети для обмена с федеральной системой (в частности, Суперсервис МинОбра), обмен возможен только с этой машины (кластер доступа к защищенной сети не имеет), производить обмен нужно каждую минуту (решено через обработчик ожидания).
2) генерация нескольких объемных Word-документов, при этом на сервере компоненты офиса не установлены (генерация на клиенте).
---
1. Дать доступ к защищенному контуру серверу(кластеру) - не большая проблема, думаю.
2. Установить таки Word/OpenOffice/LibreOffice на сервер - не большая проблема.
---
Пусть обмен происходит посредством файловой базы на данной машине. А нормальная серверная рабочая база будет забирать результаты обмена из файловой (на этой же машине).
---
(10)
Нет, делаю это для тиражного продукта, там нельзя навязывать пользователю условия, вроде "хочешь пользоваться, настраивай проксю на сервер", там нужна вариативность ;)
Если бы для себя, то да, тут делай, что хочешь, конечно.
---
Так как бы это и есть по-сути вариативность: если есть возможность выполнять все на сервере - выполняем, если нет - ну придется извращаться и запускать второй сеанс с обработчиком ожидания.
---
да, так и сделано. Про "на клиенте" - выражаю мнение тех пользователей, кто не может настроить на сервере и "извращаться" тоже не хотят :)
---
https://its.1c.ru/db/metod8dev/content/5918/hdoc
---
{Обработка.ВыполнениеРегламентныхЗаданийНаКлиенте.Форма.ВыполнениеРегламентныхЗаданийНаКлиенте.Форма(210,41)}: Переменная не определена (ЭтотОбъект)
 ЗапуститьВыполнениеРегламентныхЗаданий(<<?>>ЭтотОбъект.ТаблицаРегламентныхЗаданий);

Запускаю из УТ 10.3.
Толстый клиент (обычное приложение)
***

Не пробовали запускать?