Имя: Пароль:
1C
1С v8
Как сделать, чтобы управляемая форма обновлялась при изменении регистра?
,
0 DirecTwiX
 
03.06.12
03:19
На рабочем столе есть форма, которая показывает баланс. Нужно сделать, чтобы при изменении регистра бухгалтерии в ней вызывалась определённая функция.

Спасибо
1 Кокос
 
03.06.12
03:24
никак
2 DirecTwiX
 
03.06.12
03:25
А обработчик нельзя поставить?
3 IamAlexy
 
03.06.12
03:35
(1) думаешь оповещение не сработает?
4 Мимохожий Однако
 
03.06.12
07:28
ПолуОФФ: с каких пор баланс стал оперативным инструментом? Регламентированного отчета недостаточно?
5 DirecTwiX
 
03.06.12
13:33
(4) Для себя конфу написал. Под балансом подразумевал остаток по счёту.
6 Heckfy
 
03.06.12
13:39
Автообновление формы настроить, не?
7 DirecTwiX
 
03.06.12
13:56
(6) А как?)
8 ChAlex
 
03.06.12
14:03
(6) автообновление можно настроить на динамический список. а не на форму. Тут либо подключить обработчик ожидания и через какой-нибудь интервал проверять, но это не эффективно, а лучше настроить подписку на событие "ПриЗаписи" на регистр бухгалтерии и открывать твою обработку (только стоит открывать с определенным значением ключа уникальности формы, что бы открывалась одна и та же форма) а в форме уже в событии "ПриПовторномОткрытии" делать нужные действия
9 DirecTwiX
 
03.06.12
16:58
А подписку делать через ДобавитьОбработчик?
10 МастерВопросов
 
03.06.12
18:28
(3) +1 к вопросу.

Глобальный контекст (Global context)
Оповестить (Notify)
Синтаксис:

Оповестить(<ИмяСобытия>, <Параметр>, <Источник>)
Параметры:

<ИмяСобытия> (необязательный)

Тип: Строка.
Имя события. Может быть использовано для идентификации сообщений принимающими их формами.
<Параметр> (необязательный)

Тип: Произвольный.
Параметр сообщения. Могут быть переданы любые необходимые данные.
<Источник> (необязательный)

Тип: Произвольный.
Источник события. Например, в качестве источника может быть указана другая форма.
Описание:

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

Доступность:

Тонкий клиент, веб-клиент, толстый клиент.
Пример:

Оповестить("ЗакрытьФорму", , ЭтаФорма);


См. также:

Форма, событие ОбработкаОповещения
11 Азазелло
 
03.06.12
18:36
(10) сработает, только если сам пользователь является причиной изменения данных в регистрах. А если кто-то другой проведет документ, то оповещай-не оповещай, смысла не будет.
12 Мимохожий Однако
 
03.06.12
19:03
(5)...Что ж.. продолжу...Зачем видеть остаток счета на форме? Отчета недостаточно? Для чего нужна подобная оперативность?
13 Aleksey
 
03.06.12
19:16
(12) Ну например АРМ операциониста. Когда после проведения заявки операционист видить что пора делать реализацию
14 Азазелло
 
03.06.12
20:52
(13) кнопочку обновления отображения данных добавить и пусть оператор ее тыркает периодически. либо автообновление делать через обработку ожидания.
15 Aleksey
 
03.06.12
20:58
(14) Ну и смысл лишний раз запрашивать данные, если они не поменялись?
16 Мимохожий Однако
 
03.06.12
21:23
(13)Хотелось бы услышать автора ))) ИМХО, никакого практического смысла не вижу.
17 DirecTwiX
 
03.06.12
21:51
(16) Сам писал простенькую конфу. Проводки по счетам и т.д. Есть активный счёт Наличка, где можно посмотреть, сколько сейчас должно быть денег на руках. На рабочем столе есть форма, в которой выведен Баланс - число денег на руках. Хотел, чтобы при добавлении документа это число обновлялось. Думаю, Оповестить будет в самый раз. Сейчас попробую
18 DirecTwiX
 
03.06.12
21:55
Теперь возник вопрос... Как получить форму с рабочего стола?
Вот тут что-то подобное пытались, но ответ так и не нашли: v8: Открытые формы на рабочем столе 1С 8.2
19 DirecTwiX
 
03.06.12
22:01
Тут тот же парень спрашивал, но ответа тоже не получил: http://www.1c-galaxy.ru/forum4/topic316414/
20 DirecTwiX
 
03.06.12
22:18
Разобрался. В Оповестить можно не указывать "приемник" - тогда будут оповещены все открытые формы.

Вопрос: при удалении документы через Shift+Del вызывается какое-нибудь событие?
21 Heckfy
 
03.06.12
23:25
ПередУдалением() не?
22 experimentator76
 
03.06.12
23:40
оповеститьобизменении
23 ChAlex
 
04.06.12
00:13
(9) Подписка - это отдельный объект в ветке "Общие" называется "Подписки на события". Начало отсюда, а уж метод реализации через оповестить, открыть форму и прочее - это уж как нравится или как получается