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

Reply via email to