DataStage Job 96 Phantom 5996

Post questions here relative to DataStage Server Edition for such areas as Server job design, DS Basic, Routines, Job Sequences, etc.

Moderators: chulett, rschirm, roy

Post Reply
gdheatley
Participant
Posts: 10
Joined: Mon Aug 11, 2003 2:52 pm

DataStage Job 96 Phantom 5996

Post by gdheatley »

DataStage Job 96 Phantom 5996
Program "DSD.StageRun": Line 755, Variable "$R61" previously undefined. Empty string used.
DataStage Phantom Finished

Any ideas? Very simple job, single transform that does call a routine and uses stage variables, but thats about it.
ArndW
Participant
Posts: 16318
Joined: Tue Nov 16, 2004 9:08 am
Location: Germany
Contact:

Post by ArndW »

apart from trying to look at the generated code (not recommended for the meek) there is not direct way to do this; I'd start commenting out likely causes in a test copy of the until the warning goes away.
ogmios
Participant
Posts: 659
Joined: Tue Mar 11, 2003 3:40 pm

Re: DataStage Job 96 Phantom 5996

Post by ogmios »

gdheatley wrote:DataStage Job 96 Phantom 5996
Program "DSD.StageRun": Line 755, Variable "$R61" previously undefined. Empty string used.
DataStage Phantom Finished

Any ideas? Very simple job, single transform that does call a routine and uses stage variables, but thats about it.
A variable is used in the job which was not defined, probably a typo somewhere in your stage variables or so. What I try to do in these cases is to have a real error in the job. When DataStage then compiles the job it will leave the generated source somwhere in the project directory... I usually check the changed date of the files to find the last generate file, they have these akwards names as JOB.2233901952.DT.1241931882.xxx.

The line number in the error message is the line number in this generated source (minus some offset).

Ogmios
In theory there's no difference between theory and practice. In practice there is.
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

You won't see a variable called $R61 in the code; this is a temporary variable used to hold some intermediate value in an expression. It will, therefore, be that more difficult to track down.

Test your Routine rigorously; make sure there is no path through it in which any variable (including the arguments) can be in an unassigned state. Include tests (using the UnAssigned() function) at the top of the routine to supply default values or generate errors if a routine argument has not had a value assigned to it.
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
gotosarath
Participant
Posts: 13
Joined: Mon Sep 13, 2004 5:01 am

DataStage Job 96 Phantom 5996

Post by gotosarath »

What Ray said is right. This error occurs if I use a code like

Case Arg1 = 1
Then Ans = 'abc'
Case Arg2 = 2
Then Ans = 'xyz'
In the baove code I havent handled a condition where Arg1 is neither 1 nor 2. This is a simple code.

Thanks,
Sarath
Tatiana
Participant
Posts: 18
Joined: Tue Jul 15, 2003 3:23 pm

Re: DataStage Job 96 Phantom 5996

Post by Tatiana »

what directory do you search in for the files to find the last generate file such as JOB.2233901952.DT.1241931882.xxx?

Thanks.
I_Server_Whale
Premium Member
Premium Member
Posts: 1255
Joined: Wed Feb 02, 2005 11:54 am
Location: United States of America

Post by I_Server_Whale »

Hi Tatiana,

You just hijacked a 2 year old thread. If you question is related to this post, then start a new thread with this post as a reference in your new post.

You will find the file under respective RT_BPxxx folder in your project directory.

Whale.
Anything that won't sell, I don't want to invent. Its sale is proof of utility, and utility is success.
Author: Thomas A. Edison 1847-1931, American Inventor, Entrepreneur, Founder of GE
Post Reply