2012-01-30 1 views
0

I SQLの以下の部分を持っている:SQLはSSMSでは動作しますが、SSRSレポートでは動作しません。

select 
    l.lease_id , 
    l.tenant_trading_name , 
    p.building_name , 
    l.negotiation_type , 
    l.net_area , 
    l.lease_source , 
    l.deal_approved_date , 
    l.building_id , 
    p.building_id as building_id_2 
from 
    lease_deal.lease l 
    inner join property.property p 
     on p.building_id = l.building_id 
where 
    l.deal_approved_date >= @dateFrom 
    and l.deal_approved_date <= @dateTo 
    and l.lease_status = @leaseStatus 

これは、私は私が(dsDetailと呼ばれる)のレポートにデータセットとして、それを追加しましたしかし、とき(私は変数を宣言提供)SSMSで完全に正常に動作しますレポートを実行しようとすると、次のエラーが表示されます。

クライアントレンダリング中にエラーが発生しました。レポート処理中にエラーが発生しました。 データセット 'dsDetail'でクエリの実行に失敗しました。スカラー変数 "@building_id"を宣言しなければなりません。キーワード 'and'の近くにある の構文が正しくありません。

私はエラーが何を示しているのか理解していないし、過去30分の間に問題をグーグルで解決しても解像度に近いと感じません。助けてください!

+0

また、最後の2つの列がもともと私のクエリの一部ではなかったことに注目して、私はそれらを追加して、おそらくssrsの結合を傷つけていないかどうかを確認しました。 – Codingo

+0

あなたの質問に@building_idは表示されません。 SSRSはそれをどこで取得していますか? – Alex

+0

@Alexそれは私が理解しない理由ではない。私はこのレポートを継承しているので、以前のバージョンではdsDetailの変数になっている可能性があります(バージョンコントロールをすぐにチェックします)。 SSRSがこのデータセットの古いバージョンを何らかの方法で参照できる方法はありますか? – Codingo

答えて

1

解決済み:これを引き起こした原因はわかりませんが、奇妙なキャッシングの問題と思われます。 SSRSからレポートを完全に削除し、再アップロードしました。

+0

私は、変数が削除されたときにレポートから完全に削除されないことがあることを発見しました。解決策のもう1つの選択肢は、ソリューションエクスプローラ→ビューコードでレポートを右クリックすることです。次に、パラメータ名を検索し、XMLから削除します。 – Bryan

1

使用するクエリが異なります。ここにはそのような変数がないので、SSRSで使用されるクエリをチェックしてください。

+0

以前のバージョンにあったことがわかりました。これにより、レポートの削除と再アップロードができ、すべてがここから機能しました。ご協力いただきありがとうございます! – Codingo

関連する問題