具有所需值的转换

Transformations with desired values

我正在尝试使用 powercenter designer 进行处理,但没有得到所需的 objective。

我有这些初始数据:

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

我怎么能得到这个? 我应该使用哪些转换?

谢谢! ^^

您可以按代码和选项降序排列。然后在表达式变量中保存变量中前一条记录的值。

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