The joy of REXX

Use REXX for an easy way of getting a random number.

The code below will generate a random number between 0 and 99,999. The REXX code should be added to a member of type REXX called 'RANDOM' in a source physical file called QREXSRC (no compilation is needed). The CL provides an example of how to run the REXX procedure (nb replace 'libname' with the name of the library where QREXSRC is located).


 		
/*********************************************************************/
/* Program: RNUMC - Generate a Random Number using REXX              */
/*********************************************************************/
pgm                                                                    
dcl        &Func       *char    1    value('P')                        
dcl        &Buff       *char    5                                      
dcl        &BuffLen    *char    4    value(X'00000005')                
dcl        &Flag       *char    2    value(X'0000')                    
dcl        &RtnCde     *char    2    value(X'0000')                    
                                                                       
/* Start the REXX procedure                                          */
strrexprc  srcmbr(RANDOM) srcfile(libname/QREXSRC)                       
                                                                       
/* Pull the result from the REXX data queue                          */
call       pgm(QREXQ) parm(&Func &Buff &BuffLen &Flag &RtnCde)         
                                                                       
endpgm                                                                 
                                                                      
                                                                      
                                                                      
/*********************************************************************/
/* Procedure: RANDOM - Generate a random number between 0 and 99,999 */
/*********************************************************************/
                                                                       
/* Generate a 5 digit random number                                  */
RN=RANDOM(0,99999)                                                     
                                                                       
/* Push the result onto the REXX external data queue                 */
PUSH FORMAT(RN,5,0)                                                    
                                                                       
exit     
This was first published in July 2001

Dig deeper on RPG iSeries programming

0 comments

Oldest 

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to:

-ADS BY GOOGLE

SearchEnterpriseLinux

SearchDataCenter

Close