8.3 Программное изменение типа реквизита в табличной части документа

1. 11.01.17 14:11 Сейчас в теме
Добрый день, подскажите как программно изменять тип реквизита в тч документа. Например реквизит составного типа (Спр.Номенклатура и Строка) пользователь вводит наименование с клавиатуры если автоподбор по спр Номеклатура ничего не нашел, то оставлять в поле что ввел пользователь и продолжить редактирование документа дальше
Найденные решения
3. starik-2005 2707 11.01.17 14:16 Сейчас в теме
(2) при начале редактирования смотреть, какого типа элемент в поле, Если строка - ставить ограничение типа по строке, если номенклатура - по номенклатуре. Фактически тип поля не меняется при этом - просто вводимое значение ограничивается тем, что вводится.

С другой стороны, можно обрабатывать событие при вводе текста, а не при окончании ввода. Тогда всегда ограничивать тип справочником, а при вводе текста смотреть, что вводится. Если находится номенклатура - устанавливать ее, если не находится - просто в данные выбора передавать введенный текст.
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. temi4444 11.01.17 14:12 Сейчас в теме
Пробую сделать так:
&НаКлиенте
Процедура СоставНоменклатураСсылкаСтрокаОкончаниеВводаТекста(Элемент, Текст, ДанныеВыбора, ПараметрыПолученияДанных, СтандартнаяОбработка)
	Элементы.СоставНоменклатураСсылкаСтрока.ОграничениеТипа = Новый ОписаниеТипов("Строка");
КонецПроцедуры


но тогда меняется тип у всей колонки, а нужно чтоб только у текущей строки.
3. starik-2005 2707 11.01.17 14:16 Сейчас в теме
(2) при начале редактирования смотреть, какого типа элемент в поле, Если строка - ставить ограничение типа по строке, если номенклатура - по номенклатуре. Фактически тип поля не меняется при этом - просто вводимое значение ограничивается тем, что вводится.

С другой стороны, можно обрабатывать событие при вводе текста, а не при окончании ввода. Тогда всегда ограничивать тип справочником, а при вводе текста смотреть, что вводится. Если находится номенклатура - устанавливать ее, если не находится - просто в данные выбора передавать введенный текст.
Оставьте свое сообщение
Вакансии
Консультант-аналитик 1С
Нижний Новгород
зарплата от 100 000 руб.
Полный день

Разработчик 1С
Нижний Новгород
зарплата от 100 000 руб.
Полный день

Программист 1С
Екатеринбург
зарплата до 150 000 руб.
Полный день

Разработчик 1С
Санкт-Петербург
зарплата от 130 000 руб. до 170 000 руб.
Временный (на проект)

Программист, аналитик, эксперт 1С
Санкт-Петербург
По совместительству