‎2007 Apr 10 5:22 PM
HI FRDS
CAN ANY ONE HELP ME ABT CHANGING PARAMETER IN ANY Subroutines AND IN FM.
ANY EXMPLE
THANKS AND REGARDS
DEV
Message was edited by:
dev raj
‎2007 Apr 10 5:30 PM
REPORT demo_mod_tech_example_2 .
DATA: num TYPE i VALUE 5,
fac TYPE i VALUE 0.
PERFORM fact USING num CHANGING fac.
WRITE: / 'Factorial of', num, 'is', fac. "#EC NOTEXT
FORM fact
USING value(f_num) TYPE i
CHANGING f_fact TYPE i.
f_fact = 1.
WHILE f_num GE 1.
f_fact = f_fact * f_num.
f_num = f_num - 1.
ENDWHILE.
ENDFORM.
Regards,
Amey
‎2007 Apr 10 5:28 PM
hi Dev,
Refer to this example
DATA: a1 TYPE string,
a2 TYPE string,
a3 TYPE string,
a4 TYPE string.
PERFORM test USING a1 a2 a3 a4.
PERFORM test CHANGING a1 a2 a3 a4.
PERFORM test USING a1 CHANGING a2 a3 a4.
PERFORM test USING a1 a2 CHANGING a3 a4.
PERFORM test USING a1 a2 a3 CHANGING a4.
...
FORM test USING p1 TYPE string
p2 TYPE string
CHANGING value(p3) TYPE string
value(p4) TYPE string.
...
ENDFORM.
‎2007 Apr 10 5:30 PM
REPORT demo_mod_tech_example_2 .
DATA: num TYPE i VALUE 5,
fac TYPE i VALUE 0.
PERFORM fact USING num CHANGING fac.
WRITE: / 'Factorial of', num, 'is', fac. "#EC NOTEXT
FORM fact
USING value(f_num) TYPE i
CHANGING f_fact TYPE i.
f_fact = 1.
WHILE f_num GE 1.
f_fact = f_fact * f_num.
f_num = f_num - 1.
ENDWHILE.
ENDFORM.
Regards,
Amey
‎2007 Apr 11 3:36 AM
hi Amey thanks a lot for solution
but from dis example i got that using parameter is behaving a pass by value
and changing is as pass by reference
‎2007 Apr 10 5:32 PM
check this program
data: f1 value 'A',
f2 value 'B',
f3 value 'C',
f4 value 'D',
f5 value 'E',
f6 value 'F'.
perform s1 using f1 f2
changing f3 f4.
perform s2 using f1 f2 f3 f4
changing f5 f6.
perform s3 using f1 f2 f3.
form s1 using p1 value(p2)
changing p3 value(p4).
write: / p1, p2, p3, p4.
endform.
form s2 using p1 value(p2) value(p3) p4
changing value(p5) p6.
write: / p1, p2, p3, p4, p5, p6.
endform.
form s3 using value(p1)
changing p2 value(p3).
write: / p1, p2, p3.
endform.
‎2007 Apr 10 6:22 PM