|
Dean: Please tell me how I properly structure a screen edit routine where the user has requested serial editing, i.e. stop and redisplay the screen as soon as the first error is encountered. I would code it as follows: C @@edit betsr * C item chain itemmast 20.... c if *in20 c goto edit@@ c endif * c cust chain custmast 21.... c if *in21 c goto edit@@ c endif * c cmhold ifeq 'Y' c eval *in22 = *on c goto edit@@ c endif ... c edit@@ endsr How would you code this without using a GOTO, without testing an error flag repeatedly, and without using a DO *FOREVER/LEAVE construct? >> >>13. We have ITER and LEAVE to exit a do loop. How do we exit a >> >> subroutine without doing a GOTO. What above an operation code >> >> to GOTO *ENDSR just like ITER does a GOTO ENDO and LEAVE does >> >> a GOTO ENDO+1. I have no idea what to call the op code. I >> >> just know we desparately need it. (This should be trivial - >> >> please fix it.) >> > >> > How about LEAVESR ? >> >> >> Why not just put a TAG on the ENDSR and GOTO it? Does the same thing, >and, >> if you call it something like LEAVE/EXIT/QUIT it's fairly obvious what >it's >> doing. >> >> All this just to avoid the use of a GOTO.... *sigh* > >RRRRRRrrrrrrrrrrr! How about just structuring your logic so that it FALLS to >the ENDSR? Why should subroutines be any different from mainline logic? A >LEAVESR command would be USELESS if the code were structured properly in the >first place. I've found places for using both ITER and LEAVE, especially >when converting S/36 code. I HAVE YET to find a place in my heart for a GOTO >:-). > Charlie Massoglia, Massoglia Technical Consulting, Inc. PO Box 1065, Okemos, MI 48854, USA 517-676-9700 Fax: 517-676-1006 EMAIL: cmassoglia@voyager.net * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * This is the Midrange System Mailing List! To submit a new message, * * send your mail to "MIDRANGE-L@midrange.com". To unsubscribe from * * this list send email to MAJORDOMO@midrange.com and specify * * 'unsubscribe MIDRANGE-L' in the body of your message. 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-2025 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.