Имя: Пароль:
1C
1С v8
8.1 Как выводить шапку динамической тз с разбитыми ячейками
0 breezee
 
24.09.15
13:41
У меня есть шапка, код для её вывода ниже. Как за место 0 ячейки выводить одну широкую и над всеми с 1 по ТЗХРАН.Колонки.Количество()-1 выводить еще половину ячейки с какой-нибудь надписью?

Для итератор = -1 по ТЗХРАН.Колонки.Количество()-1 цикл
        Если итератор = -1 тогда
     Секция = Макет.ПолучитьОбласть("R2C2");
    Секция.Область().Текст = "";
    Секция.Область().ГоризонтальноеПоложение = ГоризонтальноеПоложение.Центр;
        Секция.Область().АвтоВысотаСтроки = Истина;
    Секция.Область().ШиринаКолонки = 10;
        ТабДок.Присоединить(Секция);
    
    иначе    
      Секция = Макет.ПолучитьОбласть("R2C2");
    Секция.Область().Текст = ТЗХРАН.Колонки[итератор].Имя;
    Секция.Область().ГоризонтальноеПоложение = ГоризонтальноеПоложение.Центр;
        Секция.Область().АвтоВысотаСтроки = Истина;
    Секция.Область().ШиринаКолонки = 10;
    Рамка = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.Сплошная, 1);
        Секция.Область().ГраницаСверху = Рамка;
        Секция.Область().ГраницаСлева = Рамка;
        Секция.Область().ГраницаСнизу = Рамка;
        Секция.Область().ГраницаСправа = Рамка;
    ТабДок.Присоединить(Секция);
    КонецЕсли;
КонецЦикла;
1 Апош
 
24.09.15
13:44
количество ячеек для объединения известно? стартовая ячейка известна?
2 Апош
 
24.09.15
13:45
остаётся придумать, как сделать половину ячейки. или хотя бы понять, что это за такое
3 breezee
 
24.09.15
13:47
Т.е. как есть http://i.imgur.com/5SysINR.png
Как надо http://i.imgur.com/QIrIKGL.png?1
(1) Количество ячеек для объединения известно, стартовая тоже. я бы мог вывести эту шапку, начиная с со стартовой и до количествоячеек, но тогда я не знаю что делать с видом работы. пока сделаю вид работы вверху вместе с шапкой, может кто может лучше сделать
4 Гёдза
 
24.09.15
13:49
Область(ф,ф,ф,ф).Объединить()
5 Апош
 
24.09.15
13:50
(3) ты хочешь объединить ячейку про вид работы с ячейкой над ней
6 breezee
 
24.09.15
13:50
(5) Да
7 Апош
 
24.09.15
13:51
(6) не за что
8 breezee
 
24.09.15
13:52
(7) Спасибо, но я так и не понял как это сделать Область(ф,ф,ф,ф).Объединить() не подходит, потому что в макете у меня нет имн для этих областей, этих областей в макете вообще нет
9 Апош
 
24.09.15
13:53
(8) область, бывает, определяется координатами
10 Гёдза
 
24.09.15
13:53
ТабДок.Присоединить(Секция) - это функция которая возвращает область.
Можно посмотреть у нее координаты
11 Гёдза
 
24.09.15
13:53
ТабДок.Область(ф,ф,ф,ф).Объединить()
12 breezee
 
24.09.15
13:55
Всем спасибо
13 breezee
 
24.09.15
14:26
Еще один идиотский вопрос.
ЛЗнач.лево = ТабДок.Присоединить(Секция); так я получаю левое значение
Но если я хочу получить и правое мне нужно еще раз вызывать функцию, а значит еще раз присоединять. Как поместить все значения в переменную не вызываю функцию несколько раз?
14 breezee
 
24.09.15
14:39
Вызвал 4 раза(требует решение задачи, наверное) еще раз всем спасибо