Имя: Пароль:
1C
1С v8
8.1 Почему не работает метод объединить
0 breezee
 
28.09.15
19:57
Объединял ячейки макета - все работало, пришлось переделать для ячеек таб. дока - теперь не объединят. Подскажите, пожалуйста, где я накосячил? Код ниже
ЛВЛ3 = ТабДок.Присоединить(Секция);
            ЭЛ3 = ЛВЛ3.лево;
            ЗВ3 = ЛВЛ3.верх;
              ТабДок.Область(ЛВЛ3.Имя).СоздатьФорматСтрок();
                 ТабДок.Область(ЛВЛ3.Имя).ШиринаКолонки = 6;
                   ТабДок.Область(ЛВЛ3.Имя).ГраницаСверху = Рамка;
                ТабДок.Область(ЛВЛ3.Имя).ГраницаСлева = Рамка;
                ТабДок.Область(ЛВЛ3.Имя).ГраницаСнизу = Рамка;
                ТабДок.Область(ЛВЛ3.Имя).ГраницаСправа = Рамка;
                  ТабДок.Область(ЛВЛ3.Имя).ГраницаСверху = Рамка;
                   ТабДок.Область(ЛВЛ3.Имя).Текст ="Трудоемкость(часы)";
                   ЭЛ3 =  ТабДок.Область(ЛВЛ3.Имя).Лево;
                    ЗВ3 = ТабДок.Область(ЛВЛ3.Имя).Верх;
                    
        Область = ТабДок.Область(ЗВ1, ЗЛ1, ЗВ3, ЭЛ3);
        Область.Объединить();
1 breezee
 
28.09.15
19:59
В отладчике есть числовые значения для ЗВ1, ЗЛ1, ЗВ3, ЭЛ3
2 breezee
 
28.09.15
20:05
Хотя скорее всего косяк в перезаписывающихся переменных, сейчас попробую проверить
3 breezee
 
28.09.15
20:07
(2) Нет, не помогло, у меня нет больше идей
4 breezee
 
28.09.15
20:14
Вот полный код как формируются координаты объединения
ИначеЕсли итератор = 1 тогда
            Секция = Макет.ПолучитьОбласть("R2C2");
            Секция.Область().Текст = "Трудоемкость"+Символы.ПС+"(часы)";
            Секция.Область().ГоризонтальноеПоложение = ГоризонтальноеПоложение.Центр;
            Секция.Область().АвтоВысотаСтроки = Истина;
            Секция.Область().ОриентацияТекста = 90;
            
            Секция.Область().ШиринаКолонки = 10;
            Рамка = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.Сплошная, 1);
            Секция.Область().ГраницаСверху = Рамка;
            Секция.Область().ГраницаСлева = Рамка;
            Секция.Область().ГраницаСправа = Рамка;
            ЛВЛ111 =ТабДок.Присоединить(Секция);
            ЗЛ1 = ЛВЛ111.лево;
            ЗВ1 = ЛВЛ111.верх;
            ТабДок.Область(ЛВЛ111.Имя).СоздатьФорматСтрок();
            ТабДок.Область(ЛВЛ111.Имя).ШиринаКолонки = 6;
            ТабДок.Область(ЛВЛ111.Имя).ГраницаСверху = Рамка;
            ТабДок.Область(ЛВЛ111.Имя).ГраницаСлева = Рамка;
            ТабДок.Область(ЛВЛ111.Имя).ГраницаСнизу = Рамка;
            ТабДок.Область(ЛВЛ111.Имя).ГраницаСправа = Рамка;
            ТабДок.Область(ЛВЛ111.Имя).ГраницаСверху = Рамка;
            ТабДок.Область(ЛВЛ111.Имя).Текст = "Трудоемкость"+Символы.ПС+"(часы)";
            ЗЛ13 =  ТабДок.Область(ЛВЛ111.Имя).Лево;
            ЗВ13 = ТабДок.Область(ЛВЛ111.Имя).Верх;


ИначеЕсли
            итератор = 1 тогда
            Секция = Макет.ПолучитьОбласть("R2C2");
            Секция.Область().Текст = "Трудоемкость(часы)";
            Секция.Область().ОриентацияТекста = 90;
            
            Секция.Область().ГоризонтальноеПоложение = ГоризонтальноеПоложение.Центр;
            Секция.Область().АвтоВысотаСтроки = Истина;
            Секция.Область().ШиринаКолонки = 10;
            Рамка = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.Сплошная, 1);
            Секция.Область().ГраницаСнизу = Рамка;
            Секция.Область().ГраницаСлева = Рамка;        
            Секция.Область().ГраницаСправа = Рамка;
            ЛВЛ3 = ТабДок.Присоединить(Секция);
            ЭЛ3 = ЛВЛ3.лево;
            ЗВ3 = ЛВЛ3.верх;
            ТабДок.Область(ЛВЛ3.Имя).СоздатьФорматСтрок();
            ТабДок.Область(ЛВЛ3.Имя).ШиринаКолонки = 6;
            ТабДок.Область(ЛВЛ3.Имя).ГраницаСверху = Рамка;
            ТабДок.Область(ЛВЛ3.Имя).ГраницаСлева = Рамка;
            ТабДок.Область(ЛВЛ3.Имя).ГраницаСнизу = Рамка;
            ТабДок.Область(ЛВЛ3.Имя).ГраницаСправа = Рамка;
            ТабДок.Область(ЛВЛ3.Имя).ГраницаСверху = Рамка;
            ТабДок.Область(ЛВЛ3.Имя).Текст ="Трудоемкость(часы)";
            ЭЛ33 =  ТабДок.Область(ЛВЛ3.Имя).Лево;
            ЗВ33 = ТабДок.Область(ЛВЛ3.Имя).Верх;
            
            Область = ТабДок.Область(ЗВ13, ЗЛ13, ЗВ33, ЭЛ33);
            Область.Объединить();
5 breezee
 
28.09.15
20:27
Пробовал к ЗВ1, ЗЛ1, ЗВ3, ЭЛ3 прибавлять +/-1 не помогает, с другими блоками объединяется с этими, которые в табдоке заданы не хочет
6 breezee
 
28.09.15
20:40
Последний раз апаю
7 breezee
 
28.09.15
20:53
Да что за бред то? Гугл как объединить табличный документ - выдет метод объединить. Все параметры верные, а объединять не хочет. Что за фигня то?
8 breezee
 
28.09.15
20:57
И главное с правой ячейкой нормально объединеяет, с нижней - нет
9 breezee
 
29.09.15
06:42
ап!!
10 breezee
 
29.09.15
06:52
Просите, что поднял тему. Все чудом заработало, нужн было росто убрать 1-ое присваивание переменных, которые определяют координаты. Странно, ведь они в любом случае должны перезаписываться