Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Как проверить на группу вводимый элемент
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 7.7
igmig65
Никак неполучается проверить что вводится новая строка (группа) или нет, в момент ввода интерактивно новой строки в справочник.
Редактируется в списке. В процедуре ПриВводеСтроки() ЭтоГруппа() проверяет текущую записанную строку, а не вводимую. В процедуру ВводНового() незаходит. как иначе непойму. Может кто подсказать. Срочно нужно. Суть в том что при вводе новой строки, если это элемент, нужно запускать обработку, которая все запишет, а если группа то стандартно. Можно как нибудь в Процедуре ПриВводеСтроки() както проверить, что вводится -группа или элемент?
Vofka
А в форме выбора нельзя определить что это элемент или группа и передать в вызывающую форму?
igmig65
Цитата
А в форме выбора нельзя определить что это элемент или группа и передать в вызывающую форму?

Так в форме выбора в Процедуре ПриВводеСтроки() и срабатывает, но проверяет ТекущийЭлемент(), тоесть активный на момент ввода, а не новый.
И передавать ненужно, если б определился. Короче вот код в форме списка справочника:
Процедура ПриВводеСтроки()
    Если  (НазваниеНабораПрав()<>"Администратор")И(ЭтоГруппа()=0) Тогда
        СтатусВозврата(0);
        Рд = Родитель;
        ОткрытьФорму("Обработка.СоздКонтрАгент",Рд);
    КонецЕсли;
КонецПроцедуры


та квот сдесь, если я нажимаю на кнопочку новая группа, ЭтоГруппа() возвращает для текущего (активного) элемента, тоесть если активный элемент, и я создаю группу, то ЭтоГруппа() возвращает 0
igmig65
Ничего никто непосоветует?
-=VJ=-
Цитата(igmig65 @ 14.09.11, 7:12) необходимо зарегистрироваться для просмотра ссылки
Никак неполучается проверить что вводится новая строка (группа) или нет, в момент ввода интерактивно новой строки в справочник.
Редактируется в списке. В процедуре ПриВводеСтроки() ЭтоГруппа() проверяет текущую записанную строку, а не вводимую. В процедуру ВводНового() незаходит. как иначе непойму. Может кто подсказать. Срочно нужно. Суть в том что при вводе новой строки, если это элемент, нужно запускать обработку, которая все запишет, а если группа то стандартно. Можно как нибудь в Процедуре ПриВводеСтроки() както проверить, что вводится -группа или элемент?


Посмотрите, как это сделано в любой стандартной конфе через УстДоступность()
igmig65
Цитата
Посмотрите, как это сделано в любой стандартной конфе через УстДоступность()

Смотрел уже. Дело в том, что пока я его незаписал, метод ЭтоГруппа() хоть в ПриВводеСтроки(), хоть в УстДоступность() возвращает значение не для вводимого, а для текущего на момент ввода элемента. Наверно придется по другому както реализовывать. В модуле формы списка справочника неполучается.
mister-x
Цитата
Так в форме выбора в Процедуре ПриВводеСтроки() и срабатывает...
Через
ПриРедактированииНовойСтроки()
працює:
ЭтоГруппа()
перевірено.
Просто призначення процедури ПриВводеСтроки() - візуально ще стрічку не введено і можна відмовити її вводити (перехват перед вводом стрічки), а от ПриРедактированииНовойСтроки() - вона вже візуально введена і можна щось аналізувати в процесі вводу.
igmig65
Цитата
ПриРедактированииНовойСтроки() - вона вже візуально введена і можна щось аналізувати в процесі вводу.

Это понятно, только хотелось бы достичь чтобы, если вводится элемент тострока невводилась интерактивно, а вводилась обработкой (есть причина), а вот группа чтоб вводилась интерактивно. А при редактировании новой строки СтатусВозврата(0), отменит только изменения в строке, а строка то уже введена. Кроче поэксперементирую с ПриРедактированииНовойСтроки().
mister-x
Гм, можна для створення елементу/групи повісити кнопку на формі списку, а саму панель інструментів заховати.
На жаль, перехвату вибору дій на панелі інструментів немає (стандартні можливості).
igmig65
Выход нашел. Установил в справочнике редактирование в диалоге. И уже в форме элемента в ВводНового() вставил проверку. Соответственно тут ненужно проверять на группу, так как у группы своя форма.
Тему можно закрыть. Всем спасибо.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.