‎2008 May 29 5:27 AM
Hi,
I want to generate random number in my program. how can i generate random number.
Regards
Piyush
‎2008 May 29 5:31 AM
Hi,
Generating Random Numbers
Function Module QF05_RANDOM_INTEGER can give a random number for a given minimum and maximum values. Study the code below:
Code
REPORT ZRANDOM.
DATA RANINT LIKE QF00-RAN_INT.
PARAMETERS: P_MAX LIKE QF00-RAN_INT DEFAULT 100,
P_MIN LIKE QF00-RAN_INT DEFAULT 1,
P_TIMES TYPE I DEFAULT 10.
WRITE:/ 'RANDOM NUMBER'.
ULINE.
DO P_TIMES TIMES.
CALL FUNCTION 'QF05_RANDOM_INTEGER'
EXPORTING
RAN_INT_MAX = P_MAX
RAN_INT_MIN = P_MIN
IMPORTING
RAN_INT = RANINT
EXCEPTIONS
INVALID_INPUT = 1
OTHERS = 2.
IF SY-SUBRC EQ 0.
WRITE:/ RANINT.
ELSE.
WRITE:/ 'UNABLE TO GENERATE RANDOM NUMBER'.
ENDIF.
ENDDO.
Regards,
Jagadish
‎2008 May 29 5:35 AM
Hi,
Check the following FM:
SXMS_CREATE_RANDOM_NUMBER
QF05_RANDOM
QF05_RANDOM_INTEGER ---> This may suits for you requirement.
Regards,
Raghu
‎2008 May 29 5:40 AM
hai
if we generate no based on number range defined in SPRO
use FM NUMBER_GET_NEXT
before define number range using SNRO transation.
or generate random numbers using this function module, QF05_RANDOM_INTEGER, can be used to generate a random number. Sample program using the function module is shown below:
REPORT zrandom_test.
DATA:
number TYPE i.
CALL FUNCTION 'QF05_RANDOM_INTEGER'
EXPORTING
ran_int_max = 1000
ran_int_min = 1
IMPORTING
ran_int = number
EXCEPTIONS
invalid_input = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
WRITE 😕 'Next available number is: ', number.
thanks
sitaram