Подтвердить что ты не робот

Что-то вроде Crystal Reports для PHP?

Я ищу что-то, что работает на PHP и похоже на хрустальные отчеты. Мне в основном нужно иметь установку макета, что означает, что я могу выводить счета-фактуры, просто вставляя данные, а затем отправляю их на принтер.

Самое близкое, что я нашел до сих пор, это PDFB, но это немного боль, поскольку для этого требуется точное позиционирование.

Я хотел бы иметь что-то, что могло бы генерировать счет на основе шаблона (желательно на основе XML), а затем выводить его в форму, удобную для печати (PostScript был бы приятным!)

Он также должен иметь поддержку штрих-кодов (хотя они могут быть сгенерированы как изображение GD)

Другое требование - это FLOSS

4b9b3361

Ответ 2

Я использовал Spreadsheet_Excel_Writer в PHP, и это достаточно хорошо. Не WYSIWYG, но он генерирует XSL файлы, и я доволен им. Впоследствии вы можете использовать макрос OpenOffice для преобразования документа в PDF. Он работает из командной строки, ergo, он также работает с PHP-скриптами.

Или здесь еще лучший способ.

Используйте OpenOffice для преобразования шаблона Smarty. Smarty - классный шаблон для PHP, я рекомендую его для этой цели. Затем сгенерируйте чистый HTML, используя PHP с Smarty. Наконец, просто преобразуйте сгенерированный HTML в PDF с использованием вышеупомянутого метода.

Отчетность Революционированная (tm).

ИЗМЕНИТЬ 6 июня 2009 г. Модифицировано? Ах, неважно.

В любом случае этот метод работает на безголовом сервере без запуска X11. Я взял script из упомянутая ссылка (за исключением того, что я помещал ее в существующую ранее коллекцию "Стандарт" вместо "DannysLibrary" ) и то я выполнил эту команду с Windows-машины с помощью PuTTY, а X был удален на удаленном компьютере, а переменная DISPLAY не была установлена, и... ну, в любом случае, OOo не смог найти X11 для подключения.

$ openoffice.org -invisible -headless "macro:///Standard.Conversion.ConvertWordToPDF(`pwd`/logaritamska.doc)"

Это работает, и я уверен, что это отлично подойдет для всех, кому потребуется преобразование из другого формата в PDF, включая создание печатных отчетов из HTML. Редактируя макрос, вы, возможно, даже получите OOo для чтения непосредственно из stdin или с вашего временного URL-адреса службы и вывода в предопределенный файл. script на ссылка довольно проста, когда у вас есть простейший код для расширения.

Резюме:

  • генерировать отчеты как XLS или HTML
  • конвертировать их
  • хотя это OOo, он работает на безголовых машинах.

EDIT 9 июня 2009 г. Я попытался реализовать онлайн-конвертер таким образом. Вы должны заставить PHP работать под тем же пользователем, под которым вы создали макросы. Этот пользователь, по-видимому, не может быть www-данными. Я попытался использовать suphp, но по какой-то причине он не изменил пользователя правильно (posix_getuid() продолжал возвращать 33, что является www-данными). Я отредактирую это, исправляя это.

EDIT 26.06.2009 Полагаю, мне потребовалось некоторое время, чтобы сообщить об этом. Да, это работает с suphp. Я, однако, не в состоянии показать это в прямом эфире, поскольку единственный сервер, на котором я работаю, имеет относительно важное веб-приложение, которое не имеет профессионального аудита безопасности. Это означает, что одна из вещей, на которую мы полагаемся на защиту бэкэнд, - это то, что пользователь, под которым работает интерфейс, является очень непривилегированным пользователем (например, www-data). Не спрашивайте: -)

Надеюсь, это поможет кому-то: да, преобразование в PDF с OO.o вполне реалистично. Там даже поддержка удаленного вызова в OO.o, но я не изучил это только для того, чтобы написать это.

Ответ 3

Я использовал eclpse в php: "Проект BIRT"

http://www.eclipse.org/birt/phoenix/

Вы разрабатываете свой отчет в Eclipse. Затем загрузите его на свой сервер (он должен работать с tomcat). Я знаю. Затем вы можете вызвать этот отчет из своего приложения php вы можете отправить параметры в отчет по строке запроса:

/myreport.birt?param=var&param2=var2

У нас есть 4-летнее приложение, работающее так, как сейчас. Около 100 отчетов и работает очень хорошо.

Конечно, это открытый исходный код.

Удачи.

Ответ 5

Если вам удастся вызвать приложение Java в вашей php-среде (что в общем случае должно быть возможно) JasperReports, возможно, вещь вы ищете:

Ответ 6

Reportico

На мой взгляд, это один из лучших, подробных и многофункциональных PHP-конструкторов отчетов.

Ответ 7

hm.. У меня была такая же проблема в моем текущем проекте, и я закончил использование хрустальных отчетов и назвал отчет веб-сервисом asp.net, написанным на С#. веб-сервис не имеет ничего сложного, и вы все равно можете использовать все функции хрустальных отчетов. я не думаю, что вы найдете какой-либо механизм отчетов, который полностью основан на php, который можно сравнить с хрустальными отчетами... я не смог найти его еще...

Ответ 8

Я столкнулся с той же проблемой около года назад. После поиска всего существующего решения я его не нашел, поэтому я написал сокращенные отчеты о кристаллах, используя библиотеку генерации Zend Framework PDF. Мне пришлось активно адаптировать свою библиотеку для поддержки сгруппированных объектов, повторения разделов и шаблонов. Это сработало, но это было действительно неуклюже, и если бы мне пришлось это сделать снова, я бы нашел способ сфокусировать php на хрустальные отчеты, будь то через веб-сервис, например, Gushiken, или, позвонив в приложение командной строки. CPAN имеет интерфейс Perl для C.R.: Win32:: OLE:: CrystalRuntime:: Application.

Если в прошлом году было выпущено PHP-решение, я сомневаюсь, что он достаточно зрелый, чтобы сравнить с C.R. Не тратьте время на то, чтобы вытащить свои волосы - идите с тем, что работает. Время дорогое. Программное обеспечение не работает.

Ответ 9

Правильным инструментом для этой потребности является XSL-FO, так как он идеально подходит для печатных носителей. XSL-FO также является Рекомендацией W3C с XSLT. Я создал php-инструмент, который использует XSL-FO в качестве промежуточного языка для отчетности, этот XLS-FO является результатом слияния (обработки) шаблона отчета XSLT с вашими XML-данными.

Автоматически создается шаблон с использованием MS Word и экспортируется, как показано в руководстве пользователя. Затем вы подаете отчетный движок в шаблон и во время выполнения с XML-данными.

Также во время выполнения результирующий отчет XSL-FO отображается следующим образом:

a) тот же XSL-FO (если вы хотите отлаживать или просто хотеть XSL-FO)

b) Идеальный PDF, (ApacheFOP отображает XSL-FO)

c) HTML с преобразованием XSLFO2HTML.

Здесь у вас есть проект, его плагин symfony 1.4: https://github.com/juanmf/sfPlugins/tree/master/reportPlugin

Я планирую отделить его от sf. Не стесняйтесь спрашивать что-нибудь. Вот HowTo: https://github.com/juanmf/sfPlugins/blob/master/reportPlugin/doc/HowToReport.pdf?raw=true

Этот пост может также помочь вам: https://stackoverflow.com/questions/5519024/report-engine-solution-for-lamp-application/13042656

Привет!

Ответ 10

Попробуйте Tufat

Я просто вижу, что... возможно, это поможет вам. Однако для вас доступна бесплатная версия.

Вам понравится. Пожалуйста, поделитесь своей копией.

Ответ 11

Я использовал phpreports, и я должен признать, что это не плохо для веб-отчетов, поскольку имеет поддержку верхних и нижних колонтитулов, группы, промежуточные итоги и т.д.

Ответ 12

Посмотрите siwapp.org, это приложение с открытым исходным кодом, основанное на Symphony Framework, оно находится в ранней бета-версии, но очень перспективно.