私はssrsの世界で初めてです。1 つの横軸ラベルで 2 つの間隔を使用したいだけです。たとえば、X 軸で日付フィールド (sample_date) を使用しています。1 月の間隔は 31、2 月の間隔は 28、12 月の間隔は 31 などです。間隔のタイプは日です。誰でもそれに関して私を助けることができます。
1 に答える
確かに、あなたの質問を理解していると信じているなら、日付の代わりに月末の日付を表示したいということです。そのためには、いくつかのことを行う必要があります。
データセットから月に何日あるかを確認する必要があります。データセットの例を次に示します。
declare @Dates table ( dt date, val int) insert into @Dates values('1-1-12', 10),('1-10-12',20),('1-30-12',14),('2-1-12', 11),('2-11-12', 19),('2-20-12', 20),('3-10-12',10) select *, datediff(day, Dateadd(month, datediff(month, 0, dt), 0), Dateadd(day, -1, Dateadd(month, datediff(month, 0, dt) + 1, 0)) ) as DaysInMonth from @Dates
これで、日付と値、およびその月が何日かを示すリストが作成されました。通常の折れ線グラフなどを作成します。例では「値」を「val」に設定し、「カテゴリ グループ」を例では「dt」に設定します。
グラフが作成されたら、水平グリッドをクリックして、その部分 (x 軸) の周りにのみ点線の長方形が表示されるようにします。「横棒グラフのプロパティ」をクリックします。
軸タイプを「スカラー」ラジオ ボタンに変更します。次のように選択します。
a. 最小値を [Min(dt)] に変更します。 b. 最大値を [Max(dt)] に変更します c. Interval を次の式に変更します。
=(Fields!DaysInMonth.Value - 1)
d. 代わりに間隔タイプを「日」に変更します
レポートを実行すると、日ごとにグループ化されますが、実行時に動的に月の日数であることがわかったデータを使用します。この数値から 1 を引いているため、最初の日と最終日のグループ分けが毎回表示されるはずです。これが真実ではないことがわかった場合は、テストしたときのように式を少し変更しますが、指定した期間は機能しました。
これが失敗した場合は、ラベルを sql ステートメントから取得した月の最終日に設定し、それをカテゴリ グループの「ラベル」にすることもできます。