私は、小計を含む水平線以外のレポートではランク初心者です。車が駐車場で過ごした時間を含むデータセットがあります。特定の日の特定の時刻のエントリ数を示す、時間ごとの列と日ごとの行を示すテーブルを作成する必要があります。
これは、RDLC デザイナーの方が列状のグループ化で簡単に見つけられますが、Crystal ではそのようなものを見つけることさえできません。
ヘルプ。
私は、小計を含む水平線以外のレポートではランク初心者です。車が駐車場で過ごした時間を含むデータセットがあります。特定の日の特定の時刻のエントリ数を示す、時間ごとの列と日ごとの行を示すテーブルを作成する必要があります。
これは、RDLC デザイナーの方が列状のグループ化で簡単に見つけられますが、Crystal ではそのようなものを見つけることさえできません。
ヘルプ。
次のフィールドを想定しています:{table.car_id}
および{table.census_time}
クロスタブを右クリックし、「クロスタブ エキスパート」を選択します。
{table.census_time]
列フィールド リストに追加します。時間ごとにグループ化{table.census_time}
行フィールド リストに追加します。日ごとにグループ化{table.car_id}
概要フィールド リストに追加します。カウント** 編集 **
日付/時刻フィールドから時間を抽出する特別な数式を作成する必要はありません。クロスタブがそれを行います。
[クロスタブ] タブを選択し、
{table.census_time}
フィールドを追加してから、[グループ オプション...] ボタンをクリックします。
「毎時」を選択します。ピックリストから。
時間ごとのレコードを含むテーブルを作成する必要があります。
テーブル デイアワー
Period StartHour EndHour
00:00 - 01:00 0 1
01:00 - 02:00 1 2
02:00 - 03:00 2 3
03:00 - 04:00 3 4
...
23:00 - 00:00 23 24
次に、データをこのテーブルに結合します
SELECT h.Period, DATEPART(dd,d.EntryTime) as Day, 1 as Value
FROM DayHour h LEFT JOIN <YourData> d ON h.StartHour <=DATEPART(hh,d.EntryTime) and DATEPART(hh,d.EntryTime)<h.EndHour
これにより、期間のすべてのレコードが返され、特定の時間枠内に車両が駐車場に入らなかった場合でもレコードが返されます。Period 列をクロスタブの列セクションにドラッグアンドドロップし、Day 列を Rows セクションにドラッグアンドドロップします。[値] 列を概要セクションにドラッグします。