- REPORT ZHIDDEN_PERFORM.
- *--[ Ofuscación en las asignación de las llamadas
- perform tgbrty using 'lesil-ys' 'poiuytrewq'.
- *--[ Utilizamos sy-lisel para no saber a quien se está llamando
- perform qazwsx using sy-lisel.
- perform tgbrty using 'lesil-ys' 'zxcvbnm'.
- perform qazwsx using sy-lisel.
- *--[ Esta es la rutina que asigna un valor a una variable
- form tgbrty using qwedsazxc1 qwedsazxc2.
- data: l_l like sy-lisel.
- FIELD-SYMBOLS: <f>.
- sy-pagno = strlen( qwedsazxc1 ).
- sy-lisel = qwedsazxc1.
- do sy-pagno TIMES.
- CONCATENATE sy-lisel+0(1) l_l into l_l.
- shift sy-lisel+0(sy-pagno) left.
- ENDDO.
- assign (l_l) to <f>.
- <f> = qwedsazxc2.
- endform.
- *--[ Esta es la rutina de
- form qazwsx using qwedsazxc.
- data: l_l like sy-lisel.
- sy-pagno = strlen( qwedsazxc ).
- sy-lisel = qwedsazxc.
- *--[ Aquí va el método de DECODE, como ejemplo he puesto algo sencillo:
- *--[ Mirror de las variable
- do sy-pagno TIMES.
- CONCATENATE sy-lisel+0(1) l_l into l_l.
- shift sy-lisel+0(sy-pagno) left.
- ENDDO.
- TRANSLATE l_l TO UPPER CASE.
- *--[ Salto dinámico
- perform (l_l) in PROGRAM (sy-cprog) if FOUND.
- endform.
- *--[ Procedimientos dinámicos, no hay referencias de ser llamados
- form qwertyuiop.
- write 'Hello'.
- endform.
- form mnbvcxz.
- write 'World'.
- endform.
Última modificación de la página el 04 November 2015 a las 15h04
Powered by
PmWiki