При печати счета-фактуры, строки которой не помещаются на одну страницу, слетает печать шапки(та, где печатаются заголовки столбцов и их номера). Этот момент проявляется на
одном единственном документе, то есть остальные документы на несколько страниц печатаются нормально. В ...TransBody... executeSection есть код, который отвечает за вывод этого заголовка.
X++:
if (lineCount < numOfLines)
{
checkHeight = any2int(sectionTransBody.heightValue() +
sectionTransPageFooter.heightValue());
lineCount ++;
}
Я так понимаю этот код возвращает текущую высоту строки секции + высоту секции с итогами по проводкам.
Далее в том методе идет код, который смотрит, печатать шапку или нет(то есть, произошла ли смена страницы или нет)
X++:
if((pageHeight - element.currentYmm100()/100) < checkHeight)
{
moreThenOnePage = true;
element.execute(4);
element.newPage();
printHeader = true;
}
Проблема в том, что когда уже должна начаться новая страница условие if
((pageHeight - element.currentYmm100()/100) < checkHeight) не отрабатывает.
Очень похоже, что
element.currentYmm100() возвращает неверное значение.
Правильно ли я понимаю что этот метод возвращает значение равное уже напечатанному на текущую страницу?
Если кто сталкивался с этим(возможно в других отчетах), как побороли?
Не ли, какого альтернативного механизма понять, что страница уже сменилась и не мудрить с вычислениями через системные методы?