Программная установка условного оормления (УФ)
Всем привет!
Необходимо по определенному условию зачеркивать строку и при обновлении или при повторном входе удалять ее. Нашла образец кода для установки этого зачеркнутого шрифта. Не совсем пойму, как его использовать.
Вот код моих процедур:
Итак, что непонятно:
1. Имя поля - ?
2. ЗначениеДляОтбора - ?
3. Мне нужна определенная строка(по условию), соответственно, по индексу мне подойдет, как правильно указать?
4. ПолеДляОформления - ?
Необходимо по определенному условию зачеркивать строку и при обновлении или при повторном входе удалять ее. Нашла образец кода для установки этого зачеркнутого шрифта. Не совсем пойму, как его использовать.
Вот код моих процедур:
&НаКлиенте
Процедура ПерсональныеПраваРучнПравоДоступаПриИзменении(Элемент)
ТекДанные = Элементы.ПерсональныеПрава.ТекущиеДанные;
Если Не ТекДанные = Неопределено Тогда
ПравоДоступа = Элементы.ПерсональныеПрава.ТекущиеДанные.ПравоДоступа;
Отбор = Новый Структура();
Отбор.Вставить("Право",ПравоДоступа);
МассивПовторБП = Объект.БазовыеПрава.НайтиСтроки(Отбор); //колонка
Если ЗначениеЗаполнено(МассивПовторБП) Тогда
Если ГруппаДоступаПомеченаНаУдаление(ПравоДоступа) Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю("Помеченные на удаление группы доступа не доступны для выбора!");
Элементы.ПерсональныеПрава.ТекущиеДанные.ПравоДоступа =
ПредопределенноеЗначение("Справочник.ГруппыДоступаРесурсов.ПустаяСсылка");
Иначе
ТекДанные.ВидРесурса = ПолучитьВидРесурса(ПравоДоступа);
Если ТекДанные.ВидРесурса = ПредопределенноеЗначение("Справочник.ВидыРесурсов.АД") Тогда
ТекДанные.Ресурс = ПредопределенноеЗначение("Справочник.Ресурсы.АД");
ТекДанные.ПользовательРесурсов = ПолучитьПользователяРесурса(ТекДанные.Ресурс, ТекДанные.Сотрудник);
ИначеЕсли ТекДанные.ВидРесурса = ПредопределенноеЗначение("Справочник.ВидыРесурсов.NEDAP") Тогда
ТекДанные.Ресурс = ПредопределенноеЗначение("Справочник.Ресурсы.NEDAP");
ТекДанные.ПользовательРесурсов = ПолучитьПользователяРесурса(ТекДанные.Ресурс,ТекДанные.Сотрудник);
Иначе
ТекДанные.Ресурс = ОбщиеМеханизмыСУМДСервер.ПолучитьРесурc(ТекДанные.ВидРесурса);
ТекДанные.ПользовательРесурсов = ПолучитьПользователяРесурса(ТекДанные.Ресурс,ТекДанные.Сотрудник);
КонецЕсли;
КонецЕсли;
Если ТекДанные.Ресурс <> ПредопределенноеЗначение("Справочник.Ресурсы.NEDAP") Тогда
ТекДанные.Расписание = ПредопределенноеЗначение("Справочник.Ресурсы.ПустаяСсылка");
КонецЕсли;
Иначе //зачеркнуть и удалить при обновлении или повторном входе
УсловноеОформлениеДляПовторяющихсяГД(ТекДанные);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура УсловноеОформлениеДляПовторяющихсяГД(ТекДанные)
ЭлементОформления = Список.УсловноеОформление.Элементы.Добавить();
ЭлементОтбора = ЭлементОформления.Отбор.Элементы.Добавить(тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(ИмяПоля);
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
Элементотбора.ПравоеЗначение = ЗначениеДляОтбора;
ЭлементОтбора.ПравоеЗначение = Новый ПолеКомпоновкиДанных(ИмяПоля);
ЭлементОтбора.Использование = Истина;
Элемент = ЭлементОформления.Оформление.Элементы[0];
ЭлементОформления.Оформление.УстановитьЗначениеПараметра("Шрифт", ШрифтыСтиля.ШрифтТекста.Зачеркивание);
Элемент.Использование = Истина;
ПолеОформления = ЭлементОформления.Поля.Элементы.Добавить();
ПолеОформления.Поле = Новый ПолеКомпоновкиДанных(ПолеДляОформления);
ПолеОформления.Использование = Истина;
КонецПроцедуры
ПоказатьИтак, что непонятно:
1. Имя поля - ?
2. ЗначениеДляОтбора - ?
3.
Элемент = ЭлементОформления.Оформление.Элементы[0];
4. ПолеДляОформления - ?
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот