0

質問:

私たち(つまり、私、独身)は「ユーザー生成レポート」を実装する必要があります(最大で1か月で、月末/新しい月の初めにプレゼンテーション)。

問題 1:ユーザーとは、SQL や VBA などの技術的なスキルを持たない
ユーザーを意味します。

問題 2:
テクノロジーが .NET ONLY であるため、Java (および Jasper などの Java ベースのもの) を使用できない

問題 3:
Excel へのエクスポートが可能であるべき (つまり、XML や CSV ではなく、XLS または XLSX を意味します)

問題 4:
データのグループ化が可能であること (複数のグループ)

問題 5:
データベースが Microsoft SQL-Server である (2008 R2 と推定されますが、最終的に 2008 R1 または 2005 になる可能性があります)

おまけの「問題」:
Web ベース、ASP.NET WebForms を使用しますが、Web が不可能な場合はデスクトップ ベースにすることもできます


これらの要件と時間的制約のばかげたことは別として...

1 つの解決策は、SSRS (SQL-Server Reporting Service) によって提供されるレポート ビルダーです。ただし、いくつかの欠点があり、かなり深刻だと思います。

  1. レポートを作成するユーザーは、基本的に SQL (左結合、右結合、内部結合、外部結合とその結果) を知っている必要があります。ユーザーはおそらく違いを理解していないため、結果が得られない場合や間違った結果が得られた場合 (たとえば、null 列での内部結合)、私を非難するだけです。

  2. レポートを作成するユーザーは、データベース/データ構造 (論理的な削除、期間の日付など) について何も知りません。また、ガベージインのガベージアウトが問題になる可能性があり、データが間違っているなど...

  3. マトリックスを作成し、丸められていない値から小計を合計する場合、レポートではコンマの後に 2 桁しか表示されないため、合計の合計は小計の合計と一致しません。 (したがって、値を2桁に丸めます)小計の場合、小計の合計(丸められる)からではなく、すべての値(丸められない)の合計から合計を計算します。繰り返しになりますが、彼らは私やデータ、またはレポート作成者を非難します。

  4. 結合を使用して追加のテーブルを追加した後、レポート ビルダーは結果の数を表示しないため、ユーザーは正しい数のレコードがあるかどうかを知る方法がなく、必然的に間違った結果になります。繰り返しますが、彼らは私を責めます。

  5. 日付のフィルター: それらを適用する必要がありますが、必ずしも where ではなく、join で適用する必要があります。レポート ビルダーはそれをサポートしていません。そのような深刻なレポートを作成することはできません。

  6. ステータス: 前述のように、論理的な削除と、削除されたレコードのステータス 99 のステータス フィールドを使用します。where でのフィルタリング ステータスは危険であり、join で発生する場合があります。繰り返しますが、Report Builder は、未加工の SQL を使用しない限り、それをサポートしていません。ユーザーは SQL を知らないため、これは無意味です。

  7. レポート ビルダーをインストールするには、管理者権限、または顧客企業の IT 部門がインストールする必要があります。SQL-Server 2005 Reporting Service は SQL-Server 2008 Reporting Services のレポートでは動作せず、SQL 2008 R1 では動作しないため、適切な ReportBuilder に適切な .NET フレームワーク、および適切な Report-Server に適切な ReportBuilder を使用します。 R2. また、これには、それが可能なすべてのユーザーが特定の SQL-Server レポート サービス レポート ジェネレーター ユーザー ロールに属している必要があり、IT 部門はユーザーを適切な Active Directory グループに配置する必要があります。私たちが持っていた顧客。さらに、IT 部門が、適切な ReportBuilder をインストールすることに同意したとしても、適切な ReportBuilder をインストールすることを知っているとは思えません。


今、私はかつて(かなり前に)たまたまYouTubeでSSAS(SQL-Server Analysis Services)のプレゼンテーションを見ました。
しかし、私はもうリンクを見つけません。
とにかく、SSAS の経験はなく、SSRS の経験しかありません。

ユーザーが Excel 経由で SSAS に接続し、データを取得して、多かれ少なかれ好きなように合計できるように、SSAS を悪用することは可能だと思います。また、生データを見ることもできます。

また、テーブルからの生データに対していくつかのクエリを事前に準備することもできます (これは、データセットを介してレポートビルダーでも行うことができます)。

これがその時間内に実現可能かどうかを教えてくれるSSASをよく知っている人はいますか?
また、分析サーバーと Excel バージョン (2007/2010) に必要なアドインがすべての分析サーバー バージョンと互換性がある場合、または Excel 2007 から 2008 R2 または Excel 2010 から SSAS-2005 にアクセスする際に問題がある場合。

それとも、 ReportBuilder よりも SSAS の方が多くの問題に遭遇するのでしょうか?

4

1 に答える 1

2

SSAS が問題に対する合理的なアプローチであるかどうかという質問であれば、私の答えはイエスです。SSAS の利点は、一般的に言えば、ビジネス ユーザーが容易に理解できる方法でデータがモデル化され、クエリ言語の知識がなくても Excel で簡単に操作してさまざまなレポートを作成できることです。With any version of SSAS, you can use Excel versions 2007 or 2010. これにはアドインは必要ありません。プロバイダーは両方の Excel バージョンに既に組み込まれています。さらに、モデルを SSAS に入れることで、さまざまなツールからデータに簡単にアクセスできるようになります。必要に応じて、Excel や SSRS、さまざまなサードパーティ ツールを使用できます。つまり、このアプローチでオプションを制限するのではなく、Report Builder と比較してオプションを拡張します。

とは言っても、SSAS の操作は簡単な場合もあれば難しい場合もあります。これは、使用しているデータの種類と、モデルに追加する必要がある計算の複雑さによって異なります。与えられた時間内に目標を達成できるかどうかは、私が答えられる質問ではありません。所有しているデータの種類と、ユーザーが必要とするレポートの種類によって異なります。

いくつかのリソースをご紹介します。穏やかな紹介として TechNet の記事を書きました: http://technet.microsoft.com/en-us/magazine/ee677579.aspx。これは SSAS 2008 用に書かれていますが、原則は SSAS 2005、SSAS 2008、SSAS 2008 R2、および SSAS 2012 に適用されます。

ビデオによる紹介が必要な場合は、http://channel9.msdn.com/Blogs/rdoherty/Demo-Developing-a-SQL-Server-2008-R2-Analysis-Services-Databaseを参照して開始してください。channel9 の SSAS には、無料のビデオ素材がたくさんあります。SSASで検索してみてください。

于 2012-08-19T05:45:35.203 に答える