2013-01-24 127 views
0

View of final report。我們目前正在使用MS SQL Server 2008 R2和SSRS 2008.我正在創建一個包含多個參數的報告,供用戶將數據插入表中。SSRS 2008動態參數

  1. 被SP填滿的Staff_Name。
  2. Client_Name基於SP中的Staff_Name選項填充。
  3. 用戶將選擇「新服務」選項或用戶已經插入的服務。
  4. 用戶輸入要插入表中的數據的文本框和日期字段。

我想報告要做的是當用戶選擇'新服務'的文本框和數據字段將是空白的。如果用戶選擇他們已經創建的服務來更新字段(將新行插入表中並記錄刪除舊行)

我已經創建了用於基於第三種選擇填充文本框和日期字段的SP :

IF @ClientServiceId <> 'New%' BEGIN 
SELECT 
    cc.Date_Service_Referral, cc.Ordering_Provider, cc.Provider_Specialty, cc.Provider_Contact, cc.Desc_of_Order, 
    cc.First_Scheduled_Date_Service, cc.Attendance_Confirmed, cc.Date_Record_New_Service_Receieved, 
    cc.Date_Record_Ordering_Provider_Confirmed, cc.Date_Record_PCP_Confirmed 
FROM CCMT_Service_Referral_Tracking cc 
WHERE cc.Client_Service_Id = @ClientServiceId 
AND cc.RecordDeleted = 'N' 
END 
IF @ClientServiceId = 'New%' BEGIN 
SELECT 
    NULL AS Date_Service_Referral, NULL AS Ordering_Provider, NULL AS Provider_Specialty, NULL AS Provider_Contact, 
    NULL AS Desc_of_Order, NULL AS First_Scheduled_Date_Service, NULL AS Attendance_Confirmed, 
    NULL AS Date_Record_New_Service_Receieved, NULL AS Date_Record_Ordering_Provider_Confirmed, 
    NULL AS Date_Record_PCP_Confirmed 
END 

設置用戶定義的參數值的SSRS的默認值似乎甚至之後的第三個參數的變化,並用它作爲可用值鎖定參數創建一個下拉列表中不允許用戶輸入數據。有沒有一種方法來編碼,這樣會填充參數或將它們留空,具體取決於用戶的第三選擇?

+0

你有多少個peraments。你是否嘗試更新並從報告參數中輸入數據到表中? – Hiten004

+0

你的其他問題http://stackoverflow.com/questions/14490200/ssrs-2008-cascading-parameters和這個問題是類似的嗎? – Hiten004

+0

是的,我正試圖解決它不同的方式,但我認爲我將不得不做兩件不同的報告來做我想做的事情。我是一名.net程序員,我們剛開始使用SSRS。在.net中,您可以即時填充字段(參數),但在SSRS中似乎並非如此。 –

回答

1

我會做這個(縮短您的例子一點點):

  1. 設置與選擇「新建」或別的東西,第一個變量。我選擇了文本,然後選擇了「可用值」,我選擇了「指定值」,並將標籤和值設置爲「新」和「不新」。我將變量名稱設置爲'Parm'。

  2. 設置一個數據集,其代碼如上所述,但要確保數據條件是上面設置的變量的名稱。致電此數據集'選擇'

    If @Parm <> 'New' 
    Select 'I am not new' 
    else 
    select 'I am new' 
    
  3. 現在設置第二個參數。選擇'可用值'並指定'從查詢中獲取值'。選擇上面創建的數據集'Choices',併爲兩者選擇給定的'ID'值。

您現在有一個DEPENDENT變量,其中的選擇由您的首選邏輯決定。您可以根據需要更改數據集。