Posted: Thu Feb 16, 2006 3:30 am
It is correct (as documented) behaviour. The External Source program is invoked once, and generates as many lines as it will onto stdout. These are delivered into the job design via the output link from the External Source stage. In your shell script $1 can only ever mean the first token from the script's command line.
Your presumption, that it is passed a parameter for each row, is simply not the correct operational model.
An External Target stage is also invoked only once. Rows delivered via the input link to the External Target stage are consumed by stdin of the External Target program.
Your presumption, that it is passed a parameter for each row, is simply not the correct operational model.
An External Target stage is also invoked only once. Rows delivered via the input link to the External Target stage are consumed by stdin of the External Target program.