2017-12-19 22 views
0

SSRSには、プロバイダが終了するかどうかを選択できるパラメータがあります。 [終了しました]で[はい]を選択した場合、終了日の範囲を選択できるようにします。 [いいえ]を選択すると、日付範囲がグレー表示されます。私はこのサイトの他の場所での回答を見つけましたが、うまく動作しません。私は、彼らが意味していたことによって、SpecifyDateデータセットに基づくデータセットを作成することによって混乱しました。私はTerminatedデータセットを作成してこれを再現しようとしましたが、私はこれを正しく行っているとは思いません。これは私が見つけたものです:possible solution他のパラメータに基づくSSRSグレーアウトパラメータ

enter image description here

は終了パラメータはこれで作成されました: enter image description here

主なデータセットはどこのフィルタがありますアウト

where status = @terminated 
+0

カスケードパラメータを設定しようとしているもの。 Paramaters!Terminates.Valueをデータセットの@Parameterとして取るSPの結果から、低い日付と長い日付のパラメータの "Default Value"を取得する必要があります。カスケーディングリンクをバインドします(必要がない場合は偽の日付を返します)。チェーンをリセットするには、常に最新表示を指定する必要があります。このトピックの別のリンクがあります。 - > https://social.msdn.microsoft.com/Forums/sqlserver/en-US/0f88137a-896f-4f4e-8eb4-6a9fd1f9a42b/ssrs-cascading-parameters-and-date-parameters?forum=sqlreportingservices –

+0

また、私が正しくリコールすれば、パラメータリストの上から下へのパラメータの順序が重要です。 [常に最新表示]オプションは、リンクされた値が変更されたとき(つまり、@terminatedのとき)、依存パラメータの値を再フェッチします。これにより、日付値が、NULL値または値を持つ有効/無効の状態から強制的に変更されます。 –

+0

カスケードパラメータが必要なことについてあなたが言っていることを理解していますが、これを動作させようとしています。 – jackstraw22

答えて

0

あなたがすることができない「グレー"SSRSのパラメータ。あなたができることはNULLに設定されます。 Terminatedパラメータが "No"に設定されていると、クエリでNULL日付を処理できる必要があります。

だから私は何をするのかで、終了したパラメータに基づいて、所望の日付を選択した日付と呼ばれるデータセットを作成します。..

日付データセットは、このようになります(実装時に宣言文をコメントアウト) - - 私は意味を成しているホープ..終了の任意の値は、あなたはその後、終了日のために大切なデフォルトを設定します

declare @teminated varchar(3) = 'Yes' 
select 
case when @teminated = 'No' then getdate() else NULL end as start_date 
, case when @teminated = 'No' then getdate() else NULL end as end_date 

は、このデータセットで生成された日付を形成さかのぼり設定しています。

+0

私はこのようなことを試しましたが、何が起きるのかは、SSRSでNULLを受け入れるようにパラメータを設定する必要があることです。これを行うと、日付パラメータがヌルで、ユーザがチェックするかチェックを外すかのチェックボックスを持つデフォルトが与えられます。これは、ユーザーが報告書をTerminated = "Y"で実行したいときに有効です。しかし、Terminated = "N"の場所で実行したい場合は、NULLボックスを手動で解除してから日付を入力する必要があります。このように聞こえるように、私はこのオプションがあまりにも使いにくかったと言いました。 – jackstraw22

+0

@ jackstraw22 SSRSパラメータあなたはそれらをあまりカスタマイズすることはできません。2016年には、パラメータの場所を移動することができます。条件付きで非表示にすることができるのは素晴らしいでしょう。しかし、私はあなたはここに運がないと思う – Harry