Не отрабатывает событие ПриИзменении

1. nikitmaslof 29.01.25 13:57 Сейчас в теме
Я не программист, просто пока учусь, ковыряюсь в 1с, пытаюсь разобраться что как. Ситуация такая, подскажите пожалуйста, хочу повесить на поле "Клиент" (Справочник) событие ПриИзменении, но оно почему-то не отрабатывает, хотя если ради эксперимента, ниже на форме есть поле "Комментарий и если на него это событие повесить, то все работает.
Прикрепленные файлы:
По теме из базы знаний
Найденные решения
18. RustamZz 29.01.25 14:39 Сейчас в теме
(17)
&НаСервере
Процедура УстановитьВидимостьПоляПартнер()
nikitmaslof; SlavaKron; +2 Ответить
23. SlavaKron 29.01.25 15:38 Сейчас в теме
Сделайте заимствование не события, а процедуры ПартнерПриИзменении(Элемент).
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. SlavaKron 29.01.25 14:04 Сейчас в теме
(1) Процедура-обработчик должна быть указана в событии ПриИзменении в свойствах элемента формы.
3. nikitmaslof 29.01.25 14:07 Сейчас в теме
(2) Указана конечно
Прикрепленные файлы:
4. user2107191 29.01.25 14:08 Сейчас в теме
(3)
Указана конечно
И даже в модуле есть?
nikitmaslof; +1 Ответить
5. nikitmaslof 29.01.25 14:08 Сейчас в теме
6. user2107191 29.01.25 14:10 Сейчас в теме
7. SlavaKron 29.01.25 14:12 Сейчас в теме
А покажите код процедуры. Директива компиляции &НаКлиенте присутствует? В конце концов, просто создайте обработчик заново, нажав на значок лупы, удалив старое название.
8. nikitmaslof 29.01.25 14:15 Сейчас в теме
(7) В коде просто тупо для теста 2 строки. Обработчик заново создавал и в т.ч. в ручную и удалял, все равно не работает.
Прикрепленные файлы:
9. SlavaKron 29.01.25 14:20 Сейчас в теме
(8) Возможно, расширение не прменилось.
13. nikitmaslof 29.01.25 14:27 Сейчас в теме
Так если это событие на другое поле повесить, на пример "Комментарий" то все работает.
(9)
15. Vlan 36 29.01.25 14:28 Сейчас в теме
(13) А если на Контрагента?
19. spacecraft 29.01.25 14:55 Сейчас в теме
(8) с чего решили, что в расширении не срабатывает?
Там тупо ошибка логическая.
НайтиПоНаименованию и передаете ссылку. Она никогда ничего не найдет.
Да и зачем искать ссылку, если она уже есть?
10. RustamZz 29.01.25 14:21 Сейчас в теме
(3) Значит отображается не поле Партнер!
11. Vlan 36 29.01.25 14:24 Сейчас в теме
(10) Там и Клиент, и Контрагент, и Партнер. Кого только нет. Вангую не ту закладку/страницу.
12. RustamZz 29.01.25 14:25 Сейчас в теме
14. пользователь 29.01.25 14:27
Сообщение было скрыто модератором.
...
17. nikitmaslof 29.01.25 14:35 Сейчас в теме
18. RustamZz 29.01.25 14:39 Сейчас в теме
(17)
&НаСервере
Процедура УстановитьВидимостьПоляПартнер()
nikitmaslof; SlavaKron; +2 Ответить
20. spacecraft 29.01.25 15:01 Сейчас в теме
(3) а имя процедуры обработчика какое?
22. nikitmaslof 29.01.25 15:31 Сейчас в теме
(20)Процедура ПриИзменении(Элемент)
16. nikitmaslof 29.01.25 14:35 Сейчас в теме
На контрагент тоже НЕ срабатывает, за то срабатывает на организацию если повесить
21. user2021728 29.01.25 15:14 Сейчас в теме
В форме документа Оказание услуг создана процедура для элемента Клиент (скрин.1)

Так как элемент Клиент имеет тип СправочникСсылка.Клиенты, выбираем обработчик Создать на клиенте и процедуру на сервере

В процедуре на сервере (для упрощения) напишем алгоритм с условием:
Если Объект.Клиент.Наименование = "" Тогда
Сообщить("Выберите наименование клиента из выпадающего списка");
КонецЕсли; (скрин 2)

В пользовательском режиме, к примеру, при создании или редактировании документа, если перейти из поля Клиент, не заполнив его, появится сообщение, указанное в процедуре (скрин 3)

Алгоритм заполнения процедуры с директивой на сервере зависит от задачи, которую ставит разработчик.
Прикрепленные файлы:
23. SlavaKron 29.01.25 15:38 Сейчас в теме
Сделайте заимствование не события, а процедуры ПартнерПриИзменении(Элемент).
24. nikitmaslof 29.01.25 15:47 Сейчас в теме
(23) Заработало!! Спасибо большое! Обалдеть.. А почему так ? Почему через заимствование события не работает ?
25. SlavaKron 29.01.25 15:51 Сейчас в теме
(24) Потому что обработчик привязан к 2-м элементам. Тут сразу 2 ошибки: не к тому элементу событие привязывали (нужен был ПартнерБезКЛ) и это не сработало бы в принципе, даже если бы к тому привязались.
Прикрепленные файлы:
26. nikitmaslof 29.01.25 16:18 Сейчас в теме
(25) Все я понял, суть уловил. Еще раз спасибо!
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот