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

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) тебе именно программно нужно ?
Настрой просто в конфигураторе условное оформление формы, своей табличной части.
Программно долго будешь парится отлаживать.
Или настрой в конфигураторе, потом отладчиком зайди, посмотри как там все настроилось по нормальному - и уже программно воспроизводи точно такую же структуру условного оформления.
+
Внимание! Тема сдана в архив

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