Тип: Булево. Свойство указывает, нужно ли в ячейке отображать отметку незаполненного или нет. Если свойство имеет значение Истина, то независимо от хранимых в ячейке данных, будет отображаться отметка незаполненного, если Ложь, то независимо от хранимых в ячейке данных, отметка отображаться не будет.
Полное описание, параметры и ограничения
ОформлениеЯчейки.ОтметкаНезаполненного (CellAppearance.MarkIncomplete)
ОформлениеЯчейки (CellAppearance)
ОтметкаНезаполненного (MarkIncomplete)
Доступен, начиная с версии 8.0.
Использование:
Чтение и запись.
Описание:
Тип: Булево.
Свойство указывает, нужно ли в ячейке отображать отметку незаполненного или нет.
Если свойство имеет значение Истина, то независимо от хранимых в ячейке данных, будет отображаться отметка незаполненного, если Ложь, то независимо от хранимых в ячейке данных, отметка отображаться не будет.
Доступность:
Толстый клиент.
Использование в версии:
Доступен, начиная с версии 8.0.
Методическая информация
Практические примеры
Выделить количество, не меняя данные товара
Вместо голого числа выводим понятный текст Осталось: 3. Данные своей книги остаются числом 3; оформление не становится способом записи связанной колонки.
Где и как запускать
Полный модуль своей обычной формы; толстый клиент. Оформление текущей строки, не обработчик управляемой формы.
Подготовка
Создайте отдельную внешнюю обработку с обычной формой в учебной базе. Запускайте толстым клиентом с обычными формами.
Добавьте реквизит Товары (ТаблицаЗначений), табличное поле ТаблицаТоваров с Данные = Товары и обычную кнопку УчебнаяКоманда вне таблицы.
Событие ПриОткрытии свяжите с одноимённой процедурой. Нажатие кнопки вручную не назначайте: оно устанавливается объектом Действие. Экспортная процедура ПроверитьОформлениеЯчейки(Элемент) получает кнопку формы; это не событие редактора ячейки.
Каждый урок — полный модуль отдельной копии этой формы. Колонки и две строки создаются заново только в своём реквизите. Код нельзя переносить в рабочую таблицу без адаптации.
Процедура ПриОткрытии()
Товары = Новый ТаблицаЗначений;
Товары.Колонки.Добавить("Код", Новый ОписаниеТипов("Строка"));
Товары.Колонки.Добавить("Наименование", Новый ОписаниеТипов("Строка"));
Товары.Колонки.Добавить("Количество", Новый ОписаниеТипов("Число"));
Товары.Колонки.Добавить("Выбран", Новый ОписаниеТипов("Булево"));
Книга = Товары.Добавить();
Книга.Код = "A-01";
Книга.Наименование = "Книга";
Книга.Количество = 3;
Книга.Выбран = Ложь;
Ручка = Товары.Добавить();
Ручка.Код = "B-02";
Ручка.Наименование = "Ручка";
Ручка.Количество = 1;
Ручка.Выбран = Ложь;
Таблица = ЭтаФорма.ЭлементыФормы.ТаблицаТоваров;
Таблица.СоздатьКолонки();
Таблица.АвтоВводНовойСтроки = Ложь;
Если Товары.Количество() <> 2 Тогда
ВызватьИсключение "Ожидались два собственных учебных товара";
КонецЕсли;
Таблица.ТекущаяСтрока = Товары[0];
Кнопка = ЭтаФорма.ЭлементыФормы.УчебнаяКоманда;
Кнопка.УстановитьДействие("Нажатие", Новый Действие("ПроверитьОформлениеЯчейки"));
КонецПроцедуры
Процедура ПроверитьОформлениеЯчейки(Элемент) Экспорт
Таблица = ЭтаФорма.ЭлементыФормы.ТаблицаТоваров;
Текущая = Таблица.ТекущаяСтрока;
Если Текущая = Неопределено Тогда
Сообщить("Сначала выберите свою книгу или ручку");
Возврат;
КонецЕсли;
Оформление = Таблица.ОформлениеСтроки(Текущая);
Если Оформление = Неопределено Тогда
ВызватьИсключение "Не получено оформление собственной строки";
КонецЕсли;
Ячейка = Оформление.Ячейки["Количество"];
ИсходноеКоличество = Оформление.ДанныеСтроки.Количество;
Сообщить(Ячейка.Имя = "Количество");
Сообщить(Ячейка.Значение = ИсходноеКоличество);
Ячейка.Видимость = Истина;
Ячейка.Выравнивание = ГоризонтальноеПоложение.Право;
Ячейка.АвтоВысотаЯчейки = Истина;
Ячейка.ВысотаЯчейки = 2;
Ячейка.ТолькоПросмотр = Истина;
Ячейка.ОтметкаНезаполненного = Ложь;
Ячейка.Гиперссылка = Ложь;
Ячейка.ЦветТекста = Новый Цвет(24, 40, 60);
Ячейка.ЦветФона = Новый Цвет(235, 244, 255);
Ячейка.Шрифт = Новый Шрифт(Ячейка.Шрифт, , 12, Истина);
Ячейка.ОтображатьКартинку = Ложь;
Ячейка.ОтображатьФлажок = Ложь;
Ячейка.УстановитьТекст("Осталось: " + Строка(ИсходноеКоличество));
Сообщить(Ячейка.ОтображатьТекст);
Сообщить(Ячейка.Текст = "Осталось: " + Строка(ИсходноеКоличество));
Сообщить(Оформление.ДанныеСтроки.Количество = ИсходноеКоличество);
Сообщить(Товары.Итог("Количество") = 4);
КонецПроцедурыРазбор по шагам
Ячейки индексируются именем существующей колонки. Количество создана в этом же модуле; Имя только читается.
Значение только читаем: у связанной с данными колонки оно недоступно для записи. УстановитьТекст меняет представление, а не число в строке.
УстановитьТекст автоматически включает ОтображатьТекст. Остальные каналы изображения выключены явно.
АвтоВысотаЯчейки включает расчёт высоты; ВысотаЯчейки = 2 ограничивает её двумя строками текста, не двумя пикселями.
ОтметкаНезаполненного = Ложь скрывает визуальную отметку, не делает данные заполненными. ТолькоПросмотр ограничивает редактор этой ячейки, не права пользователя.
Как проверить результат
При первоначально выбранной книге: шесть Истина; текст Осталось: 3. Для ручки — Осталось: 1.
Итог Количество остаётся 4. При перерисовке оформление может пересчитаться.
Ожидаемый результат
Показано понятное представление числа с проверкой неизменности исходных данных.
На что обратить внимание
Для устойчивого оформления используйте событие ПриВыводеСтроки; этот пример исследует оформление текущей строки.
Ограничение АвтоВысотаЯчейки для предопределённой таблицы Ганта здесь не применяется: это собственная таблица значений.
Гиперссылка выключена: обработчик Выбор и переходы в рабочие объекты не требуются.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.