Вертикаль-Отчеты. Динамические данные в поле

Автор everything4you, 12.12.23, 20:21:56

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

everything4you

Приветствую, коллеги!
Уперся я в такой вот вопрос: есть маршрутная карта из двух страниц, и на второй странице в нижней части есть поля подписантов. Одно из полей специально пустое, т.е. заполняться оно должно ТОЛЬКО если на этой или на предыдущей(1й) странице лежала контрольная операция.
Всяческие варианты уже попытался применить: новый блок подстановки в это поле, от класса операций, дальше условие на атрибут, но когда добавляю блок подстановок с классом операций, он видимо конфликтует с основным блоком подстановок, содержащим класс операций, поэтому в основном блоке пропадает информация об операциях, да и вообще этот способ не подходит т.к. выводит массив всех операций, а не операций касающихся именно этой страницы.
Так же пробовал через функцию FillItem. В общем-то та же проблема - не получается дернуть операции именно этой страницы, чтобы на другой странице эта функция уже анализировала операции только с нее и следовательно заполняла/не заполняла нужное поле.
У кого-нибудь вообще получалось сделать подобное или это слишком хитрая затея для Вертикали:?:

Sasha_teh

А вы не пробовали каждую операцию с новой страницы начинать? Есть даже опция стандартная для этого.

everything4you

Цитата: Sasha_teh от 13.12.23, 13:38:42Есть даже опция стандартная для этого.
Не уверен, что этот способ подойдет, т.к. вид документации меняется в некотором роде, да и заголовки операций отключаются, т.е. опять же потребуется доработка логики формирователя.
Но даже если это отбросить, дайте наводку куда копать: в сторону FillItem или может быть куда-то в районе PageAfterFill или еще куда-то?
Получается пришла страница, на ней найти операции, определить нет ли там контрольной и на этой же странице либо второй странице этого типа карты(МК) добавить подпись

Sasha_teh

Вам надо в конце документа (на последней странице МК) напечатать подписантов? В этом задача?

everything4you

Цитата: Sasha_teh от 15.12.23, 10:41:02Вам надо в конце документа (на последней странице МК) напечатать подписантов? В этом задача?
Да, но только в том случае, если в хотя бы одна операция на ЭТОЙ странице(либо предыдущей, если операция длинная и перевалила больше чем на страницу) является Контрольной (cnt_oper)

everything4you

было бы куда проще реализовать, если поменять порядок в формировании - сперва чтобы формировались динамические объекты блоков подстановок, потом статические. тогда через функции можно было бы отловить и поправить в определенном поле значение, но увы изменить порядок я не знаю как и возможно ли это :(

Sasha_teh

Т.е.у вас ВСЕГДА техпроцесс заканчивается контрольной операцией? И после неё больше операций нет?

everything4you

Цитата: Sasha_teh от 20.12.23, 17:58:25ВСЕГДА
в том то и дело что не всегда. если бы было всегда, то я бы просто статичным текстом поле заполнил и всё. а здесь именно надо проанализировать операции на странице и если хоть одна там будет контрольная, то вписать текст в поле, ну а если таких не было на странице, то оставить пустым. На следующей странице такой же анализ провести и так до конца.
Реально выполнить, но если статичные блоки заполнять после динамических, а это не получается сделать, формирователь сперва заполняет статичные объекты на странице, а уже потом блоки подстановок, на сколько я понимаю