How do I read genlib tables?

 6 Replies
 0 Subscribed to this topic
 17 Subscribed to this forum
Sort:
Author
Messages
Donna Wirt
Basic Member Send Private Message
Posts: 17
Basic Member
I'm trying to read the genlib/JOBSTEP table to get a parameter value to use in a custom lawson program and a shell script.  Any help is greatly appreciated.  Thanks.
Greg Moeller
Veteran Member Send Private Message
Posts: 1498
Veteran Member
I use rngdbdump command... Set your lawson environment variables in your script or just include this line...
eval `/usr/bin/cvx -b lawprod`

Where lawprod is your Lawson enviornment name..

Then, to get the field names:
rngdbdump -ct gen jobstep | head -1

Then to extract the field, you don't need headers, so use the n switch
rngdbdump -cnt gen jobstep -f jobname description -v jobname=your_value

This will extract just the jobname and description fields from the jobstep table where jobname=your_value
Greg Moeller
Veteran Member Send Private Message
Posts: 1498
Veteran Member
Or better yet: Assign something to a variable like this:
myVar=$(rngdbdump -cnt gen queuedjob -f status -v jobname=${JOB}|grep "${DATE}")
Donna Wirt
Basic Member Send Private Message
Posts: 17
Basic Member
Is there a way using rngdbdump to say I want the value in the PARAMS field starting in position 1034 for 15 positions?
Greg Moeller
Veteran Member Send Private Message
Posts: 1498
Veteran Member
Sure:
myVar=$(rngdbdump -cnt gen jobstep -f params | cut -c 1034-1048)
Greg Moeller
Veteran Member Send Private Message
Posts: 1498
Veteran Member
I should have had your jobname in the command somewhere...
myVar=$(rngdbdump -cnt gen jobstep -f params | grep YourJob | cut -c 1034-1048)
Donna Wirt
Basic Member Send Private Message
Posts: 17
Basic Member
Greg, thank you for all of the great suggestions!  Big help!