SSRS IIF kullanma

oy
0

Ben (mantık 'Toplam Aramalar / A Grubu Aramalar' olmak üzere) her grup için% değerini hesaplamak için çalışıyorum.

Sorun bazı gruplar için diğer olanlar için ben kullanmak gerekir, oysa (MAX (Fields! OverallCalls.Value) kullanmak gerektiğidir (MAX (Fields! TotalCalls.Value). Bu nedenle, ek bir IIF cümlesini ekledik 'Kamu Fonksiyonlar IsNothing için de arşivden As Boolean (Nesne olarak İfade)': çok altta ise nedense söyleyerek bir hata alıyorum.

=FORMATPERCENT(
       Sum(
IIF(Fields!Group.Value = Dissatisfactions Total,
       Fields!TotalDissatisfactions.Value,
IIF(Fields!Group.Value = RID Total,
       Fields!TotalRidDissatisfactions.Value,
       IIF(
              Fields!Group.Value = CRT OR
              Fields!Group.Value = Escalations
              ,Fields!ComplaintID.Value
              ,IIF(
                           Fields!Group.Value = Calls
                           ,Fields!Calls.Value
                           ,0
                     )
       )
       )
       )  
       ) / IIF(IsNothing(MAX(Fields!OverallCalls.Value), (MAX(Fields!TotalCalls.Value), (MAX(Fields!OverallCalls.Value)
       )
Oluştur 24/10/2019 saat 11:52
kaynak kullanıcı
Diğer dillerde...                            


1 cevaplar

oy
1

parantez eksik hatalar var.

Aşağıdaki kodu deneyin

=FORMATPERCENT(
Sum(
    IIF(Fields!Group.Value = "Dissatisfactions Total",
        Fields!TotalDissatisfactions.Value,
        IIF(Fields!Group.Value = "RID Total",
            Fields!TotalRidDissatisfactions.Value,
            IIF(
            Fields!Group.Value = "CRT" OR Fields!Group.Value = "Escalations",
                Fields!ComplaintID.Value,
                IIF(
                    Fields!Group.Value = "Calls",
                    Fields!Calls.Value,
                    0
                    )
                )
            )
        )  
   ) 
   / 
   IIF(IsNothing(MAX(Fields!OverallCalls.Value)),  
        MAX(Fields!TotalCalls.Value),  
        MAX(Fields!OverallCalls.Value) 
    )
   )

Ayrıca daha iyi okunabilmesi için birçok iç içe IIF ifadeleri varken aşağıdaki kodu gibi anahtarını kullanarak tavsiye ediyorum

=FORMATPERCENT(
Sum(
    Switch (
        Fields!Group.Value = "Dissatisfactions Total", Fields!TotalDissatisfactions.Value,
        Fields!Group.Value = "RID Total", Fields!TotalRidDissatisfactions.Value,
        Fields!Group.Value = "CRT" OR Fields!Group.Value = "Escalations", Fields!ComplaintID.Value,
        Fields!Group.Value = "Calls", Fields!Calls.Value,
        True, 0
        )

   / 
   IIF(IsNothing(MAX(Fields!OverallCalls.Value)),  
        MAX(Fields!TotalCalls.Value),  
        MAX(Fields!OverallCalls.Value) 
    )
   )   
Cevap 24/10/2019 saat 12:22
kaynak kullanıcı

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more