2013-06-17 2 views
0

Я использую RDLC в asp.net.Rdlc условный отчет

Мой отчет будет извлекать данные из таблицы, которая имеет BankId, Сумму и Trans-Type полей.

Отчет имеет только две колонки, то есть BankId и Сумма.

я сгруппировал по колонке BankId, но если поле имеет Trans-Type = Билл он должен быть освобожден из группы Сумма; если у него есть Trans-Type = Оплата должна быть включена в Сумма.

Я использовал это ...

=IIF(Fields!TransType.Value="Bill-PMT" , RunningValue(Fields!DrAmt.Value,sum,"Group1") , RunningValue(Fields!DrAmt.Value,sum,"Group1")-(Fields!DrAmt.Value)) 

Как:

Bank1 25000 
Bank2 15000 

ответ

0

Это звучит как-то я бы решить на источник данных - то есть изменение запроса к чему-то вроде

select sum(NormalizedAmount) as Amount, BankID 
    from (
     select 
     case when TransType = 'Payment' then DrAmt 
     when TransType = 'Bill' then -DrAmt else 0 
     end as NormalizedAmount, 
     BankID 
     from Amounts 
    ) as subselect 
    group by subselect.BankID 
+0

Thanx alot awesum working nice – Jenna

0

Для ваш Сумма выражение на уровне группы вы можете использовать что-то как:

=Sum(IIf(Fields!TransType.Value <> "Bill-PMT", Fields!DrAmt.Value, 0)) 

т.е. Сумма всегда 0 для типов Билл.

Если вы не ищете общий итог RunningValue не требуется.

Смежные вопросы