Помощь - Поиск - Пользователи - Календарь
Полная версия: Разместить ценники на листе
1C-PRO - Форум по 1С > Форумы по платформе "1С:Предприятие 7.7" > (7.7) Отчеты и обработки для платформы "1С:Предприятие 7.7"
varSmokelord
Помогите плиз! Данные считываются из файла и програмным путем формируются ценники. Сколько файлов, столько ценников. Ширину ценника можно считать константой, высота изменяется динамически в зависимости от кол. товаров (речь идет о ценнике на букет цветов). Хотелось бы печатать несколько ценников на 1 листе, соответственно проверяя влезают они все или нет, если нет, то часть перенести на другой лист. Проблема собственно говоря с секциями. У меня 2 таблицы, в 1 формируется ценник, а потом как объект передается во вторую, и вроде бы все хорошо НО !! код примерно такой
Таб1.ВывестиСекцию("Гор|Верт<"); вывожу шапку ценника
Начало цикла
Таб1.ВывестиСекцию("Гор|Верт-"); вывожу товары
КонецЦикла
Таб1.ВывестиСекцию("Гор|Верт>"); вывожу подвал с итогами
Секция=Таб1.ПолучитьСекцию("Гор|Верт"); косяк здесь, он видит только последнюю строку товара
Таб2. ПрисоединитьСекцию(Секция);
В Таб1 выводит все путем, проверял. Как быть? С функциями Вывести и ПрисоединитьСекцию уже по всякому развлекался, не помогает.
†omynoker
Мне видится два варианта решения:
1. Задать высоту ценника постоянной (максимальное количество строк в ценнике) и при отсутствии позиции выводить пустую строку. Тогда можно через ПрисоединитьСекцию выводить несколько ценников рядом (несколько колонок) и точно расчитать количество ценников на лист.
2. Посчитать количество строк которое влазит на лист и просто расчитать количество строк перед их выведением. Например:
ВысотаОчередногоЦенника = 14(высота шапки + количество строк + высота подвала (2 + 10 + 2))
УжеВыведено = 22
ВсегоНаЛист = 25
Вывод: не подходит -> новая страница.
У этого метода есть недостаток - можно печатать только в одну колонку или заморочится с предварительными расчетами и подставлять рядом ценники с одинаковым количеством строк... Б-р-р

Успехов.
BabySG
О! А в 7 нет разве такой же вещи, как в 8: ПроверитьВывод() и ПроверитьПрисоединение?
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Русская версия Invision Power Board © 2001-2009 Invision Power Services, Inc.