Modber Сообщество
профессионалов по 1С

Вычислить и сложить высоту строк в макете

  
Сообщений: 1

0
Есть докум., в него забиваю строку, и в зависимости от длины строки когда не помещаеться то переноситься на другую строку. И есть шаблон который должен распологаться на определенной высоте, но при перетаскивании строк, то текст сдвигаеться вниз. Прикрепляю еще одну пустую строку потом задаю для нее высоту "100 - Высота Предыдущей Строки", чтобы другая строка была высотой ниже на высоту первой, и когда там две строки то "100 - Высота Предыдущих Строк ВСумме". А в отладке вижу что высота строк = "1" то сплюсевать не могу. Как можно сложить это?
Сообщений: 76

0
изготовьте возвышение подвальную этакой, дабы он залезал на страницу только если исключается в "верном" убеждении, а если намереваясь на одну строку далее - уже передвигался на вытекающую страничку. И теперь при поддержки кода в главном цикле назначаете число бессодержательных строк (изменчивая Количество Строк), какие можно (и надо!) ввести, дабы подвальная снова не передвигалась, а во другом цикле уже вводите это число на печать.
Сообщений: 32

0
Обычно сталкивался с таким вопросов когда необходимо было расположить макет по определенному шаблону, например: Шапка страницы - 5 см Тело страницы Подвал страницы - 5 см. Соответственно необходимо при формировании табличного документа выводить в него такое количество строк, что бы Подвал помещался на той же странице. Я обычно делал так: Получал области подвала и шапки страницы в отдельные области. Далее в цикле формирования тела страницы формировал служебный табличный документ. Далее используя функцию "ПроверитьВывод" можно определить помещается ли табличный документ на страницу Пример: ТабДок = Новый ТабличныйДокумент; Макет = ПолучитьМакет("Макет"); ОбластьШапка = Макет.ПолучитьОбласть("Шапка"); ОбластьСтрока= Макет.ПолучитьОбласть("Строка"); ОбластьПодвал= Макет.ПолучитьОбласть("Подвал"); ТабДок.Вывести(ОбластьШапка); ТабДокСлужебный = Новый ТабличныйДокумент; ТабДокСлужебный.Вывести(ОбластьШапка); ТабДокСлужебный.Вывести(ОбластьПодвал); Для Каждого СтрокаТЧ Из Тч Цикл ОбластьСтрока.Параметры.Заполнить(СтрокаТЧ); Если Не ТабДокСлужебный.ПроверитьВывод(ОбластьСтрока) Тогда ТабДок.Вывести(ОбластьПодвал); ТабДок.ВывестиГоризонтальныйРазделительСтраниц(); ТабДок.Вывести(ОбластьШапка); ТабДок.Вывести(ОбластьСтрока); ТабДокСлужебный = Новый ТабличныйДокумент; ТабДокСлужебный.Вывести(ОбластьШапка); ТабДокСлужебный.Вывести(ОбластьПодвал); ТабДокСлужебный.Вывести(ОбластьСтрока); Иначе ТабДок.Вывести(ОбластьСтрока); ТабДокСлужебный.Вывести(ОбластьСтрока); КонецЕсли; КонецЦикла; ТабДок.Вывести(ОбластьПодвал); ТабДок.Показать();
В начало страницы 
|
Перейти на форум: