- Главный критерий - поддержка PyQt, в крайнем случае Qt, написание биндера - задача решаемая. В идеале репген должен быть написан на Qt и в поставке иметь биндер для PyQt.
- Наличие симпатичного и простого в использовании визуального дизайнера шаблонов отчетов.
- Возможность печати предпросмотра, печати и экспорта в какие-нибудь распространенные форматы.
- Поддержка кросс-таблиц.
- Очень желательно использование парадигмы бэндов, бо так привычнее.
OpenRPT мне совсем не понравился, больно страшненький дизайнер у него, биндера к PyQt нет и отсутствует документация, что значит перекапывание кучи кода для написания биндера. Короче, отвернуло.
А вот NCReport понравился. Профессионально выглядящий дизайнер, биндер прилагается, достаточное количество документации - все хорошо. По п.4, правда, не удовлетворил, но разработчики скоро обещают. Еще одна незадача - платный. Но сегодня не об этом. Сегодня я расскажу, как приготовить NCReport для употребления в PyQt. Для приготовления использовалась кухонная утварь следующих версий:
- NCReport 2.6.2
- PyNCReport 2.6.0
- MSVC 2008
- Python 2.7
- Qt 4.7.3, сборка MSVS2008
- PyQt 4.8.4
Повторюсь: разработка ведется под Windows, пробовать собирать биндер под Linux просто нет времени.
Установка репгена
Для начала нужно установить сам NCReport:
- Скачать дистрибутив для Windows, сборка MSVS2008
- Запустить инсталлятор, устанавливать с параметрами по-умолчанию
Сборка и установка биндера
- Установить всю вышеперечисленная утварь (естественно, кроме PyNCReport).
- Скачать архив PyNCReport и распаковать его куда-нибудь (
) - Открыть консоль MSVS2008 ((Пуск/Все программы/Microsoft Visual Studio 2008/Visual Studio Tools/Visual Studio 2008 Command Promt)
- Выполнить в консоли следующие команды (консоль после этого не закрывать):
cd PyNCReportDir python configure.py
- Заменить все вхождения "C:\Qt\4.7.*" в файле
\Makefile на путь к директории, куда установили Qt, по-умолчанию "C:\Qt\4.7.3" - В консоли MSVS2008 выполнить команду
nmake
- Для установки собранного биндера в консоли MSVS2008 выполнить команду
nmake install
Проверка работоспособности биндера
В консоли питона выполнить
>>> import PyNCReportПитон может наругаться на невозможность загрузить dll, скорее всего он не может найти зависимости для PyNCReport.pyd - python27.dll и/или ncreport2.dll. Нужно прописать пути к этим dll в переменную окружения PATH. Можно также самостоятельно посмотреть зависимости для PyNCReport.pyd и как они грузятся, утилитой Dependency Walker

0 коммент.:
Отправить комментарий