누군가가 SSRS에서이 수식에 누락 된 내용을 알려주십시오. 아니면 더 나은 아직 누군가가 중첩 된 IIF 구문이 똑같은 쓸 수 있습니까?중첩 IIF 또는 SWITCH 문 구문이 올바르게 필요함
Switch(
(Parameters!StartMonth.Value <= 1 And Parameters!EndMonth.Value >= 1),
(Code.CalculateFraction(
(Fields!retail1.Value -Fields!cost1.Value) , Fields!cost1.Value
) *100
),
(Parameters!StartMonth.Value <= 2 And Parameters!EndMonth.Value >= 2),
(Code.CalculateFraction(
(
(Fields!retail1.Value +Fields!retail2.Value)-
(Fields!cost1.Value + Fields!cost2.Value)
) ,
(Fields!cost1.Value + Fields!cost2.Value)
) *100
)
)
이것은 나를 미치게 만듭니다. 간단히하기 위해 여기에 2 반복을 넣었습니다. 나는 이들 중 12 개를 가지고 있으며 다음 단계는 retail12까지 소매 1을 합산하고 cost12까지 비용 1을 합산해야합니다.
나는이 두 가지를 처음부터 제대로 이해할 수 없다.
는 편집 :
가 무엇인지 파악 :
나는 여전히 지금 노력하고 있어요는 첫 번째 조건의 값
=iif(
Parameters!StartMonth.Value <= 1 AND Parameters!EndMonth.Value >= 1,
ReportItems!txtTotal2.Value,
iif(
Parameters!StartMonth.Value <= 2 AND Parameters!EndMonth.Value >= 2,
ReportItems!txtTotal3.Value,
iif(
Parameters!StartMonth.Value <= 3 AND Parameters!EndMonth.Value >= 3,
ReportItems!txtTotal4.Value,
Nothing
)
)
)
편집 2를 반환 부정확.
내 전체 논리가 예상 한 결과에 도달하지 못했습니다. 내 경우에는 내가 사용하는 것이 무엇이든 IIF인지 또는 스위치가 사실 일 뿐이므로 첫 번째 명령문 만 전환한다는 것이 명백합니다.
하지만 내가 원하는 결과를 얻으려면 논리를 변경해야했습니다.
iif(
Parameters!EndMonth.Value = 1,
ReportItems!txtTotal1.Value,
Parameters!EndMonth.Value = 2,
ReportItems!txtTotal2.Value,
and so on
)
이렇게하면 내 문제가 해결되었습니다. 고마워요, 고마워요.
이 오류를 받고 있습니까, 아니면 그냥 잘못된 결과를? –