0

我在使用SSRS報告,我有一個名爲Details的字段,我想要獲得其他字段SerialNumber的計數。根據SSRS報告中的其他現場數據有條件地計數

所以總之我想得到SerialNumber其總計沒有Details

我在下面試過但沒有工作。它總是給不考慮空白Details

=CStr(COUNT(IIF(Not(IsNothing(Fields!Details.Value)),Fields!SerialNumber.Value,0))) 

我怎樣才能通過表達實現這一目標的總數計數?請幫忙。

+0

注進行使用''在操作Not'邏輯否定沒有什麼功能。你實際上需要null的'Details'值而不是'not null'。嘗試:'COUNT(IIF(IsNothing(Fields!Details.Value),Fields!SerialNumber.Value,Nothing))' –

+0

分享您的數據集樣本和預期結果以重現您的問題。 –

+0

謝謝@alejandrozuleta – pedram

回答

0

問題在於我的數據。在數據集,我獲取基於Isnull()行像下面

SELECT CASE 
      WHEN 'Y'='Y' THEN ISNULL(Code ,'') + ' ' + ISNULL(Description ,'') 
      ELSE CASE 
         WHEN ISNULL(Code ,'')='' THEN ISNULL(RefCharge ,'') 
          +' '+ISNULL(RefDescription ,'') 
         ELSE ISNULL(Code ,'')+' '+ISNULL(Description ,'') 
       END 
     END    AS Details 

於是有人出(3空格),我的表達。

=COUNT(IIF(Fields!Details.Value<>"",Fields!Number.Value,Nothing)) 

最後我在下面嘗試,現在它工作正常。

=COUNT(IIF(Trim(Fields!Details.Value)<>"",Fields!Number.Value,Nothing)) 

注:所以我注意到,每當我們需要檢查此類條件下,我們必須要使用Trim()