2017-10-12 5 views
0

私は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が1つしかない場合は、値1111も設定します。これは、複雑ではなく、powercenterでSORTER変換を行うことで行います。 できないことは次のステップです。 OPTIONフィールドの中で最も高い値を持つ2番目のレコードは、最初のフィールドの値などに対応します。

OUTPUT:

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

オプションのコード順と降順で並べ替えることができます。次に、式変数で、前のレコードの値の値を変数に保持します。

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 
関連する問題