|
Табличное поле, цвет фона ячейки. | ☑ | ||
---|---|---|---|---|
0
sora_tm
25.02.12
✎
23:38
|
Добрый вечер!
Пишу обработку, все сделал, навожу внешний вид. Есть табличное поле в форме с типом ТаблицаЗначений. Она заполняется по нажатию кнопки на форме. Есть колонка "Контрагенты" ее хочу выделить. Процедура. Процедура ТиражиПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки) Если ДанныеСтроки=Неопределено Тогда Возврат; ИначеЕсли ДанныеСтроки=ЭлементыФормы.Тиражи.ТекущаяСтрока Тогда ОформлениеСтроки.ЦветФона=Новый Цвет(255,228,225); КонецЕсли; ОформлениеСтроки.Ячейки["Контрагент"].ЦветФона= Новый Цвет(0,228,225); КонецПроцедуры Проблема в том, что пока не заполнено табличное поле, и нету колонки, выскакивает ошибка, что нету этой колонки "Поле объекта не обнаружено (Контрагент)", если я заполняю Таб.поле, то процедура отрабатывает норм. Не могу понять, что сделать чтобы убрать ошибку. |
|||
1
vmv
25.02.12
✎
23:40
|
забыть про обработчик ПриВыводеСтроки() будет самым правильным, не важно какая у тебя платформа - условное оформление это должно делать
|
|||
2
vmv
25.02.12
✎
23:41
|
ТкСтр = Элемент.ТекущаяСтрока;
Если ТкСтр=Неопределено Тогда Возврат; ИначеЕсли ДанныеСтроки=ЭлементыФормы.Тиражи.ТекущаяСтрока Тогда ОформлениеСтроки.ЦветФона=Новый Цвет(255,228,225); КонецЕсли; так надо в этом ущербном методе) |
|||
3
PVV65
25.02.12
✎
23:46
|
(1)(2) Это ты к чему?
|
|||
4
sora_tm
25.02.12
✎
23:49
|
(2) Первое условие у меня отрабатывает норм, окрашивает выделенную строку, а вот с ячейкой ерунда. А почему метод ущербен? По форуму ищу везде его используют.
|
|||
5
PVV65
25.02.12
✎
23:50
|
(4) Думаю в (1) он имел ввиду использование ПриПолученииДанных, а в (2) ни чем не лучше (0).
|
|||
6
PVV65
25.02.12
✎
23:50
|
+(5) ... либо УФ.
|
|||
7
PVV65
25.02.12
✎
23:53
|
(0) Попробуй так
Процедура ТиражиПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки) Если ДанныеСтроки=Неопределено Тогда Возврат; Иначе ОформлениеСтроки.Ячейки["Контрагент"].ЦветФона= Новый Цвет(0,228,225); КонецЕсли; КонецПроцедуры |
|||
8
sora_tm
26.02.12
✎
00:14
|
(7) Спасибо за помощь, так я тоже пробовал, тоже самое :(
|
|||
9
sanja26
26.02.12
✎
00:15
|
может ячейку проверять на неопределено?
|
|||
10
sora_tm
26.02.12
✎
00:20
|
(9) Логично, но не могу найти как.
|
|||
11
sanja26
26.02.12
✎
00:22
|
ОформлениеСтроки.Ячейки.найтипоНаименованию("Контрагент")? не
|
|||
12
PVV65
26.02.12
✎
00:25
|
(8) Поставь точку останова На "Если" и посмотри, какое значение имеет ДанныеСтроки при отсутствии колонки Контрагент.
|
|||
13
PVV65
26.02.12
✎
00:26
|
+(12) У меня сомнения, что причина в этом.
|
|||
14
PVV65
26.02.12
✎
00:27
|
(9) (11) Не путай человека.
|
|||
15
sanja26
26.02.12
✎
00:28
|
(14) в иначе попадает ведь
|
|||
16
sora_tm
26.02.12
✎
00:30
|
(11) Метод объекта не обнаружен (НайтиПоНаименованию)
(12) Значение: СтрокаТаблицыЗначений |
|||
17
PVV65
26.02.12
✎
00:31
|
(15) Дык решать надо раньше.
|
|||
18
PVV65
26.02.12
✎
00:33
|
(16) ((2)) Это тип... Думая, что в (0) неверная информация. Данные ТП какие?
|
|||
19
PVV65
26.02.12
✎
00:36
|
+(18) глупость.
|
|||
20
sora_tm
26.02.12
✎
00:37
|
Как только открыта обработка, в ТП уже пустая строка висит. И соответственно с выделение изменение фона работает, а ячейку нет, тк нету колонки еще.
(18) Я сделал точку остановки и через "вычислить выражение" Посмотрел что в ДанныеСтроки. |
|||
21
PVV65
26.02.12
✎
00:38
|
(16) Т.е. тип СтрокаТаблицыЗначений.
Нажми плюсик и посмотри, какие колонки в этой строке есть. |
|||
22
PVV65
26.02.12
✎
00:39
|
(20) Ван момент плиз.
|
|||
23
sanja26
26.02.12
✎
00:39
|
может Колонки.Количество() проверять
|
|||
24
sora_tm
26.02.12
✎
00:41
|
(21) Нет плюса. Тип и Значение стоит СтрокаТаблицыЗначений.
|
|||
25
sora_tm
26.02.12
✎
00:45
|
(23) Да, получилось!
Спасибо огромное всем за помощь! |
|||
26
PVV65
26.02.12
✎
00:49
|
Да.. Что то вы ребята меня поставили в тупик. Это что же за программа, в которой срабатывает событие ТП ПриВыводеСтроки при полном отсутствии строк?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |