正常に動作する Web アプリケーションに埋め込まれたレポートがありますが、微調整する必要があります。現在、レポートは基本的にビューからすべての行をダンプします。いくつかのフィルターを設定していますが、これを簡素化して機能させるためにそれらを無効にしました。昨日は一日中、これを正しく機能させるためにさまざまな組み合わせを試しました。最終的な目標は、一連のデータを取得し、データが属する同じ行内にコンマ区切りのリストとして表示することです。
私のデータはプロジェクトのリストです。各プロジェクトには複数の人員を関連付けることができます。各人に新しい行を作成するのではなく、プロジェクトに属するすべての人を 1 つの列にコンマで区切って表示します。SQL での簡単なタスク。
SELECT dbo.APM_Project.Code, dbo.APM_Project.Title,
(STUFF((SELECT(', ' + vi.NameFirst)
FROM view_OrganizationPerson vi
JOIN APM_Project as p ON vi.ProjectId = p.Id
WHERE vi.ProjectId = APM_Project.Id
AND vi.Role = 'Principal Investigator'
AND vi.Status = 'Active'
FOR XML PATH('')), 1, 2, '')) AS PI_
FROM dbo.APM_Project
また、カンマ区切りのリストを生成する SUBSTRING メソッドを試しました。これらのメソッドはすべて、SQL スクリプトを実行するときにうまく機能し、Visual Studio でデータセットのデータをプレビューするときにも機能するので、何かが正しいはずです。必要な結果が得られますが、アプリケーションを実行すると、次の式を使用して列にデータが得られません
=Fields!PI_.Value
また
=First(Fields!PI_.Value, "DataSet1")
だから私はここからどこへ行くべきか完全にはわかりません。これは、式を実行するときも、かなり簡単な作業のようです
=Fields!PI_.IsMissing
true に戻るため、実行時に何かが失われ、それが何であるかを理解できません。
プロジェクトの他のすべてのデータはテキスト ボックス内に表示され、PI_ 列だけが空白のままになっています。
質問: RDLC ファイルのデータ行の 1 列にデータの CSV リストを表示するにはどうすればよいですか?