Программа должна разбирать структурированные записи (данные по счёту, контрагентам и перечню позиций), вставлять их в заготовленные макеты и рендерить чистый PDF. Под каждый вид документа заводится отдельный макет, однако общий облик должен быть выдержан единообразно: те же верхние и нижние поля, гарнитуры, отступы и цветовые акценты, чтобы вся пачка воспринималась как выпущенная одним брендом. Обязательны подстановочные поля для наименований, адресов, дат и денежных значений, растущие таблицы строк с автоматическим расчётом подытогов и налога, а также непрерывная нумерация документов, исключающая пропуски и повторы. Запуск предполагается двух видов — вручную по кнопке и по расписанию, с сохранением результатов в общий каталог и записью в журнал операций.
Расскажите, как вы подойдёте к задаче, на каких библиотеках будете строить решение и как оставить макеты редактируемыми для сотрудников без навыков программирования. Ключевые ценности для нас — аккуратный код с пояснениями и абсолютно надёжная нумерация. Ожидаемый результат:
— Готовый сборщик счетов, договоров и отчётов в формате PDF на основе данных из таблицы и API
— Настраиваемые макеты с подстановочными полями, растущими таблицами, авторасчётом итогов и единым оформлением
— Непрерывную автонумерацию с защищённым счётчиком без разрывов
— Работу по расписанию и по запросу с ведением журнала и обработкой сбоев
— Небольшую инструкцию для правки макетов и подключения новых видов документов