A id1 $200
A id1 $300
A id2 $150
B id3 $100
B id4 $20
I want the following in the output:
Name distinct-Count Totalamt
A 2 $650
B 2 $120
One way to do this is to use 2 aggregators. The First aggregator group and sum amt by Name and ID.
On the second aggregator group by Name and count id and sum amt.
So if I remove the duplicate row in the Sorter I will get incorrect distinct-count and totalamt for "A".
There are two different ways.
1) Suggested by Manas - to use two aggregates.
2)Flaging the record as 1 and 0 before aggregate. For this, you should have sorted data on name and id.
If you have sorted data coming from source, try 2nd option as given below.
In expression transformation before aggregator.
v_ID_CNT = IIF(ISNULL(v_ID) Or IN_ID!= V_ID,1, 0)
O_ID_CNT will go in to your aggregator.
You need to create one more port in aggregator for SUM(O_ID_CNT) which will return the distinct count of IDs.
(No change in GROUP BY columns)