簡體   English   中英

基於背景色ssrs的總和

[英]sum based on background color ssrs

在我的表中,基於以下表達式,在20條記錄中,我得到4條記錄“紅色”:

=Switch(DateDiff(DateInterval.Hour, Fields!SLA.Value, Now())<=72,"White",Fields!SLA.Value<now(),"Red",true,"White")

在此處輸入圖片說明

我想根據背景顏色“ RED”求和“ count_of_value”。

這是我正在嘗試的。 但是,其顯示錯誤。

="The number is " & IIF("Red",Sum(Fields!count_of_value.Value, "DataSet1"),'') & "."

and 

 ="The number is " & Sum(IIF("Red",Sum(Fields!count_of_value.Value, "DataSet1"),'')) & "."

我想實現兩件事:

從第一列,我想獲取顏色“ RED”的最后日期。 例如,在這種情況下,02/05/2019。

從第二列中,我想獲取顏色為“紅色”的數字的總和。 例如,在這種情況下,214519

我在做什么? 如何實現呢? 謝謝

在這里看起來有點像XY問題 您的表達式根據SWITCH語句為單元格着色。 要解決求和問題,您需要使用與為單元格着色相同的條件語句。 基本上,您需要的表達式應為以下內容。

= SUM(IIF(Fields!SLA.Value<now(), Fields!count_of_value.Value, 0), "DataSet1")

此表達式應隔離SWITCH紅色顯示的相同字段,將它們求和,如果它們的求值結果不為true,則加零。 由於您對另一個答案的評論表明您收到指示范圍不足的錯誤,因此需要在SUM函數中包含數據集名稱。

至於從另一列獲取最后一個日期值,您應該只能使用類似的表達式,但要使用MAX函數。

=MAX(IIF(Fields!SLA.Value<now(), Fields!SLA.Value, Nothing), "DataSet1")

您的IIF語句基本上只是說“ If'Red'= True”,它將始終返回false。

您需要將其與具有顏色表示的“單元格”進行比較。

如果該單元格稱為myTextBox則您的SUM表達式將類似於(簡化)

=SUM(
    IIF(ReportItems!myTextBox.Value = "Red", Fields!count_of_value.Value, 0)
    )

或者,您可以在IIF語句中重復整個顏色表示。

如果這樣做沒有幫助,請編輯問題以顯示報告設計的圖像,包括任何分組和每個表達式的位置。

也許我簡化了您的問題說明,但是我嘗試在本地計算機上使用偽數據。

在此處輸入圖片說明

=DateDiff(DateInterval.Hour,Fields!SLAValue.Value,now)

新的臨時列以捕獲號碼

=IIF(DateDiff(DateInterval.Hour,Fields!SLAValue.Value,now)<=72,0,
IIF(Fields!SLAValue.Value<now,DateDiff(DateInterval.Hour,Fields!SLAValue.Value,now),0))

現在專欄

=now

顏色列表示

=IIF(DateDiff(DateInterval.Hour,Fields!SLAValue.Value,now)<=72,"White",
IIF(Fields!SLAValue.Value<now,"Red","white"))

最后一個Count_Value表達式

=Sum(
IIF(DateDiff(DateInterval.Hour,Fields!SLAValue.Value,now)<=72,0,
IIF(Fields!SLAValue.Value<now,DateDiff(DateInterval.Hour,Fields!SLAValue.Value,now),0)))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM