|
> From: Dan > > AGs: Joe's suggestion of compiling the top program as > ACTGRP(*NEW) and all the called modules as > ACTGRP(*CALLER) is intriguing (...) > Is this technique usually not > used when the end of the application > execution also marks the end of the job? There have been many discussions about AGs. An almost universal consensus has been that programs at the "top level" use AG(*NEW), and called programs use AG(*CALLER). The issue is what constitutes top level, and it seems that the less unanimous but still pretty popular rule of thumb is that if it's called from a command line (including SBMJOB, I guess) or from an application menu, then it's a top level program and thus uses AG(*NEW). So in those circumstances where one menu option calls another (for example a customer inquiry has a function key that calls an A/R inquiry which can also be called directly from the menu), you will have two AGs: the one for customer inquiry and the one for A/R inquiry. > Joe, the file pointers will not be an issue. Everything in the > called modules is either chained > to, or SETLL/READE. And even if you were using "implied file positioning" it's not an issue that should impede your progress. The situation can be easily remedied by doing a SETLL(*START) in your "pseudo-init" routine. I applaud your effort. The idea of a gradual migration to new technology is the best. I transitioned from RPG III to RPG IV, then to CALLB, then to external procedures, and am working towards service programs. I think that's a perfectly acceptable transition. Each step can provide real benefits: 1. RPG IV allows removal of most indicators and other "old" syntax 2. CALLB allows binding (less pieces) and activation groups 3. External procedures allow multiple entry points into a module 4. Service programs allow easier maintenance, I think... <grin> Joe
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.