Page 1 of 1

Routine Statement not understood

Posted: Wed Jan 09, 2013 2:15 am
by hi_manoj
Hi All,
I have started working on routine , I was trying to debug few that are already available in my project. I understand what it is doing, but there were few statements that I have not understood and they are

1) Common /SDKStringDecode/ Initialized, ValueArray, LookupArray
2) Difference between Equate Lookup To Arg1 and Pos = 0
3) Why we use $INCLUDE DSINCLUDE JOBCONTROL.H, $INCLUDE UNIVERSE.INCLUDE ODBC.H

I have gone through the basic programming guide but could not understand what it is trying to explain. If anyone has any document which will help me to understand the routine please share with me.

Appreciate any help on this.

Regards
Manoj

Posted: Wed Jan 09, 2013 2:48 am
by ray.wurlod
COMMON declares that variables will be placed in memory accessible to more than one routine, or even to multiple calls to the same routine.

EQUATE is a compiler directive to load a variable effectively at compile time.
Assignment statements have their effect at run time.

You include any header file when you need its contents. For example, JOBCONTROL.H contains all the DataStage constants as well as DEFFUN declarations for the DataStage Routines and DataStage macros. ODBC.H contains various constants and DEFFUN declarations associated with the BCI (BASIC Call Interface) functions.

And these are all mentioned in the DataStage BASIC manual.

Posted: Wed Jan 09, 2013 3:26 am
by hi_manoj
Ray, I have understood this only part from the book (that you have mention) , but when I look at the code how it is being used was my question. If anyone has any handy document to understand routine please share.

Regards
Manoj

Posted: Sun Jan 13, 2013 12:52 pm
by kduke
The include files are on the machine. So you can find them and look at what is included. They are stored in the UV account in a folder called dsinclude if I remember correctly.

Posted: Sun Jan 13, 2013 3:46 pm
by ray.wurlod
DSINCLUDE is local to the project.
UNIVERSE.INCLUDE is the DSEngine/include directory (Type 19 file).