#2
|
|||
|
|||
en la pantalla de creación de la dynpro, en la pestaña lista elementos, en la lista que sale, hay una que pone tipo, busca el elemento que tiene valor = OK
y seguramente su nombre está en blanco. en nombre pon = OK_CODE. el evento lógica de proceso de la dynpro pon: PROCESS BEFORE OUTPUT. MODULE STATUS_TuNumeroDeDynpro. * PROCESS AFTER INPUT. MODULE USERCOMMAND_TuNumeroDeDynpro. "aqui llamaremos al PAI. En el USERCOMMAND, pon: module USER_COMMAND_TuNumeroDeDynpro input. OK_CODE = sy-ucomm. "aqui es donde le das valor al ok_code CASE ok_code. "aquí es donde chequeas el ok_code. WHEN 'BACK'. LEAVE PROGRAM. WHEN 'EXIT'. LEAVE PROGRAM. WHEN 'CANC'. LEAVE PROGRAM. WHEN 'CLR'. perform mirutina_clear. WHEN 'BACK'. perform mirutina_back. WHEN 'NEXT'. perform mirutina_next. WHEN 'ONLY'. perform mirutina_only. WHEN OTHERS. perform mirutina_others. ENDCASE. endmodule. fijate que el sy-ucomm, no solo recoge el valor del botón o evento que hayamos ejecutado, SAP también le puede dar o quitar valor. Si haces esto, antes de salir "fisicamente" de la dynpro, le traspasas el valor del sy-ucomm al ok_code y en función de uno u otro valor, ejecutas un perform u otro, y mientras no borres o cambies el valor de este ok_code, permanecera tal cual. Espero haberte ayudado! |
Herramientas | Buscar en Tema |
Desplegado | |
|
|