|
Не работает условное оформление в закрытом периоде | ☑ | ||
---|---|---|---|---|
0
Prog_man
05.06.24
✎
12:47
|
Добрый день
подскажите по сабжу, в открытом периоде работает УО, в закрытом нет |
|||
1
Волшебник
05.06.24
✎
12:48
|
Сказки
|
|||
2
Prog_man
05.06.24
✎
12:48
|
&НаСервере
Процедура мУстановитьУсловноеОформлениеКонтрагента() Если ЗначениеЗаполнено(Объект.Дата) Тогда мДата = Объект.Дата; Иначе мДата = ТекущаяДата(); КонецЕсли; Если ЗначениеЗаполнено(Объект.Контрагент.мЭДО) Тогда Если Объект.Контрагент.мЭДО и НачалоДня(Объект.Контрагент.мНачДатаЭДО) < КонецДня(мДата) Тогда Элементы.Контрагент.ЦветФона = WebЦвета.Бирюзовый; Иначе Элементы.Контрагент.ЦветФона = WebЦвета.Белый; КонецЕсли; КонецЕсли; КонецПроцедуры |
|||
3
Prog_man
05.06.24
✎
12:49
|
(1) дату запрета снимаю, все работает, если устанавливаю, то УО не работает включая дату запрета
|
|||
4
Prog_man
05.06.24
✎
12:50
|
вот это тоже рабочий код, и так же в закрытом периоде не работает
Если ЗначениеЗаполнено(Объект.Дата) Тогда мДата = КонецДня(Объект.Дата); Иначе мДата = КонецДня(ТекущаяДата()); КонецЕсли; //Вставка Если ЗначениеЗаполнено(Объект.Контрагент.мНачДатаЭДО) Тогда ЭлементУО = УсловноеОформление.Элементы.Добавить(); КомпоновкаДанныхКлиентСервер.ДобавитьОформляемоеПоле(ЭлементУО.Поля, "Контрагент"); ОбщегоНазначенияКлиентСервер.ДобавитьЭлементКомпоновки(ЭлементУО.Отбор, Объект.Контрагент.мНачДатаЭДО, ВидСравненияКомпоновкиДанных.Меньше, мДата); ЭлементУО.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.Бирюзовый); //КонецВставки КонецЕсли; |
|||
5
Prog_man
05.06.24
✎
12:51
|
платформа 8.3.23.1865, Бухгалтерия КОРП 3.0
|
|||
6
Prog_man
05.06.24
✎
12:52
|
Это глюк платформы?
|
|||
7
Ненавижу 1С
05.06.24
✎
12:55
|
1. сделайте отладку
2. проверьте, что другое условное оформление не перекрывает текущее |
|||
8
Ненавижу 1С
05.06.24
✎
12:55
|
(6) с точки зрения платформы никакого закрытого периода не существует
|
|||
9
Prog_man
05.06.24
✎
13:00
|
(7) отладка показывает все правильно на сравнении дат, другое условное не перекрывает (ну или я не нашел где). в открытом периоде все норм. в закрытом УО не работает
|
|||
10
Ненавижу 1С
05.06.24
✎
13:05
|
(9) в закрытом периоде этот код вообще в отладку попадает?
|
|||
11
Prog_man
05.06.24
✎
13:06
|
странно для табличных частей УО работает
|
|||
12
Prog_man
05.06.24
✎
13:07
|
(10) да, попадает
|
|||
13
Prog_man
05.06.24
✎
13:12
|
подскажите куда копать
|
|||
14
Ненавижу 1С
05.06.24
✎
13:13
|
(13) поставить точку останова в месте где условное оформление уже создано и посмотреть на него отладчиком
|
|||
15
youalex
05.06.24
✎
13:18
|
скорее всего доступность/толькопросмотр приоритетнее УО
|
|||
16
Prog_man
05.06.24
✎
13:18
|
(14) не совсем понял где поставить.
в строчке "Если Объект.Контрагент.мЭДО и НачалоДня(Объект.Контрагент.мНачДатаЭДО) < КонецДня(мДата) Тогда" показывает Истину |
|||
17
Prog_man
05.06.24
✎
13:19
|
(15) т.е это ограничение платформы ?
почему тогда в ТЧ УО работает? |
|||
18
youalex
05.06.24
✎
13:21
|
(13) попробуй например для эксперимента шрифт сделать полужирным в УО
|
|||
19
Prog_man
05.06.24
✎
13:37
|
(18) шрифт устанавливается жирным, не смотря на то, что условие не срабатывает
Объект.Контрагент.мНачДатаЭДО, ВидСравненияКомпоновкиДанных.Меньше, мДата); мНачДатаЭДО = 01.04.2024 мДата = 01.03.2024 |
|||
20
Ненавижу 1С
05.06.24
✎
13:42
|
всё таки миста лучше отладчика
|
|||
21
Prog_man
05.06.24
✎
13:49
|
не знаю чем цвет фона не зашел, вот такой код работает
|
|||
22
Prog_man
05.06.24
✎
13:50
|
&НаСервере
Процедура мУстановитьУсловноеОформлениеКонтрагента() Если ЗначениеЗаполнено(Объект.Дата) Тогда мДата = КонецДня(Объект.Дата); Иначе мДата = КонецДня(ТекущаяДата()); КонецЕсли; Если ЗначениеЗаполнено(Объект.Контрагент.мЭДО) Тогда Если Объект.Контрагент.мЭДО и НачалоДня(Объект.Контрагент.мНачДатаЭДО) < КонецДня(мДата) Тогда //Элементы.Контрагент.ЦветФона = WebЦвета.Бирюзовый; Элементы.Контрагент.Шрифт = Новый Шрифт(ШрифтыСтиля.ШрифтНовостей, , , Истина); //Жирный Иначе Элементы.Контрагент.Шрифт = Новый Шрифт(ШрифтыСтиля.ОбычныйШрифтТекста, , , ); КонецЕсли; КонецЕсли; КонецПроцедуры |
|||
23
Prog_man
05.06.24
✎
13:52
|
благодарю за советы
|
|||
24
youalex
05.06.24
✎
13:52
|
(19) вот здесь возможно неправильно
ОбщегоНазначенияКлиентСервер.ДобавитьЭлементКомпоновки(ЭлементУО.Отбор, Объект.Контрагент.мНачДатаЭДО ... из описания функции: // ИмяПоля - Строка - имя поля компоновки данных (заполняется всегда). а ты получается дату в этот параметр отдаешь |
|||
25
Prog_man
05.06.24
✎
14:01
|
(24) может и так, почему тогда в открытом периоде работает, а в закрытом нет)) ?
|
|||
26
Prog_man
05.06.24
✎
14:02
|
+ во (2) функции УО не вызываются
|
|||
27
Ненавижу 1С
05.06.24
✎
14:24
|
(15) проверил, видимо так оно и есть
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |