質問

私の現在のタスクは、かなり大きな線形データセットのコレクションに関するレポートを作成することです(つまり、値10は9 8 7 6 5 4 3などの平均係数に依存します

問題はまた、このロジック(現在移動平均と呼ぶことができる)が固定されておらず、おそらく変更される可能性があることです。 HTMLでレポートを生成するだけでなく、Excelで自動的に使用するように電子メールを送信する必要があります(したがって、変数の一部は相対的なものになります。つまり、たとえば先月のレポートを生成します)

それで、私の質問は、レポートエンジンを使用するかどうかです。 (Jasper、Pentaho、Birt)

ここの私のドライバーは - レポートロジックが変更されますが、開発者によって変更されます。複雑なロジックになるので、Javaのコードで最も簡単に行われます。 - レポートを保存してExcel形式でメールで送信する必要があります。 - レポートタスクは膨大になります(ETLが役立つ可能性があるもの) - ここでは、一般的で拡張可能である必要がある場合は、システムが書き直します。

レポートと呼ばれるエンティティを作成するだけで、そのタイプ(列挙)とパラメーターリスト(RESTFUL URLから)およびその他のメタルダタ(作成したもの、どのような日付など、送信する場所、相対パラメーターが保存されます)を作成できます。いくつかの処理が行われ、DBに保存されて、コントローラーが消費するように処理されたデータを取得するだけです。関係するテクノロジーを大幅に簡素化します(Spring MVCを使用しているので、POIを少し振りかけると十分である必要があります)。しかし、レポートエンジンを使用する方が簡単であるのだろうか。

役に立ちましたか?

解決

JasperとBirt(および商業Windwardレポート)との私の経験は、レポートの数の計算部分をあまり助けにならないということです。すでに適切な構造に変換されているデータを提示するのに最適です。 Jasper、Birt、およびWindwardのレポートは、実行の合計と平均を簡単に処理できますが、それよりも複雑な計算は実際の痛みです(計算によっては不可能かもしれません)。私はペンタホに精通していません。

あなたの状況では、カスタムJavaコードまたはETLプロセスで計算を実装します。

その後、レポートエンジンを使用して、HTMLおよびExcel形式で計算の結果を提示できます。ただし、JasperやBirtなどが既にアプリケーションに統合されていない場合は、このためだけに追加することをお勧めしません。それぞれJSPとPOIを使用してレポートデータを手動で書き出す方が迅速になります。 JasperとBirtのレポートは、簡単に作成できますが、レポートエンジンを適切に統合した場合にのみ!

他のヒント

私はBirtを使用したことがありませんが、Jasperを使用しましたが、私のコメントは次のとおりです。レポートエンジンを使用するには学習曲線があり、独自のオーバーヘッドを追加します。したがって、1回限りのレポートを行っていて、実際のレポートレイアウトがかなり単純な場合は、レポートエンジンから多くを獲得できない場合があります。しかし、反対に、ジャスパーはロジックを一度書くことができるようにすることに本当に得意です。その後、複数の形式(Excelを含む)でレポートを簡単に生成します。

生成されたレポートが「きれいに見える」という強い要件があり、本当に複雑なレイアウトがある場合、そして多くの形式を生成する必要がある場合は、レポートエンジンが価値があると思われるかもしれません。

数時間を費やすことを正当化できる場合は、Jasper(またはBirtなど)をダウンロードして、チュートリアル /デモのいくつかを実行して、その感触を得ることができます。それはおそらくあなたがここで得たすべてのコメントよりもあなたにとってより価値があるでしょう。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top