1

Arg1ベースを解析するために DataStage で C 関数/ルーチンが必要でありArg2、結果の値を返す必要があります。ここで、Arg1は Transformlogic に他ならず、Arg2の入力値ですArg1。以下は機能です:

char* TransformParsing(char* Arg1, char* Arg2) 
{ 
..... 
parsing.. 
... 
.... 
return result; 
} 

そして、以下のように区切られた4つの列を持つ入力レコードがあり|ます:

KeyCol | TransformLogic1|TransformLogic2|TransformLogic3 
100|"if Col49[1,4]=COMM then I else P"|"if Col49[1,4]=COMM then Commission else Polo"|"if Col49[1,4]=COMM then ABC else xyz" 
101|TfL1|TfL2|TfL3 
102|TfL1|TfL2|TfL3 

ここでは、1 行目に 3 つの TransformLogic があります (つまり、KeyCol=100)。ここで、行全体を同時に処理したいと考えています。上記のルーチンは、以下のように、残りの 2 列をダミーとして、1 列で使用すると結果を返すことができます。

KeyCol, TransformParse(Arg1, Arg2), "Dummy", "Dummy" --->is executing perfectly. 

行全体を処理したい場合は、3 つの場所で同時にルーチンを呼び出す必要があります。関数を何度も呼び出すと、実行中/ハングアップし続けるだけです。それが私がマルチスレッドに行きたいことです。

以下のように:

KeyCol, TransformParse(Arg1, Arg2), TransformParse(Arg1, Arg2), TransformParsing(Arg1, Arg2).---> Is not executing perfectly 

これで、自分の目的が非常に明確になったことを願っています。誰かが私の仕事を理解し、同じように助けてくれませんか?

4

0 に答える 0