@vendettametal

Как окрасить колонки в таблице 1С?

Нужно программно окрасить колонку в форме списка документов с помощью чек-бокса в Форме документа,как правильно обратиться к этим свойствам,то есть имеются две формы изменение значения чекбокса должно изменять цвет колонки в другой форме,как это сделать ?
  • Вопрос задан
  • 3205 просмотров
Пригласить эксперта
Ответы на вопрос 3
@Dementor
программист, архитектор, аналитик
Для начала рассмотрим какое предназначение форм у документа. Форма списка документов - это визуальное представление набора записей в таблице СУБД. Форма самого документа - это визуальное представление значения свойств одной конкретной записи во все той же таблице СУБД.

Если на форму документа вынесли чекбокс, который никак не связан со значениями, которые хранятся в СУБД - забудьте про него. Такое значение не то, что на других формах нельзя обработать, даже при повторном открытии текущей формы оно не сохранится (за исключением автосохранения в настройках пользователя, но это совсем другая история).

Если чекбокс отражает существование реального значения в записи таблицы в СУБД, то его можно использовать и на форме списка. Что бы знать как это сделать, нужно знать вид используемых форм - обычные (типа Visual Studio) или управляемые (HTML-подобные). В первом случае, у списка есть события ПриВыводеСтроки и ПриПолученииДанных - в обоих вариантах доступны значения свойств выводимых записей и настройки их оформления - можно менять шрифты, фон и так далее. Во втором случае, все еще проще и без программирования - у самой формы есть настройки условного оформления и в визуальном конструкторе можно настроить как будут выглядеть какие из записей при наличии в них определенных значений. В последнем случае изменение условного оформления доступно не только программистам в конфигураторе, но и обычным пользователям в процессе их работы.
Ответ написан
fosihas
@fosihas
Автоматизации учета на 1С.
процедура ПриВыводеСтроки(, Событие ФормыСписка (прав.кл.мыши на список с выбрать свойство), можно задать изменение цвета
Ответ написан
Комментировать
@vendettametal Автор вопроса
Я реализовал все максимально топорно )
Процедура СписокПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки,ФормаДокумента,ФормаСписка,Флажок1,Колонка1,ДокументПолучен)
	       Если ОформлениеСтроки.Ячейки.Колонка1.Текст = "Полученны" Тогда 		
		
ОформлениеСтроки.Ячейки.Колонка1.ЦветФона = WebЦвета.БледноЗеленый;
	Иначе 
		
		ОформлениеСтроки.Ячейки.Колонка1.ЦветФона = WebЦвета.Красный;
	КонецЕсли
			 
КонецПроцедуры

А чекбокс в документе меняет текст на "получен"
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы