Crystal レポートのリファクタリング:するのか、何をするのか、そしてなぜ?

StackOverflow https://stackoverflow.com/questions/696646

質問

レポートの設計、生成、保守は難しくありませんが、退屈です。Crystal Reports XI には、多数のレガシー (レガシーの程度はまったく異なる) レポートがあります。これらは A4/PDF 用に設計されており、必ずしも印刷される必要はありませんが、予測可能なレイアウトになるため、すぐに廃止する可能性はありません。

すべて既存のストアド プロシージャ (SQL Server 2005) に接続してデータを取得します。これらのレポートを確認するのに多くの時間が費やされました ちょうどそう. 。実際のレポートの作成は、ほとんどが .NET/C# API 経由で行われ、PDF にエクスポートされます。安定していて、このプロセスを適切に処理する、ローカルで開発および保守されているアプリケーションが多数あります。

そのため、Crystal Reports が安定していること、アプリがこれらのレポートを確実に生成すること、PDF 出力が一貫していること、Crystal Reports テンプレートが承認されて設定されると正常に機能することを気に入っています。

ただし、この状況には大きな問題がいくつかあります。最も大きな点は、基礎となるレポート テンプレート自体を変更するのは非常に面倒なことです。Crystal Reports テンプレートをユーザーが満足するレベルにまで引き上げるのは大変な手間であり、DTP、グラフィックス、データベース、調整、その他無数の細かい作業の長い反復が必要になる場合があります。

Crystal Reports が比較的稀なスキルであり、人々が認めたがらないスキルであることを考慮して、私たちは代替ソリューションを考え出そうとしています。

私が検討し始めた考えがいくつかあります。その他の考えも大歓迎です。

  • Crystal Reports 2008 には XI に比べて利点がありますか?
  • 他の人は CR からの移行をどのように管理しましたか?そして何をするのですか?
  • データ アクセス レイヤーが適切に形成されているとすると、Excel サービスを介してグラフを生成し、それをグラフィックとしてフレームワーク テンプレートにインポートできますか?クリスタル、もう一人 - 誰かがこのようなことを試したことがありますか?
  • Reporting Services はさらに優れていますか?(私たちは RS スキルをいくつか持っていますが、繰り返しになりますが、人々が実際に何かを知っていることを嫌がるもう 1 つのことです。)
  • 昔ならデスクトップ・パブリッシングと呼ばれていたものに利用できるレイアウト・ツール (できれば .NET API を使用したツール) はありますか?画像としてグラフィックス/テーブル/その他のオブジェクトがあり、それらが自動的にレンダリングされる場合、

理想的には、ユーザーが根本的な変更をより詳細に制御できるソリューションに移行したいと考えています。また、これをユーザーに提供できるツール内でプログラム的に処理できるかどうか、また、Crystal Reports テンプレートを編集するのではなくコーディングできるようにしたいと考えています。

役に立ちましたか?

解決

だから、クリスタルで他にどのような問題が発生していますか?あなたは、ユーザーが報告を処理するように聞こえる...(私たちはすべてをしないでください)。それに伴う問題は、彼らが提供しているものは何でも、データモデルを使用したくないです。誰かがデータベースを照会する方法を知っている必要があります。あなたは既にストアドプロシージャを使用しているがあります。多分カップルのユーザーは、基本的な結晶プリンシパル(合計し、並べ替え、グループ化、など)を学びましょう、あなたは、ストアドプロシージャを作成し、彼らが結晶とそれをフォーマットします。テーブルをやっているあなたは結晶の最大のつまずきを回避その方法は、結晶に結合します。

私は水晶の知識を持っており、それが使用することはかなり簡単だと思います。私はそれができることとできないことを知っているより多くのように私は、しかしファルカン、それを呼び出すことはありませんので、私は自分自身に多くの時間を節約することができます。

私はクリスタルを守るためにしようとしないんだけど、それが壊れていない場合...

他のヒント

私たちは最近、XP上でVS 2008にアップグレード。私達のユーザーがまだWin2Kでの.NET 2.0フレームワークを実行している、と同社全体のアップグレードは、私たちの近い将来ではありません。私たちは、すでに2005年から2008年にアップグレードしたいまで、我々は見つけることができませんでしたことはVS 2008に付属しているCrystal Reportsの再配布可能のみXP以降で動作していることです。おっと。そこで、我々は今、CRは自動的に新しいバージョンに更新されますので、私たちの古いレポートを編集することはできません。

私は何をやって巻き取ることは、当社の既存ののXmlSerializer <を使用しています/>、レポートデータ(基本的に文字列とリストのプロパティの多くを、)を保持するクラスを構築し、XMLファイルにそれをシリアライズします。 HTML / CSSにそれを変換するXSLスタイルシート宣言を挿入し、IEで開きます。

これはかなり速くCrystal Reportsのよりも、特に開発のためのもの巻き上げだ、と私は一般的にHTMLとして、彼らはちょうど私には、レポートを見えるようにしたいものは何でも地獄のWord文書を与え、それを輸出することができ、それきれいアップした後、XSLが生成する何のためのテンプレートとしてそれを使用します。

これは、Crystal Reportsとフル機能の近くにどこにもいないが、我々は(X線およびラボレポートや作業指示)必要なもののために、それは完璧です。

scroll top