Имя: Пароль:
1C
1С v8
Подписка на событие. Как отловить событие другому пользователю?
0 totparen
 
29.03.12
09:26
Создал в конфигурации документ, создал подписку на событие "ПриЗаписи" этого документа, прописал в обработчике подписки

Оповестить("ОбновитьЖурналЗаказов");

Создал обработку с формой, в ОбработкаОповещения, для формы прописал код

Сообщить(ИмяСобытия);

Завёл двух пользователей. Если пользователь1 запишет документ, то пользователь2 не видит сообщения, при открытой форме обработки.

Что нужно сделать, что бы второй пользователь отлавливал получал подписку?
1 lxs
 
29.03.12
09:29
Сдается мне - РС + ПодключитьОбработчикОжидания()
2 totparen
 
29.03.12
09:39
(1) что такое РС?
3 lxs
 
29.03.12
09:56
Регистр сведений
4 ДенисЧ
 
29.03.12
09:57
(2) Реактивный Снаряд
5 lxs
 
29.03.12
10:02
А вообще на 8.2 (УФ) реализовано интервальное автообновление списков.
6 totparen
 
29.03.12
10:03
(1) То есть это мне писать данные в РС и периодически регистр сведений опрашивать?
На кой тогда нужна подписка?

(5) Гуд. Но эта фишка не катит, если список формируется на основании запроса.
7 Живой Ископаемый
 
29.03.12
10:04
2(6) мы не знаем зачем ты связался с подпиской
8 totparen
 
29.03.12
10:08
То что советуют в (1), вообще никакого отношения к подписке не имеет.
9 Живой Ископаемый
 
29.03.12
10:09
и это правильно
10 lxs
 
29.03.12
10:09
(8) Правильно. потому что (7)
11 totparen
 
29.03.12
10:12
(10) к чему эти вопрсы? Почему бы ещё не спросить - Почему ты это решил делать на 1С, а не в екселе.

По существу знает кто-нибудь ответ?
12 Живой Ископаемый
 
29.03.12
10:13
2(11) на какой вопрос?
13 Живой Ископаемый
 
29.03.12
10:14
по существу отвечено в (1) подписка тебе не вперлась. разве что только как вспомогательный механизм
14 totparen
 
29.03.12
10:16
(13) то есть через подписку такая задумка не работает?
15 lxs
 
29.03.12
10:17
(11) ты не выпендривайся, а вкуривай, то, о чем тебе пишут люди. Все, что касается оповещений, работает в рамках только твоего сеанса. Данные в базе доступны каждому пользователю (внезапно, да?) с учетом его полномочий. Форма списка при открытии подключает обработчик, который контролит ДАННЫЕ в РС, а значит в онлайне узнает об изменениях.
16 MSII
 
29.03.12
10:17
(11) По сути - или ДС с автообновлением или РС. Подписку можешь использовать, чтобы типовой функционал не трогать.
17 Живой Ископаемый
 
29.03.12
10:18
2(14)Подписка не для того чтобы передавать сообщения между пользователями. Это триггер, если так понятнее.
18 Живой Ископаемый
 
29.03.12
10:22
триггер делает что-то с базой данных. А то, что ты хочешь реализовать - это лиссенер(слушатель) в рамках другого сеанса, который бы реагировал на что-то, например на взведенный (да, и подпиской тоже) флаг.
19 totparen
 
29.03.12
11:00
Не знал, что подписка  работает в рамках лишь одного сеанса.
20 totparen
 
01.04.12
08:40
(15) Если бы вы сразу в (1) написали, что оповещения работают только в рамках сеанса, вся последующая полемика не имела бы смысла.

Но даже при предложенном решении (РС + ПодключитьОбработчикОжидания()), не совсем понятно, как это можно организовать удаление из РС признака того, что следует обновить данные...
21 Живой Ископаемый
 
01.04.12
10:16
2(20) будет ли неожиданностью сказать, что весь код выполняется в рамках одного  сеанса? И если один сеанс хочет выполнить код в другом сеансе, то он должен контролировать этот сеанс. Например по КОМ
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.