2015-11-25 27 views
0

特定組累計總和都低於數據集我如何實現在Informatica的

ESN | DATE | SV_NO 
123 | 22-NOV | 2 
123 | 23-NOV | 2 
123 | 25-NOV | 3 
123 | 27-NOV | 2 
123 | 27-NOV | 3 
123 | 28-NOV | 4 
123 | 28-NOV | 2 
124 | 21-NOV | 0 
124 | 23-NOV | 3 
124 | 24-NOV | 3 
124 | 25-NOV | 2 
124 | 27-NOV | 2 
124 | 28-NOV | 3 
124 | 30-NOV | 0 

,我想用達到下文輸出。所有數據根據ESNDATE排序。我必須在ESNSV_NO的基礎上計算SUM 0.11值存儲在一個可變端口中。

ESN | DATE | SV_NO | SUM 
123 | 22-NOV | 2  | 0.11 
123 | 23-NOV | 2  | 0.22 
123 | 25-NOV | 3  | 0.11 
123 | 27-NOV | 2  | 0.33 
123 | 27-NOV | 3  | 0.22 
123 | 28-NOV | 4  | 0.11 
123 | 28-NOV | 2  | 0.44 
124 | 21-NOV | 0  | 0.11 
124 | 23-NOV | 3  | 0.11 
124 | 24-NOV | 3  | 0.22 
124 | 25-NOV | 2  | 0.11 
124 | 27-NOV | 2  | 0.22 
124 | 28-NOV | 3  | 0.33 
124 | 30-NOV | 0  | 0.22 

請爲我提供適當的解決方案。

回答

0

首先按ESN和SV_NO對數據進行排序。然後在表達轉換,請執行下列操作:

ESN: <-- I/O port 
DATE: <-- I/O port 
SV_NO: <-- I/O port 
v_CONST:=0.11 
v_SUM:= IIF(ESN = v_prev_ESN AND SV_NO=v_prev_SV_NO, v_SUM+v_CONST, v_CONST) 
o_SUM:= <-- Output port 
v_prev_ESN:= ESN 
v_prev_SV_NO:= SV_NO 

現在,再次加載目標

之前ESN和日期數據進行排序