|
Nice ribbon lol. However, now I'm confused. You are saying that if, else, if, else, endif, endif is different than if, elseif, else, endif? Can you tell me what happens with the following: a = 1; b = 2; c = 3; if (a=1); dsply a; else; if(b=2); dsply b; else; dsply c; endif; endif; versus: if(a=1); dsply a; elseif(b=2); dsply b; else; dsply c; endif; >From what I've learned, both scenarios will only show a=1 right? Ron Power Programmer Information Services City Of St. John's, NL P.O. Box 908 St. John's, NL A1C 5M2 709-576-8132 rpower@xxxxxxxxxx http://www.stjohns.ca/ ___________________________________________________________________________ Success is going from failure to failure without a loss of enthusiasm. - Sir Winston Churchill "Bob Cozzi" <cozzi@xxxxxxxxx> Sent by: rpg400-l-bounces@xxxxxxxxxxxx 2006/05/25 03:42 PM Please respond to RPG programming on the AS400 / iSeries <rpg400-l@xxxxxxxxxxxx> To "'RPG programming on the AS400 / iSeries'" <rpg400-l@xxxxxxxxxxxx> cc Subject RE: Having both if/else executing at the same time ELSE and IF are two statements. In your code the only time the second IF will be performed is when the first IF fails. Why? Because the first ELSE is only going to be run if the first IF fails. Otherwise it'll jump to the ENDIF statements. I think what you really mean to have is ELSEIF not "ELSE" and "IF". Replace the ELSE and IF with ELSEIF, and then take a look as this page: www.rpgiv.com/blueribbon.html if %len(%trim(APIErrMsg)) > 0; W#ERFL = *ON; W#MSDT = 'Error #' + APIErrMsg + ' receiving data from ' + 'data queue. Detail: ' + APIErrDta; elseif %trim(itmInfo) = ''; W#ERFL = *ON; W#MSDT = 'Invalid data received from data queue: ' + itmInfo ; else; uMATNO = jMATNO; uSIZE = jSIZE; uTEMPER = jTEMPER; uINSUL = jINSUL; uTENSIL = jTENSIL; endif; endif; -Bob Cozzi www.RPGxTools.com RPG xTools - Enjoy programming again. -----Original Message----- From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Willie J. Moore Sent: Thursday, May 25, 2006 10:18 AM To: rpg400-l@xxxxxxxxxxxx Subject: Having both if/else executing at the same time Need some help with the following section of code. The second if/else are both executing. It acts as if the if/else is one statement. We have checked the paring of the if/else and they look correct. Any ideals or help would be greatly appreciated. if %len(%trim(APIErrMsg)) > 0; W#ERFL = *ON; W#MSDT = 'Error #' + APIErrMsg + ' receiving data from ' + 'data queue. Detail: ' + APIErrDta; else; if %trim(itmInfo) = ''; W#ERFL = *ON; W#MSDT = 'Invalid data received from data queue: ' + itmInfo ; else; uMATNO = jMATNO; uSIZE = jSIZE; uTEMPER = jTEMPER; uINSUL = jINSUL; uTENSIL = jTENSIL; endif; endif; Thanks, Willie Moore & Josh Diggs California Fine Wire
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.