I need to call a perl script through a routine. any specific commands to do the same. I am not opting an execute command stage to do the same since i have to apply the functionality of the script over few columns in the job.
Do you mean a C++ routine or a DS Basic routine? You posted in General, but as a PX type and the answer depends upon where you wish to execute a shell command from.
So, execution of a perl script once per row inside your job? That's really going to kill performance, are you sure there's no better approach available here? What does the script do?
-craig
"You can never have too many knives" -- Logan Nine Fingers
Simply use DSExecute function inside your routine and invoke the PERL script as you invoke normal UNIX scripts. You can search for the syntax and usage over the internet.
chulett wrote:So, execution of a perl script once per row inside your job? That's really going to kill performance, are you sure there's no better approach available here? What does the script do? ...
My script has a set of regex and the i/p data for certain columns in the table has to be validated against these regexes. since i have to validate only for couple of columns in the table i cannot go for execute command stage or before and after subroutines in job properties.
I am not sure if you are aware of the performance impact of calling a perl script once per row in your job. Are you certain that you cannot emulate your regular expressions within DataStage?