2009-08-18 44 views
0

C#でレポートウィザードを使用してレポートを作成しましたが、ReportViewerでレポートを見ることができます。私の問題は、関連する2つのテーブルがあることです。最初の表の列の値は、他の表の外部キーです。その列に表示されているのは外来キーだけです。私は他のテーブルから対応する値を見たいと思います。外部キーを持つ別のテーブルから値を取得する

2番目の表の列の値はどのようにして確認できますか?

答えて

-1

テーブルから外来キーの項目をドラッグします。ネイティブの位置ではありません。

+0

私はそれをしますが、私の問題は解決しません。 –

1

あなたはおそらくドリルダウンした結果を表示するコントロールについて Create Basic Drilldown Report

+0

私の視覚スタジオはそれを持っておらず、レポート、ウィザードレポート、クリスタルレポートしか持っていません。私は何をしますか? –

+0

あなたはvs biテンプレートを使用してレポートを作成し、次にrdlファイルをC#プロジェクトにインポートすることができます。 – DForck42

1

を報告して必要なように聞こえる...それはその列を手動でバインドされていない/それは自動バインドに設定されているのですか?

1

適切なテーブルのフィールドを含むクエリに変更します。

SELECT t1.*, t2.value 
FROM table1 t1 
    JOIN table2 t2 ON t1.t2id = t2.id 

しかし、できない場合は、データソースが別々であるため、別のオプションが必要になります。

別々のデータソースから2つのデータセットがあるとします。

レポートにテーブルを挿入して、DataSet1の情報(または呼び出されたもの)を表示します。次に、テキストボックスのいずれかの場所に四角形を置き、そこにDataSet2にアタッチするテーブルを配置します。次に、DataSet1の適切な値に対応するDataSet2のレコードのみを表示するように、このテーブルにフィルタを配置します。

または、この目的のためにルックアップ機能を提供するSQL Server 2008 R2(現在はCTP)を待ちます。

ロブ

4

あなただけの外部キー列に参加する必要があります。

SELECT 
    a.*,b.YourNeededColumnHere 
    FROM TableA   a 
     INNER JOIN TableB b ON a.columnX=b.columnX 

しかし、あなただけのビューを作成し、サービスをレポートでこれをやって問題がある場合:

CREATE VIEW CombinedAB 
AS 

SELECT 
    a.*,b.YourNeededColumnHere 
    FROM TableA   a 
     INNER JOIN TableB b ON a.columnX=b.columnX 

GO 

CombinedABビューからレポートを実行できるようになりました:

SELECT 
    * 
    FROM CombinedAB 
    WHERE ...your conditions here... 
+0

私はそれを理解することはできません。あなたは非常に混乱したコードを書く。 –

関連する問題