Имя: Пароль:
1C
1C 7.7
v7: Запрет копирования элементов справочника в форме списка
0 ЯнСмит
 
31.07.22
10:12
Привет! Подскажите кто в теме, а то что-то затупил конкретно, вообще нет идей ... если что ВводНового(ПрКоп,Праотец) в форме списка не работает.
1 Lazy Stranger
 
31.07.22
10:18
ПриВводеСтроки()
2 ЯнСмит
 
31.07.22
11:19
Замечательно ... и как понять что это копирование?
3 Lazy Stranger
 
31.07.22
11:37
например проверить наименование: если не пустое, то это копия
4 ЯнСмит
 
31.07.22
11:50
Пытался - но так не работает, вообще не дает добавить новый элемент =(
5 Харлампий Дымба
 
31.07.22
15:09
(4) >>вообще не дает добавить новый элемент + >> Запрет копирования элементов
Взаимоисключающе нет? Чего надо добиться-то?

А по теме: если надо разрешить вводить, но запретить вводить копированием, то просто зануляй все реквизиты нового элемента справочника в ПриРедактированииНовойСтроки()
6 ЯнСмит
 
31.07.22
23:19
(5) "просто зануляй все реквизиты нового элемента справочника в ПриРедактированииНовойСтроки()" ну это просто решение "в лоб", хотелось бы как-то поэлегантнее ))
7 Aleksey
 
31.07.22
23:37
(3) не взлетит
ПриВводеСтроки - отрабатывает ДО ввода строки, и при обращении к реквизитам строки, ты обращаешься к строке на которой у тебя стоит курсор, а не к новой строке. Т.е. по сути наименование будет заполнено всегда.
Т.е. единственный вроде как вариант это проверять в ПриРедактированииНовойСтроки(), потом удалять строку и обновлял форму если строку вводить нельзя
8 Aleksey
 
31.07.22
23:38
(6) ну можешь делать не  влоб
ПриВводеСтроки() - статусвозврата(0), т.е. запрещаем вводить строку
А на форму добавляешь кнопку по которой идет создания элемента.

Или поменять редактирование на диалог
9 Харлампий Дымба
 
01.08.22
02:03
(6) Куда уж элегатнее:

Процедура ПриРедактированииНовойСтроки()
Наименование="";
Для Инд=1 По Метаданные.Справочник(Вид()).Реквизит() Цикл
  УстановитьАтрибут(Метаданные.Справочник(Вид)Реквизит(Инд),"");
КонецЦикла;
КонецПроцедуры
ну или типа того - не проверял.

Хотя...
Надо ещё подумать, поискать решение поизящнее.
Можно, наверное, внешними компонентами разрулить, или свой перехватчик написать. В любом случае, сообщи окончательное решение - вдруг правда "в лоб" окажется  хуже, чем в другое место))