Запрет редактирования элемента ТЧ (Управляемые формы)

1. AndrewUs 11 23.07.18 15:00 Сейчас в теме
Здравствуйте!
Есть ТабличнаяЧасть1 с колонками "АктСписания", "Ведомость" и "ВидНоменклатуры".
И если "ВидНоменклатуры" заполнено, то ячейка колонки "АктСписания" недоступна для редактирования. Подскажите, пожалуйста с решением вопроса. Спасибо.
По теме из базы знаний
Найденные решения
6. antz 23.07.18 15:53 Сейчас в теме
(5)

ТекСтрока = Элементы.ТабличнаяЧасть1.ТекущиеДанные;
Если ТекСтрока <> Неопределено Тогда
       Элементы.ТабличнаяЧасть1АктСписания.ТолькоПросмотр = ЗначениеЗаполнено(ТекСтрока.ВидНоменклатуры);
КонецЕсли; 
7. Boneman 298 23.07.18 15:56 Сейчас в теме
(5) тебе именно программно нужно ?
Настрой просто в конфигураторе условное оформление формы, своей табличной части.
Программно долго будешь парится отлаживать.
Или настрой в конфигураторе, потом отладчиком зайди, посмотри как там все настроилось по нормальному - и уже программно воспроизводи точно такую же структуру условного оформления.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Pavel Rodinchenko 23.07.18 15:04 Сейчас в теме
На форме настроить условное оформление где для поля АктСписания указать "Только просмотр" = Истина при условии что "ВидНоменклатуры" - ЗначениеЗаполнено
YaroslavHolovatiy; Boneman; +2 Ответить
3. AndrewUs 11 23.07.18 15:19 Сейчас в теме
(2) Пытаюсь сделать так:
&НаКлиенте
Процедура ТабличнаяЧасть1ПриАктивизацииСтроки(Элемент)
	ТекСтрока = Элементы.ТабличнаяЧасть1.ТекущиеДанные;
	Если ЗначениеЗаполнено(ТекСтрока.ВидНоменклатуры) Тогда
		Элементы.ТабличнаяЧасть1АктСписания.ТолькоПросмотр = Истина;
	Иначе
		Элементы.ТабличнаяЧасть1АктСписания.ТолькоПросмотр = Ложь;
	КонецЕсли;	
КонецПроцедуры
Показать



Но не работает.
4. AndrewUs 11 23.07.18 15:22 Сейчас в теме
Увидел ошибку ... на форум выложил правильный код, а в модуле опечатка была, когда начал поправлять увидел. Спасибо. Работает.
5. AndrewUs 11 23.07.18 15:33 Сейчас в теме
Зато другая ошибка вывалилась:

"{Документ.СводСписанияПо10.Форма.ФормаДокумента.Форма(550)}: Значение не является значением объектного типа (ВидНоменклатуры)
Если ЗначениеЗаполнено(ТекСтрока.ВидНоменклатуры) Тогда"

Что с ней делать, непонятно.
6. antz 23.07.18 15:53 Сейчас в теме
(5)

ТекСтрока = Элементы.ТабличнаяЧасть1.ТекущиеДанные;
Если ТекСтрока <> Неопределено Тогда
       Элементы.ТабличнаяЧасть1АктСписания.ТолькоПросмотр = ЗначениеЗаполнено(ТекСтрока.ВидНоменклатуры);
КонецЕсли; 
8. AndrewUs 11 23.07.18 16:16 Сейчас в теме
(6) Спасибо, получилось.
(7) Я про условное оформление и забыл даже, спасибо. Но интерес программной реализации все равно остается.

Попробовал оба варианта, оба подходят.
7. Boneman 298 23.07.18 15:56 Сейчас в теме
(5) тебе именно программно нужно ?
Настрой просто в конфигураторе условное оформление формы, своей табличной части.
Программно долго будешь парится отлаживать.
Или настрой в конфигураторе, потом отладчиком зайди, посмотри как там все настроилось по нормальному - и уже программно воспроизводи точно такую же структуру условного оформления.
Оставьте свое сообщение

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