|
Well, take for instance the program I am converting to RPG IV from RPG II. My boss wanted me to modify a program to do some selection on a report. The current report goes through the entire file looking for data that meets certain criteria and once finding it in the primary chains to a bunch of other files and grabs data, then prints it. So, I want to create a display screen where they can enter specific items to print. I go to the RPG program (RPG II) and copy it to the file I want to convert to, then I change the type from RPG36 to RPG, then I run CVTRPGSRC on it. Then I open the file in SEU and my work starts. First off, the F specs are all messed up, going to them I hit a <space> in some white space and then press enter, and all of them get highlighted with errors. I fix all the errors (C instead of F, etc...) and then change them to Externally described files, except for 2. One of these is a multi format file that has yet to be changed and the other I find never had DDS source. So, I then spend a few hours creating the DDS source for the flat file and getting it in place (using CPYF *NOCHK in a new library, etc..). I'm doing other things while I'm doing this on a different session, but it still takes time. Then I compile it to see how many errors I'm going to get. Then I spend a few more hours fixing all the bugs that have been produced (easiest is changing the chain to read the format instead of the file), the DDS for the key doesn't work, and I have to convert it to KList and KFld and change the definitions from DS to S, find the variables that have changed names from the program definition to the external definition, etc... Now I got a program that compiles, but doesn't do anything (no primary file anymore since it's now IF, I stick a Eval *INLR = *On at the end just so it will compile without that error), so now I go about incorporating the display file I created for it, adding ExFmt etc... Of course, I still have a UDS in here I have to figure out what I'm going to do with (do I write a CL front end to populate this, or do I pass them as parameters, or do I pass them from the display file?), etc.. and I'm not near finished. Of course, I could of just copied the RPG36 and OCL to new files, create a quick file to add the items I am looking for, go to the RPG36 program and throw in some quick changes to get it to read it, and be done with it. Time involved, maybe 2 to 3 hours. Time involved converting RPG II to RPG IV 5+ Now, if I was writing this from scratch, it would be much, much faster to write it in RPGIV then RPGII, but legacy exists. There is good and bad in this though. My new program is going to be ILE, or RPG IV anyway, I'm not going to link anything to it. The original program I copied this from, however, is still RPGII. Argh! Regards, Jim Langston Joel Fritz wrote: > Good points on RPGIV, but I like the understanding of the learning curve > even better. The greater the slope, the faster you learn. The steepest > learning curve is the one described below, 0 time to complete mastery. +--- | This is the RPG/400 Mailing List! | To submit a new message, send your mail to RPG400-L@midrange.com. | To subscribe to this list send email to RPG400-L-SUB@midrange.com. | To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com. | Questions should be directed to the list owner/operator: david@midrange.com +---
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.