Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Границы ячеек в макете документа

Границы ячеек в макете документа
Я
   holo
 
28.05.18 - 10:21
Объясните, пожалуйста, что не так. Есть документ, который необходимо вывести на печать. В нем есть табличная часть, в которой необходимо сделать так, чтобы при совпадении значений ячеек в пределах одного столбца у всех ячеек кроме первой программно убирались границы сверху и снизу. Пробовал такой код:

Выб = "";
Пока ВыборкаХодЗанятия.Следующий() Цикл
            ОбластьХодЗанятия.Параметры.Заполнить(ВыборкаХодЗанятия);
Если Выб <> "" Тогда
Выб1= ВыборкаХодЗанятия.ЭтапЗанятия;
Если Выб = Выб1 Тогда
                    ТабДок.Область("R"+НомерСтроки+"C2").ГраницаСнизу = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.НетЛинии);
ТабДок.Область("R"+(НомерСтроки+1)+"C2").ГраницаСверху = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.НетЛинии);
КонецЕсли;
КонецЕсли;
            
ТабДок.Вывести(ОбластьХодЗанятия, ВыборкаХодЗанятия.Уровень());
Выб = ВыборкаХодЗанятия.ЭтапЗанятия;
НомерСтроки = НомерСтроки + 1;
КонецЦикла;

Но результатом выходило, что там где должны были быть убраны границы, появлялись пустые строки, а границы убирались у ячеек с различными значениями.
 
 
   Михаил Козлов
 
1 - 28.05.18 - 10:23
Вариант с объединением ячеек не подходит? Мне кажется, смотрится лучше.
   holo
 
2 - 28.05.18 - 11:49
Пробовал и такой вариант, но проблема возникала опять же в появлении пустых строк и объединении ячеек с разными значениями. Почему так, понять не могу, хоть и отсматривал работу кода через отладчик. Думаю, что если будет объяснение появление новых строк, то все станет понятнее.
   holo
 
3 - 28.05.18 - 12:13
Если возможно, то хотелось бы увидеть рабочий код объединения и пояснение, в какую часть кода его ставить
Понимаю, что совсем дурак в этом вопросе
   Михаил Козлов
 
4 - 28.05.18 - 14:47
(3) Примерно так:
Если последняяСтрокаПФ>перваяСтрокаПФ Тогда//объединяем ячейки

                ДЛЯ инд = 9 ПО 14 Цикл
                    областьПФ = ДокументРезультат.Область(перваяСтрокаПФ, инд, последняяСтрокаПФ, инд);                 
                    областьПФ.Объединить();
                КонецЦикла;                
            КонецЕсли;
   holo
 
5 - 30.05.18 - 07:39
(4)Большое спасибо!
Разобрался:-)

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует