Имя: Пароль:
1C
1С v8
Толстый клиент, можно ли текущую строку ТЧ документа поиметь...?
0 Злопчинский
 
09.09.15
01:43
.. то есть чтобы текущая строка документа выделялась жирным шрифтом?
если да - то пните со средней силой как это примерно делается.
спсб.
1 Злопчинский
 
09.09.15
01:52
блин.. 10 минут, ни одного поста... ;-)
2 patria0muerte
 
09.09.15
02:14
Что то типа этого:

Процедура ТабличнаяЧастьПриПолученииДанных(Элемент, ОформленияСтрок)
    
    ТекущиеДанные = Элемент.ТекущиеДанные;
    
    Если ТекущиеДанные = Неопределено Тогда
        Возврат;
    КонецЕсли;
    
    Для каждого ОформлениеСтроки Из ОформленияСтрок Цикл
        Если ОформлениеСтроки.ДанныеСтроки.НомерСтроки = ТекущиеДанные.НомерСтроки Тогда
            //Устанавливаем ЖИРНЫЙ шрифт строки в ОформлениеСтроки    
        Иначе
            //Устанавливаем ОБЫЧНЫЙ шрифт строки в ОформлениеСтроки    
        КонецЕсли;     
    КонецЦикла;
КонецПроцедуры

Процедура ТабличнаяЧастьПриАктивизацииСтроки(Элемент)
    ЭлементыФормы.ТабличнаяЧасть.ОбновитьСтроки();
КонецПроцедуры
3 Кадош
 
09.09.15
02:16
Перем СтараяТекущаяСтрока;

Процедура ДокументСписокПриАктивизацииЯчейки(Элемент)
    
    Если СтараяТекущаяСтрока <> Неопределено Тогда
        ЭлементыФормы.ДокументСписок.ОбновитьСтроки(СтараяТекущаяСтрока);
    КонецЕсли;
    ЭлементыФормы.ДокументСписок.ОбновитьСтроки(ЭлементыФормы.ДокументСписок.ТекущаяСтрока);
    СтараяТекущаяСтрока = ЭлементыФормы.ДокументСписок.ТекущаяСтрока;
    
КонецПроцедуры

Процедура ДокументСписокПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)
    ОформлениеСтроки.ЦветФона = Новый Цвет(255,255,255);
    ОформлениеСтроки.ЦветТекста = Новый Цвет(0,0,0);
    ТекущиеДанные = ЭлементыФормы.ДокументСписок.ТекущиеДанные;
    Если ТекущиеДанные <> Неопределено И ТекущиеДанные.Ссылка = ДанныеСтроки.Ссылка  Тогда
        ОформлениеСтроки.ЦветФона = Новый Цвет(0,0,128);
        ОформлениеСтроки.ЦветТекста = Новый Цвет(255,255,255);
        ОформлениеСтроки.Шрифт = Новый Шрифт(,,Истина);;
    КонецЕсли;
КонецПроцедуры
4 Кадош
 
09.09.15
02:18
(2) не будет работать.
5 Злопчинский
 
09.09.15
02:26
Почему...?
6 Злопчинский
 
09.09.15
02:26
А такое оформление текущей строки жирным шрифтом - только расставлянием галочек в конфигураторе нельзя получить..?
7 Злопчинский
 
09.09.15
02:28
а вот это:
ЭлементыФормы.ДокументСписок.ОбновитьСтроки(ЭлементыФормы.ДокументСписок.ТекущаяСтрока);
- обновляет что? только "раскраску" строки? или же перечитывает и данные из базы по текущей строке?
8 patria0muerte
 
09.09.15
02:30
(4) А чего ж не будет, коли работает? Только галиматья со шрифтами немного. Лучше определить отдельно жирный и не жирный и уже их раздавать.
9 patria0muerte
 
09.09.15
02:33
(6) Не-а...

(7) Инициирует вызов ДокументСписокПриВыводеСтроки() для каждой видимой строки
10 patria0muerte
 
09.09.15
02:35
Варианты так-то идентичны, только в (2) - меньше вызовов.
11 patria0muerte
 
09.09.15
02:37
(8) Тьфу ты. Неверно. Только строку, переданую в ОбновитьСтроки(Строка) перечиывает.
12 rphosts
 
09.09.15
03:13
ОлдФорм/УФ/Такси?

судя по (7) Олд?
13 Злопчинский
 
09.09.15
04:07
(12) Олд
14 Злопчинский
 
09.09.15
04:08
(11) то есть для текущей строки - данные повторно дергаются из базы..?
15 patria0muerte
 
09.09.15
04:14
(14) Ну не из базы, а именно - в табличное поле формы из табличной части объекта. Вообщем эта штука как раз для того, чтобы инициализировать ПриВыводеСтроки, в которой уже можно изменять оформление строки.
16 Злопчинский
 
09.09.15
05:45
(15)  > в табличное поле формы из табличной части объекта
- а сам объект не перечитывается из базы, так?
17 patria0muerte
 
09.09.15
05:58
(16) Нет.
18 patria0muerte
 
09.09.15
05:59
(16) Ну, т.е. "нет, не перечитывается"
19 Злопчинский
 
09.09.15
06:10
(18) Спасибо за пояснения.