Page 1 of 1

Parameters

Posted: Tue Oct 06, 2009 7:27 am
by clausskou
Hi,

I have recently taken over the responsibililty for our Datastage environment - vers. 7.5.1 A on windows. Now we have job which has been deployed to the production server. A developer forgot to erase the parameter from the test environment. In produktion we use a parameterfile with the relevant jobsparameters. Now the question, Will datastage always try to use the job parameters in the job before using a possible parameter file?. In production we use dsjob.exe with -params to run the jobs. The -params coming from the parameterfile.

Thanks,

Claus

Posted: Tue Oct 06, 2009 7:40 am
by ArndW
The "dsjob -lparams" call will not execute a job, but list the parameters that it uses. On a similar note, could you explain what sort of parameters you mean - particularly the parameter file. Perhaps at your site you have a written set of programs or routines that populate parameter values.

Posted: Tue Oct 06, 2009 7:40 am
by chulett
The answer totally depends on how your 'job control wrapper' is coded. By default, all a job will use are the default values coded in the job at design time. However, from what you posted it sounds like your wrapper is coded to check to see what parameters the job uses (-lparams) and then I assume it reads the parameter file and sets them appropriately. By the way, some variation of this is very common and means there's no need to 'erase' anything as the job moves from environment to environment.

If you are unsure what your dsjob wrapper is doing, you could always post that code and we could explain it to you. Your call. :wink:

Posted: Tue Oct 06, 2009 9:49 pm
by sachin1
In my env all job parameters defined in parameter file overrides the value of parameter set in job design.

Posted: Tue Oct 06, 2009 9:57 pm
by chulett
We're not talking about parameter sets and value files, if that's what you are referring to, those aren't available in any pre-8 release.

Posted: Wed Oct 07, 2009 1:27 am
by clausskou
Thanks. Your replay makes sense to me. There is a wrapper and it seems to check the parameters. I guess Datastage is case-sensitive. In the job there is a "DataFile_Dir" parameter with a value and in the parameter file, there is a DataFile_dir. I assume this is the course of the problem. In this case Datastage will use DataFile_Dir value and not the parameter file. Am I correct in assuming this?

Best regards

Claus
chulett wrote:The answer totally depends on how your 'job control wrapper' is coded. By default, all a job will use are the default values coded in the job at design time. However, from what you posted it sounds like your wrapper is coded to check to see what parameters the job uses (-lparams) and then I assume it reads the parameter file and sets them appropriately. By the way, some variation of this is very common and means there's no need to 'erase' anything as the job moves from environment to environment.

If you are unsure what your dsjob wrapper is doing, you could always post that code and we could explain it to you. Your call. :wink:

Posted: Wed Oct 07, 2009 6:45 am
by chulett
Correct. It will look for the parameter in the file and not find it, thus letting the parameter default.

Posted: Thu Oct 08, 2009 5:41 am
by clausskou
chulett wrote:Correct. It will look for the parameter in the file and not find it, thus letting the parameter default.
Thank you very much. Just as I expected.

Best regards,

Claus