Вход | Регистрация

1С:Предприятие ::

Метки: 

Как отловить событие на форме при переключении на "закладку" регистра сведений

Я
   DenisZav
 
10.10.17 - 18:28
В общем суть вопроса:
Есть например в БП 3.0 справочник Номенклатура.
У него есть основная форма элемента.
В этой форме есть "закладки" то есть ссылки на регистры сведений у которых ведущее измерение номенклатура, или на команды других объектов, неважно.
Например в типовой: Виды номенклатуры, счета учета номенклатуры, Штрихкоды.

Хочется отслеживать событие когда пользователь переключается между самой формой элемента ("закладка" Основное) и другими разделами.
Чтобы в этой открытой форме отслеживать событие когда она получает фокус и когда теряет.
 
  Рекламное место пустует
   craxx
 
1 - 10.10.17 - 18:32
событие ПриВыбореЗакладки(), не?
   Cyberhawk
 
2 - 10.10.17 - 18:35
Обработчики формы списка
   Cyberhawk
 
3 - 10.10.17 - 18:36
Из самой формы - той, из который выполняется переход - не отловить
   DenisZav
 
4 - 10.10.17 - 18:38
(1) Это не закладки, их поэтому в кавычках написал. Это всякие регистры сведений например или команды.
   DenisZav
 
5 - 10.10.17 - 18:38
(3) Пока что тоже не вижу как, собираю мнения, может кто знает заклинание.
   Mankubus
 
6 - 10.10.17 - 18:41
голосую за вариант "никак"
   craxx
 
7 - 10.10.17 - 18:50
(4) убрать нафиг автоматические, сформировать самому динамически и там уже отлавливать
   Mort
 
8 - 10.10.17 - 19:00
(0) А зачем это нужно отслеживать?
   DenisZav
 
9 - 10.10.17 - 19:06
(8) Да, разумеется есть вопрос зачем. Но ответ долгий, поэтому сразу не написал.

Ну в общем все это на тему дополнительных реквизитов и табличных частей у справочника номенклатура. Чтобы сами реквизиты и ТЧ были в справочнике. А форма под них отельная, которая не будет трогаться при обновлении. В частности в данном случае это группа реквизитов под блок для автоматизации производства.

Считывать\Обновлять эти реквизиты можно через "ВладелецФормы.Объект.ИмяРеквизита".
Но хотелось бы это дело скопом обновлять при потере фокуса этой формы.
Сами подобные формы закрываются ПОСЛЕ закрытия формы основного объекта, увы и к сожалению.
Кроме того если отслеживать события получения фокуса можно редактировать дополнительные реквизиты с существующих табличных частях а не только в новых. То есть считывать данные можно не только при открытии, но и при повторном переключении на эту форму.

В двух словах вот так. Чтобы было прям идеально надо эти события поймать. Пока что не вижу способа, собираю мнения коллективног разума))
   youalex
 
10 - 10.10.17 - 19:36
(9) >>Но хотелось бы это дело скопом обновлять при потере фокуса этой формы.

Оповестить/ОбработкаОповещения()


>>Сами подобные формы закрываются ПОСЛЕ закрытия формы основного объекта, увы и к сожалению.

Форма.ЗакрыватьПриЗакрытииВладельца
 
  Рекламное место пустует
   runoff_runoff
 
11 - 10.10.17 - 19:51
может ОкноКлиентскогоПриложения попробовать..
УправляемаяФорма.Окно
   runoff_runoff
 
12 - 10.10.17 - 19:52
при активизации строки в списке регистра анализировать ОкноКлиентскогоПриложения.Содержимое
   PiotrLoginov
 
13 - 10.10.17 - 20:45
(9) >>Считывать\Обновлять эти реквизиты можно через "ВладелецФормы.Объект.ИмяРеквизита".
А это по феншую вообще?


А вообще, события у формы-владельца не предусмотрено. Либо мучать события открываемых через командный интерфейс форм, либо менять командный интерфейс своим.
   DenisZav
 
14 - 11.10.17 - 17:22
(13)"А это по феншую вообще?" 
Затрудняюсь ответить точно. Язык динамический. Одна форма открыта на основании другой. Владелец всегда доступен. Дочерняя форма смотрит что там в родительской.
Это можно и в подборах использовать. Например если пользователь вернулся в документ и вид цен сменил, или еще что в этом духе.
   DenisZav
 
15 - 11.10.17 - 17:23
(10) Я имею ввиду порядок. Что сначала закрывается главное окно (Номенклатура), а потом окно этой вот вложенной формы.
То есть при закрытии обновить данные не получится. Потому что родительская форма уже закрыта.
Если бы было наоборот то можно было бы обновлять при закрытии.


Список тем форума
Рекламное место пустует   Рекламное место пустует
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.
Фредерик Брукс-младший
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует