On 15/03/13 19:42, Charles Leviton wrote:
Given a list of DBRM members create a JCL which has a series of bind
statements for each DBRM.
Ah, the joys of JCL.
I haven't read a JCL script in about 15 years! :-)
This is the tack I took. I have 3 input files
a_ contains the fixed part of the JCL
b_ contains the template for the bind statement.
c_ contains the list of DBRMs
Yep, that's fine.
This is the script I came up with...Would you critique it and let me
know how I could have done it better?
#create a series of bind statements
fo = open('i:/text/jclout.txt', 'w')
fi = open('i:/text/bindjclfirstpart.txt','rU')
fibindjclvar = open('i:/text/bindjclvariable.txt','rU')
filistofdbrms= open('i:/text/bindjcldbrmlist.txt','rU')
varlines =[]
You don't need this since the next line initialises the list anyway.
Python rarely requires initialising to null values, you can usually
initialise to the actual data directly.
varlines = fibindjclvar.readlines()
for line in fi: #write out all the lines in the first part of JCL
fo.write(line)
fo.write('\n')
varline = ''
Again you don't need this since you always initialise varline below.
for dbrm in filistofdbrms:
fo.write('\n')
for index in range(0,9):
if varlines[index].find('member') > 0:
varline = varlines[index] + '('+ dbrm + ')' + ' -'
else:
varline = varlines[index]
fo.write(varline)
fo.close()
fi.close()
fibindjclvar.close()
filistofdbrms.close()
And that's all, the rest looks fine to me.
PS.
Note to Hugo. JCL = Job Control language.
Its like a Unix shell script that specifically used to set up a programs
runtime environment (how much disk, RAM, CPU it's allowed to consume,
start/end times etc etc.) One of the most powerful things about a
mainframe that makes them so much more robust than Unix boxes is the
fine grained control offered by JCL...
HTH
--
Alan G
Author of the Learn to Program web site
http://www.alan-g.me.uk/
_______________________________________________
Tutor maillist - [email protected]
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor