Предопределенная процедура при создании нового элемента справочника

1. user824565 07.07.23 11:15 Сейчас в теме
Есть справочник, у которого есть два поля Спр1 и Спр2. Эти поля заполняются из справочников соответственно Спр1 и Спр2.
Спр2 подчинен Спр1
Задача: Поле Спр2 должно быть не доступным, пока не выбран Спр1.
Получается нужно задействовать 2 процедуры? ПриСозданииНовогоЭлементаСправочника - чтобы сразу делать поле Недоступным. (Или просто в настройках выключить доступность)?!
И вторая процедура привязана к полю Спр1 ПриИзменении() в которой прописано, что доступно при заполненном Спр1 и недоступным при пустом Спр1...
Вопрос: 1. Как называется предопределенная процедура ПриСозданииНовогоЭлементаСправочника?
2. Как обратиться к полю Спр2 и выкл/вкл его доступность? Элементы.Спр2.Доступность = Ложь/Истина?
По теме из базы знаний
Найденные решения
4. dandykry 10 07.07.23 14:44 Сейчас в теме
(1)
&НаКлиентеНаСервереБезКонтекста
Процедура УстановитьДоступностьПоляВвода(Форма)

Форма.Элементы.Спр2.Доступность = ЗначениеЗаполнено(Форма.Объект.Спр1);

КонецПроцедуры

&НаКлиенте
Процедура Спр1ПриИзменении(Элемент)

УстановитьДоступностьПоляВвода(ЭтотОбъект);

КонецПроцедуры

&НаСервере
Процедура УстановитьДоступностьПоляВвода()

УстановитьДоступностьПоляВвода(ЭтотОбъект);

КонецПроцедуры
Показать
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
4. dandykry 10 07.07.23 14:44 Сейчас в теме
(1)
&НаКлиентеНаСервереБезКонтекста
Процедура УстановитьДоступностьПоляВвода(Форма)

Форма.Элементы.Спр2.Доступность = ЗначениеЗаполнено(Форма.Объект.Спр1);

КонецПроцедуры

&НаКлиенте
Процедура Спр1ПриИзменении(Элемент)

УстановитьДоступностьПоляВвода(ЭтотОбъект);

КонецПроцедуры

&НаСервере
Процедура УстановитьДоступностьПоляВвода()

УстановитьДоступностьПоляВвода(ЭтотОбъект);

КонецПроцедуры
Показать
9. user824565 08.07.23 09:19 Сейчас в теме
(4)Полагаю, это и будет решением. Пошел воять. Спасибо!
10. user824565 08.07.23 21:01 Сейчас в теме
(4)
&НаКлиентеНаСервереБезКонтекста
Процедура УстановитьДоступностьПоляВвода(Форма)

Форма.Элементы.Спр2.Доступность = ЗначениеЗаполнено(Форма.Объект.Спр1);

КонецПроцедуры

&НаКлиенте
Процедура Спр1ПриИзменении(Элемент)

УстановитьДоступностьПоляВвода(ЭтотОбъект);

КонецПроцедуры

&НаСервере
Процедура УстановитьДоступностьПоляВвода()

УстановитьДоступностьПоляВвода(ЭтотОбъект);

КонецПроцедуры
Показать


А для чего этот кусок кода:
&НаСервере
Процедура УстановитьДоступностьПоляВвода()

УстановитьДоступностьПоляВвода(ЭтотОбъект);

КонецПроцедуры

?
13. dandykry 10 10.07.23 08:35 Сейчас в теме
(10)

&НаСервере
Процедура ПриСозданииНаСервере()

УстановитьДоступностьПоляВвода(ЭтотОбъект);

КонецПроцедуры



Вот так хотел написать
11. user824565 08.07.23 21:13 Сейчас в теме
(4) и есть ли смысл ставить директиву &НаКлиентеНаСервереБезКонтекста
если все равно передается весь объект?!
14. dandykry 10 10.07.23 08:35 Сейчас в теме
(11) Чтобы можно было ее вызывать и с клиента и с сервера, контекст будет сохраняться, передаваться между клиентом и сервером ничего не должно
12. user824565 08.07.23 21:25 Сейчас в теме
(4) Не проще обойтись одной процедурой:
&НаКлиенте
Процедура Спр1ПриИзменении()
Элементы.Спр2.Доступность = ЗначениеЗаполнено(Объект.Спр1);
КонецПроцедуры
2. user-z99999 67 07.07.23 11:41 Сейчас в теме
СвязиПараметровВыбора - свойство поля (будет одно поле зависеть от значений другого)

Кажется можно без программирования, настройками всё сделать.
3. dandykry 10 07.07.23 14:41 Сейчас в теме
(2) и как при помощи этого свойства управлять доступностью поля выбора?
5. Fatenm 07.07.23 14:48 Сейчас в теме
(3) почему поле выбора? я что-то пропустил и где-то предварительно формируется список выбора? или все же речь идет о поле ввода?
7. dandykry 10 07.07.23 15:17 Сейчас в теме
(5) Поле ввода* получилось "на что смотрю, то и пишу"
6. karamazoff 96 07.07.23 15:10 Сейчас в теме
Посмотрите как в типовых сделан выбор контрагента и договора, учитесь учится, без обид
8. user824565 08.07.23 09:18 Сейчас в теме
(6) Какие обиды когда "пинают" не читать толмут, а на конкретный пример. Только Большое Спасибо!
Оставьте свое сообщение

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