2011-11-18 32 views
10

Tôi đang tìm cho một công cụ báo cáo Java:Alternatives để JasperReports và BIRT

  • không buộc bạn phải sử dụng một nhà thiết kế để xác định các mẫu báo cáo (và do đó cho phép tạo ra các báo cáo bằng phương tiện của API),
  • không phải là JasperReports cũng không BIRT,
  • là mã nguồn mở,
  • là miễn phí (như trong cả tự do và bia miễn phí),
  • là đàng hoàng theo ý kiến ​​của bạn.

Đó là một câu hỏi khó, tôi biết. Tôi không thể tìm thấy bất cứ điều gì thỏa đáng trên Google cũng không ở đây trong Stack Overflow nhưng tôi vẫn hy vọng rằng ai đó có thể biết một số kho báu ẩn ở đâu đó.

+1

Mục tiêu cuối cùng của bạn là gì? JR không yêu cầu bạn sử dụng một nhà thiết kế; những phản đối khác của bạn là gì? Bạn sẽ hạnh phúc hơn khi sử dụng iText? –

+0

Tại sao sử dụng JR hoặc Birt không áp dụng trong trường hợp của bạn? Không có nhiều thư viện báo cáo cho Java anyways. – Mechkov

+0

Jasper không buộc bạn phải sử dụng nhà thiết kế của họ, bạn có thể tự do tạo ra các jrxml mình xác định báo cáo. Tôi cũng đang đấu tranh với lý do tại sao/làm thế nào bạn sẽ xây dựng bố trí báo cáo thông qua một API, trừ khi bạn đã tạo ra nhiều hơn hoặc ít hơn các 'nhà thiết kế' chính mình. Bạn có thể xây dựng một chút về mục tiêu phát triển của bạn là gì không? –

Trả lời

9

Không có nhiều công cụ báo cáo doanh nghiệp nguồn mở (công cụ báo cáo theo tinh thần báo cáo tinh thể). Hai lớn nhất là BIRT và JasperReport. JFreeReport (dường như đã chết) và DataVision (không có kinh nghiệm) là hai sản phẩm nguồn mở "khác" duy nhất thậm chí còn đến gần.

Phần lớn các trung tâm sản phẩm gần báo cáo xung quanh việc tạo biểu đồ hoặc tạo tài liệu. Trong khi sau này có vẻ như nó là "báo cáo", một số nỗ lực không xem xét một loạt các tài liệu được tạo ra (LaTEX chỉ, hoặc tương tự).

Một phần của vấn đề là loại sản phẩm bạn đang xem xét luôn cung cấp công cụ tạo báo cáo kéo và thả vì loại báo cáo này đã trở thành của riêng nó bằng cách mô phỏng xử lý văn bản với mẫu. Điều này dẫn đến yêu cầu khác của bạn, một API có lập trình.

Cuối cùng, API của bạn sẽ tạo mẫu báo cáo, sau đó sẽ được chuyển đến công cụ kết hợp báo cáo với dữ liệu của nó, định dạng và sau đó kết xuất nó. Như vậy, một công cụ như JasperReports (nơi mà mẫu jrxml được định nghĩa tương đối tốt) không quá tệ; bởi vì, bạn chỉ có thể sử dụng Java để xây dựng một cây DOM (đó là mẫu báo cáo) và sau đó truyền nó vào công cụ (có lẽ bạn sẽ phải tuần tự hóa nó thành XML trước, nhưng nó có thể tồi tệ hơn).

Ngoại trừ việc bạn loại bỏ JasperReports ngoài tay (và nền tảng báo cáo lớn nhất khác, BIRT) vì lý do không xác định. Mặc dù có thể có lý do tuyệt vời để không sử dụng một số sản phẩm nhất định (tôi không thể sử dụng JaserReport bản thân vì một số lý do tuyệt vời), nếu quá nhiều sản phẩm được coi là không sử dụng được, bạn sẽ hết các sản phẩm được phép.

Lưu giữ duy nhất là DataVision và tạo LaTeX hoặc Docbook. Bạn có thể nhận được hầu hết định dạng "chuẩn" dự kiến ​​với chuỗi xây dựng Docbook, nhưng rất phức tạp với đường dẫn hiển thị báo cáo của bạn và bạn sẽ phải hiểu rõ về kiểu dáng XSLT của Docbook để có bất kỳ kiểu phong nha nào. yêu cầu "làm đẹp" cho nhiều báo cáo của công ty).

Chúc may mắn và tôi hy vọng thông tin này mang lại một số lợi ích.

+1

Cảm ơn rất nhiều câu trả lời của bạn. Tôi sẽ gắn bó với JasperReports, nó không chính xác những gì tôi đang tìm kiếm nhưng nó là một động cơ rất tốt. –

Các vấn đề liên quan