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.
Nguồn
2011-11-18 19:33:36
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? –
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
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? –