感謝您抽出寶貴時間幫助我。我試圖使用多個if語句來控制顯示哪個值,具體取決於每個語句是否爲true。所以現在我有這個下面基本上是:SSRS中嵌入的IIF狀態
IIF(expression = NULL
, CompanyAddress
, IIF(Expression='TX'
, IIF(BOOL=TRUE
,CompanyAddress
, SWITCH(DEALER ADDRESSES))
,CompanyAddress)
)
我已分別測試了每個人IIF語句,我得到我所期望的結果。目前在第一個IIF語句中,Expression = NULL是TRUE,它只輸出#Error,而不是在我的真實公司地址中輸出「Nothin」。但是如果表達式= NULL是FAlSE,我確實得到了companyAddress或Dealer的正確輸出。
=IIF(IsNothing(Fields!CoOppId.Value)
,("nothin")
, (IIF(Fields!Addr1.Value.Contains("TX")
, IIF(Fields!UDFCustProv.Value = 1
, Fields!Addr0.Value
, Switch(
Fields!UDFMake.Value.Contains("Chevy")
, "Knapp Chevrolet" + chr(10) + "PO box " + chr(10) + "Houston TX 77210"
, Fields!UDFMake.Value.contains("Ford")
, "Sterling McCall Ford" + chr(10) + "6445 Southwest Freeway" + chr(10) + "Houston TX 77074"
, Fields!UDFMake.Value.contains("International")
, "Pliler International" + chr(10) + "2016 S. Eastman Rd" + chr(10) + "Longview TX 75602"
, Fields!UDFMake.Value.contains("Freightliner")
, "Houston Freightliner, Inc" + chr(10) +"9550 North Loop East" + chr(10) + "Houston TX 77029"
, Fields!UDFMake.Value.contains("RAM")
, "Max Haik Dodge Chrysler Jeep" +chr(10)+ "11000 I-45 North Freeway" + chr(10) + "Houston TX 77037")),Fields!Addr0.Value)))
給這個答案一個嘗試:[StackOverflow](https://stackoverflow.com/questions/17511151/isnothing-not-working-on-empty-value-in-report-builder) – Lucky
沒有運氣在該線程 –
你說主IIF上的ELSE條件可以正常工作,所以你可以將它分解成單個頂層IIF並告訴我們是否仍然會產生錯誤?實際上我現在看到你說你確實已經證實了這一點。下一個問題,在CoOppId爲NULL的情況下,該行中的其他字段是否爲NULL? – Daniel