I have changed my mind again on this matter of using the RPGIII style of calling external programs instead of subprocedures, modules, service programs and all that sort of stuff. I am beginning to “see the light” about updating my coding style.
I don’t know why, but just out of the blue I started to mess around with the service program concept. I must have 15 or 20 variations on date conversion routines: GTOJ for MMDDYY to Julian, ISOTODOW for inputting an ISO date (CCYYMMDD) and outputting the day of the week, and ISOTOVBG for inputting ISO and outputting a spelled-out date (in the format September 30, 2010) are just a few of them. Somehow I guess I felt that there was a natural grouping evident there that ought to be respected.
So anyway, I began exploring service programs a bit more. I think my main objection to modules was the fact that compilation would be a three-step process- compiling the two modules separately with CRTRPGMOD, then using CRTPGM to create the final program. I considered this to be an incredible nuisance. But I pressed on and put all my date modules into one service program. I then discovered that there was a way in the header specifications to use a “binding directory” to join the main program to modules. I found out how to put service programs into a binding directory, then reference the modules from there.
The final step was freeing myself from a misconception about the use of service programs. The article I was using for reference only referred to the use of CRTPGM. I found, though, that once the binding directory reference was inserted into the H spec, I could use CRTBNDRPG, just like I always do, so it could be a one-step compilation again. This was important beyond simple ease of use, because a number of other programs I had written, including my file/program cross-reference system, provided for recompilation of programs when requested. Before, the few programs that had external subprocedures always bombed on the CRTBNDRPG compile, and I could think of no easy way to create the proper CRTRPGMOD/CRTPGM combinations automatically. That is partly why I had retained the old CALL/PARM syntax, so I would not have to deal with that issue. Now, my problem has been solved.
So maybe there is hope for me yet.
Read the original at RPG and Programming.
ZendCon 2010 has come and gone. If you were there you saw some pretty cool things. If you were not there, why? The IBM i track was well represented by some truly awesome speakers. Alison Butterill, Susan Gantner, Alan Seiden and Sam Pinkhasov all contributed to the usual cadre of PHP community speakers to make the overall experience well rounded and useful!Each year I look forward to the IBM i evening customer networking event. This year we were able to hold it in one of the rooms at the hotel and this is a perfect opportunity to round up the IBM i customers in a central location where they can do the most important thing they can do at this event: COMMUNICATE. I think they all enjoyed it as we had to kick a few folks out of the room after last call. I think education is important but hearing what other IBM i customers are doing with PHP is of great value to everyone. How about that ElePHPant!One of the things I love to do with IBM customers is review any new features they are looking for in the Zend solution suite. This is important because we need to hear what you are up to and what you need to make the solution better for your organization. Just about everyone who has adopted Zend Server for IBM i would extol the virtues of better performance and a single Apache server. That came directly from the community. A highlight of Sam’s session had to do with a new toolkit that is being developed. We don’t have all the details yet, but it looks like it will add functionality and performance improvements over the existing i5 functions. More to come VERY soon!
The IBM i sessions are listed below and the slides should be available on JoinedIn for ZendCon2010
soon. Anyone looking for the handouts from the IBM i sessions, please check this out!Web Services with PHP, Zend Framework and IBM i
by Alan Seiden
PHP and IBM i by Alison Butteril
The MySQL - DB2 for i Connection by Susan GantnerPHP for Batch Jobs on IBM i
by Alan Seiden
What's New in Zend Server for IBM i by Sam Pinkhasov
Expanding IBM i Applications to the IFS Easily with PHP by Mike PavlakStart thinking about ZendCon 2011 now. I think you be just jazzed about joining us!
Read the original at Mike's IBM i PHP blog and more....
No doubt the program status and file information data structures each contain a large number of fields. If you have never done an in-depth review of the data available in these data structures then...
Visit site to read full content and more
Read the original at ile rpg programming: tips and techniques.