現在、SQL Server Report Service 2008 で SQL 2008 R2 を使用しています。次のパラメータを使用してレポートを作成しています - Staff_name、Client_name、Lab、lab_date など。ユーザーがスタッフ名を選択すると、サービスを提供するクライアントにドロップが入力されます彼らが選択するためにダウンし、これはうまくいきます。ユーザーがクライアントを選択すると、クライアントのラボが [ラボ] ドロップダウンに表示されます。選択したラボのラボ データセットの値、または「新しいラボ」が選択された場合は空の値を返す SP があります。問題は、Labの下のパラメーターをデフォルトにすると、ex. Lab_date、sp からの適切な変数を使用して、Lab を選択し、[New Lab] を選択して Lab_date を空にしません。
IF @ClientLabId <> 'New Lab' BEGIN
SELECT
cc.Date_Lab_Test_Ordered, cc.Ordering_Provider, cc.Provider_Specialty,
cc.Provider_Contact, cc.Desc_of_Order, cc.Date_Order_Filled,
cc.Date_Receipt_Verified
FROM CCMT_Lab_Test_Orders_Tracking cc
WHERE cc.Client_Lab_Id = @ClientLabId
AND cc.RecordDeleted = 'N'
END
IF @ClientLabId = 'New Lab' BEGIN
SELECT ' ',' ',' ',' ',' ',' ',' '
END
NULL、''、'' を試しましたが、実際のラボを選択しない限り、レポートにはこれらの値が表示されます。SPがデフォルトに設定されている場合、SPの最初の部分がデータを送信するときに機能することを知っています。消去後に「New Lab」が選択されたときに値を取得するためにSSRSに送信する必要があるものについて、私が理解できないのは「New Lab」の部分です。従業員がデータを 2 回再入力する必要がないようにし、データのエラーをできるだけなくしたいと考えています。
後から考えると、実行後にレポートを強制的に完全に更新する方法はありますか。レポートを出て戻るのではなく、ユーザーがレポートの表示をクリックするたびにレポートが更新されますか?