Имя: Пароль:
1C
1С v8
как оповестить пользователей после выполнения фонового задания на сервере
0 ChMikle
 
02.04.21
16:43
В модуль управляемого приложения вставил в процедуру ПриНачалеРаботыСистемы()
глОбработкаОповещения(...);
там же описал ее &НаКлиенте глОбработкаОповещения(...) экспорт
создал регламентное задание , после его окончания хочу передать сообщение , не видит эту процедуру ...
1 polosov
 
02.04.21
16:46
(0) Модуль управляемого приложения клиентский. Фоновое задание на сервере.
2 ChMikle
 
02.04.21
16:47
(1) понимаю :) как подженить-то ?
3 acanta
 
02.04.21
16:48
Ждите прилива..
4 polosov
 
02.04.21
16:51
(2) Полоска ниже колена, а что-то чушь какую-то пишешь. Тема оповещений клиентов из фоновых обсасывалась тысячи раз.
Фоновое пишет в РС. Обработка ожидания на клиенте забирает и сообщает. Это один из множества вариантов.
5 ChMikle
 
02.04.21
16:52
(1) можно писать в регистр сведений результаты выполнения , а потом вытягивать их функцией через обработкаоповещения(), а без перезаписи
6 ChMikle
 
02.04.21
16:53
(4)>>Полоска ниже колена, а что-то чушь какую-то пишешь.
Может прогрессивное человечество уже придумало упрощенный вариант :). Без РС ...
7 Вафель
 
02.04.21
16:54
сервер взаимодействия или лонг полинг ака запрос в обработке ожидания
8 polosov
 
02.04.21
16:55
(6) Да, пользователям можно писать в Slack, телегу etc
9 ChMikle
 
02.04.21
16:55
(8) надо в 1С
10 Вафель
 
02.04.21
16:56
(8) можно по старинке на почту
11 Garykom
 
гуру
02.04.21
16:56
(6) Давно придумало, есть https://its.1c.ru/db/v8310doc#bookmark:dev:TI000000819
12 Garykom
 
гуру
02.04.21
16:57
(11)+ "20.3.10. Работа с временным хранилищем в фоновом задании
В механизме работы с временным хранилищем есть возможность передать данные из фонового задания в сеанс, инициировавший фоновое задание. Для такой передачи следует в родительском сеансе поместить во временное хранилище пустое значение (с помощью метода ПоместитьВоВременноеХранилище()), указав какой-либо идентификатор создаваемого временного хранилища (параметр Адрес). Затем полученный адрес передать в фоновое задание через параметры фонового задания. Далее, если в фоновом задании этот адрес использовать в качестве значения параметра Адрес метода ПоместитьВоВРеменноеХранилище(), то результат будет скопирован в сеанс, из которого было запущено фоновое задание.

Данные, помещенные во временное хранилище в фоновом задании, не будут доступны из родительского сеанса до момента завершения фонового задания."
13 polosov
 
02.04.21
16:59
(12) У него инициатор регламент.
14 ChMikle
 
02.04.21
16:59
(12) эта информация будет выскакивать только в том сеансе в котором запускали фоновое задание , мне надо чтобы на сервере выполнилось и разослал нужным пользователям информацию.
15 ChMikle
 
02.04.21
17:00
(13) только через РС , по другому никак ?
16 Вафель
 
02.04.21
17:01
сервер взаимодействия дорого?
а кстати сколько оно стоит?
17 ChMikle
 
02.04.21
17:02
(16) не вариант
18 polosov
 
02.04.21
17:02
(15) Можно файл писать, в комментарий какого-нибудь документ наконец. Вариантов много.
19 ChMikle
 
02.04.21
17:04
(18) смысл понятен, что куда-то писать с фонового задания, а оттуда доставать уже в сеансе обработкой оповещения, я думал может что-то проще придумали ...
20 программистище
 
02.04.21
17:04
(16) я так понимаю только корп лицензия, отдельно не продается
21 Вафель
 
02.04.21
17:06
(17) можно колхозный вариант. микросервис и внешняя компонента на сокетах
22 ChMikle
 
02.04.21
17:07
(21) нееее :)
23 Kassern
 
02.04.21
17:07
(16) бесплатно, если на серве диалога, но есть ограничения
24 Garykom
 
гуру
02.04.21
17:09
Если конфа на БСП то там уже сть нужный РС и функции работы с ним
25 ChMikle
 
02.04.21
17:11
(24) нет не БСП, но это в принципе не сложно написать.  Не охота , думал с каким-нибудь подвывертом придумали что-то более простое, сразу передавать
26 Garykom
 
гуру
02.04.21
17:12
(25) ты пришел к классическому "сообщение с сервера на клиент" ))
27 программистище
 
02.04.21
17:15
Ну вообще странно, сервер берет данные с клиента, обрабатывает их и возвращает результат, а событий Сервер->Клиент нет
28 Вафель
 
02.04.21
17:15
(25) ну так придумали, но тебе не нравится
29 Вафель
 
02.04.21
17:16
(27) есть конечно, но только для того клиента что вызвал
30 polosov
 
02.04.21
17:20
(27) С чего ты взял, что данные берет с клиента?
У него регламентное задание стартует по расписанию на севрере.
31 ДНН
 
02.04.21
17:23
32 ChMikle
 
02.04.21
17:24
(31) спасибо , но есть ньюанс , надо еще задавать в 1С вопрос и вызывать обработку ... так что не совсем то ...
33 ДНН
 
02.04.21
17:51
(32) из внешнего события и задавай вопрос и вызывай обработку. Компонента передаст сигнал с сервера, что все выполнено, а дальше делай что хочешь средствами 1С
34 polosov
 
02.04.21
18:06
(33) Следующий вопрос будет: "а как мне хранить IP адреса клиентов?
35 ChMikle
 
05.04.21
15:00
Следующий вопрос : "Как сделать чтобы при нажатии на выбранное сообщение , открывалась (запускалась) обработка с заданными параметрами созданиянасервере " ? :)
36 Kassern
 
05.04.21
15:15
(35) сделай свою форму оповещения с возможности запуска обработки
37 ChMikle
 
05.04.21
15:16
(36) да как-то не хотелось бы
38 ChMikle
 
05.04.21
15:18
в ПоказатьОповещениеПользователю() вроде есть обработка нажатия , но как параметры передать  ...
39 Kassern
 
05.04.21
15:18
(37) ты можешь генерить ссылку на форму обработки, а далее заставлять юзверов ее копировать, нашимать шифт+Ф11 и вставлять)
40 ChMikle
 
05.04.21
15:21
(39) хня какая-то получится ,хочется чтобы всплвло окно оповещения , юзер через 5 минут ткнул в нее и открылась обработочка (с заданными параметрами при открытии)
41 Cthulhu
 
05.04.21
16:16

// без обработок ожидания?.. кхм, ну если все коиенты традиционно на виндовозах ездиют...
Для каждого Коннект из ПолучитьСоединенияИнформационнойБазы()
Цикл Если Коннект.ИмяПриложения = "1CV8C" //ну можно еще .ИмяПользователя проверить....
Тогда ЗапуститьПриложение("MSG /time:1000 /server:" + СокрЛП(Коннект.ИмяКомпьютера)
+ " * " + "тут никого нет?..") КонецЕсли КонецЦикла;
42 ChMikle
 
05.04.21
17:02
+(40) сделал через описаниеоповещения ...
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн