我正在尝试使用powercenter设计师的流程,但我没有达到预期的目标。
我有这些初始数据:
CODE CODE2 OPTION
001 A 89
001 A 55
001 A 12
002 B 25
002 A 59
025 A 44
我必须得到代码来执行以下操作:如果每个CODE有几个记录,那么你必须将OPTION2字段中的值1111放到OPTION字段中具有最高值的记录中,如果只有CODE中的一条记录也将值1111.我通过在powercenter中进行SORTER转换来实现这一点,而不是复杂的。 我不能做的是下一步。 OPTION字段中具有最高值的第二个记录对应于第一个字段的值,依此类推。
输出:
CODE CODE2 OPTION OPTION2
001 A 89 111111
001 A 55 89
001 A 12 55
002 A 59 111111
002 B 25 59
025 A 44 111111
我怎么能得到这个? 我应该使用什么转换?
谢谢! ^^
答案 0 :(得分:0)
您可以按选项的代码和降序对其进行排序。然后在表达式变量中保存变量中前一个记录值的值。
v_OPTION2 = IIF(ISNULL(v_PREV_CODE) OR CODE != v_PREV_CODE,
111111,
v_PREV_OPTION
)
out_OPTION2 = v_OPTION2
v_PREV_OPTION = OPTION
v_PREV_CODE = CODE