2013-03-01 11 views
7

Potrzebuję napisać formułę do raportu SSRS. Nie jestem pewien co do dokładnej składni, ale myślę, że powinien to być zagnieżdżony iif, ale z wieloma kryteriami, sprawdzając wartość wykresu i pól dzielenia. Na koniec dnia, jeśli wykres = 110300 i dzielenie = 100 to "Intercompany AP - USA" lub jeśli wykres = 110300 i dzielenie = 200 następnie "Intercompany AP - RUS" w inny sposób, to po prostu wyświetl nazwę mapy. Coś takiego, ale właściwie napisane poprawnie.Zagnieżdżone iif z wieloma warunkami SSRS

iif Fields!chart.Value="110300" and Fields!division.Value="100" then 
Fields!chartname.Value="Intercompany AP - USA" if Fields!chart.Value="110300" 
and Fields!division.Value="200" then Fields!chartname.Value= 
"Intercompany AP - RUS" else Fields!chartname.Value 

Bardzo doceniam każdą pomoc w tej sprawie!

Odpowiedz

14

Sam prawie sam to rozwiązałeś! Napisać to w T-SQL kliknięciu prawym przyciskiem myszy nazwę wykresu i zmienić jego wartość do następującego wyrażenia:

IIF(Fields!chart.Value="110300" AND Fields!division.Value="100","Intercompany AP - USA",IIF(Fields!chart.Value="110300" AND Fields!division.Value="200","Intercompany AP - RUS","Default Chart Name") 

Zobacz here o wyjaśnienie, w jaki sposób funkcja IIF działa

z linku można zobaczyć, że trwa następujący format, gdzie przecinki są używane zamiast „A” lub „Else”:

IIF (boolean_expression, true_value, false_value)

Więc do załamania wyrażeniem:

IIF(Fields!chart.Value="110300" AND Fields!division.Value="100", 
    "Intercompany AP - USA", 
    IIF(Fields!chart.Value="110300" AND Fields!division.Value="200", 
     "Intercompany AP - RUS", 
     "Default Chart Name" 
    ) 
) 
+0

Dziękuję bardzo za heko @tom jenkin !! – jenhil34