Page 2 of 2

Posted: Mon Mar 23, 2009 9:39 am
by kduke
The path is probably wrong for the dsjob command. It is usually ../../DSEngine/bin/dsjob in Windows it is ..\Engine\bin\dsjob.exe. You have to get this correct to make it all work. The current project path is relative to the DSEngine usually. You can do an absolute path if you like.

So

Code: Select all

cat /.dshome
Result:
/etl/Ascential/DataStage/DSEngine

Code: Select all

SH "pwd"
Result:
/etl/Ascential/DataStage/Projects/MyProject

So when you run a job its current directory is the project directory. So then you need to go up 2 directories to get to the directory above the engine directory.

Posted: Mon Mar 23, 2009 11:52 am
by efxuser
thanks for the quick response.Ok i checked my dsjob ommand directly in the command line it works fine.I am using absolute path.I am guessing the issue is with file path.

I tried using absolute path as the value for filepath parameter in dsjobreportdb and dsjobreportdbdriver.when i run the driver it is creating different instances of dsjobreportdb.<instancename> with instancename = job name in the sequence.these instances are failing with the error

DSJobReportDb.Job_pre_app_fin.CheckForParams: |DSJobReportDb.Job_pre_app_fin.DSJobReport3.xml_report3: DSD.SEQOpen Failed to open Job_pre_app_fin.xml in directory KimD
STATUS = -1.|
When should these xml files be created after dbdriver ?


I am searching where you are writing in this KimD drectory but I cannot find it.ANy pointers will help.

Posted: Mon Mar 23, 2009 1:58 pm
by kduke
You should of created a KimD directory below your project. You can change this path to . and it will write in the project directory. It will clutter it up with xml files. The file name is the job name plus ".xml".

Posted: Mon Mar 23, 2009 2:11 pm
by efxuser
I do have a KimD direcotyr below my project folder.It has the follwing folders Backups Jobs Routines RowHist Scripts Sql2Html
.This is where I am expecting the xmls but of no use .

Posted: Mon Mar 23, 2009 5:53 pm
by kduke
Maybe you have \ in the path and not /. Use / in UNIX servers and \ on Windows servers.

Posted: Mon Mar 23, 2009 5:53 pm
by kduke
Make sure you have write permission to the directory.

Posted: Tue Mar 24, 2009 9:41 am
by efxuser
Ok.
My dsjobcmd in dsjobreportdb is "/landing01/dataint/Ascential/DataStage/DSEngine/bin/dsjob -report XML" .

My filepath is /dataint/sprint/dev/datastage/projects/sprint ( this is my project path)

My filename in the stage is KimD/#jobName#.xml

The xml is not getting created where it is supposed to be

I found a not in your seq file stage in db job it goes like this"Note: the sequential file stage requires a file to exist, and it verifies that the file can be opened, even though the records will come from the filter command. You can make this portable without difficulty by specifying the file uvodbc.config, which is a file that will always exist in every datastage project directory. (if you don't specify a path, it assumes the project directory)

#dsjobcmd# #projName# #jobName# XML >KimD/#jobName#.xml"

what do u mean by uvodbc.config?i tried creating a dummy xml file too but no avail.

Posted: Tue Mar 24, 2009 11:58 am
by efxuser
can u please tell me where can i modify the jobs to see which path is dsjobdb writing to and which path dsjobreportdbdriver reading form...it will help me to debug.

Posted: Tue Mar 24, 2009 1:29 pm
by kduke
The Driver job calls the dsjobreportdb job. The dsjob command is a before job command of dsjobreportdb. You should be able to debug from there. Take your command and run it manually.

Code: Select all

cd ProjectDir
dsjobcmd=
projName=
jobName
echo $dsjobcmd $projName $jobName XML >KimD/$jobName.xml
$dsjobcmd $projName $jobName XML >KimD/$jobName.xml

Posted: Tue Mar 24, 2009 2:04 pm
by efxuser
Thank very much for your quick response.OK that works....i gues aim almost there...the etl_job_hist and etl_row_hist are getting populated.but etl_param_hist has param_name but param_value is not getting populated. I am assuming it should get populated?any ideas how should i go abpout it?

Posted: Wed Mar 25, 2009 8:54 am
by kduke
It should show exactly like DS Director. If you have compiled these jobs then the values go away. It could be because you have not fed in the instance id. The job name is really job name "." instance id. So it may become LoadInvoices.200903 for job LoadInvoices and instance id of 200903.

If you think something is wrong with your XML file then you need to edit the XML and compare it to the metadata within the job. If you are on a different release of DataStage then the XML file format could of changed.

One of these issues is your problem.