1

値を持たない月であっても、1 月から 12 月までの列に月を表示したい年次報告書があります。

今日、5 月が最初の値を持つ月であるため、5 月から始まるマトリックス レポートがあります。しかし、その月の値がなくても、1 月にテーブルを開始したいと考えています。

また、同じマトリックスに異なるデータ ソース (XMLFetches) を使用して複数の行を含めることができるかどうかも疑問です。

もう少し説明します。月ごとにどれだけ売れたかを表示したい、かなり単純なレポートである必要があります。各月は列で、行は製品です。
CRM 2011 オンラインの fetchXML を使用しています。

月 1 月 2 月 3 月 4 月 5 月 6 月 7 月

車輪 0 0 0 0 10 65 75

車 0 10 0 10 0 100 175

4

2 に答える 2

0

レポートの同じマトリックスに異なるデータセットを結合することはできませんが、データソースを結合して 1 つのデータセットを作成してから、データセットをレポートに表示することができます。たとえば、ストアド プロシージャ (または SSIS または powershell など) を使用してデータベースから読み取り、データをデータベースのテーブル、一時テーブル、テーブル変数に結合してから、レポートから、または Fetch XML でクエリを実行できます。

データのないエントリについてもカレンダー エントリを表示するレポートを取得するには、必要なカレンダーから始めて、実際のデータに左結合する必要があります。

Dynamics CRM からこれを行っていて、自分で FetchXML を編集することに慣れている場合は、必要に応じて を使用して複数のエンティティからのデータを結合できます。スタック オーバーフローに関するこの他の記事では、その手法について詳しく説明しています。

たとえば、レポートに月のみが含まれる場合、Year、Month、MonthNumber の 3 つの列を持つカレンダー テーブルを作成できます。月をアルファベット順に並べることはできないため、MonthNumber はレポートで月を並べ替えるために重要です。レポートに暦年を 1 つしか表示しない場合、年の列は必要ないかもしれませんが、これは多くのレポートで再利用できるものなので、適切に行う価値があります。それらについてもっと読みたい場合は、「カレンダーテーブル」を検索してください。それらの作成方法については多くの意見がありますが、アイデアに慣れるために簡単なものから始めてください. カレンダー テーブルを月のデータに結合したままにしておくと、1 月から 4 月までの月の NULL 値が取得されます (データは 5 月に始まるため)。これらの NULL 値を 0 または空の文字列に置き換えることができます。何が適切かによります。isnull() または nvl() または適切な関数がデータベースにあるものを使用すると、適切な場合があります。

于 2012-10-10T22:51:22.830 に答える