IF
( process IS INITIAL OR objvers IS INITIAL ) " not specified process key
OR ( execrslt IS NOT INITIAL AND execnode IS INITIAL )
OR ( delerslt IS NOT INITIAL AND delenode IS INITIAL )
OR ( execcalc IS NOT INITIAL AND calenode IS INITIAL )
OR ( delecalc IS NOT INITIAL AND caldnode IS INITIAL )
.
* Message should never appear. This case should be catched
MESSAGE e001 WITH 'PARAMETER_COMBINATION_INVALID' '' '' ''.
RETURN.
ENDIF.
*--- convert parametres from selection screen to form parameters
DATA: g_exec_mode TYPE y_exec_mode,
g_node TYPE rsan_mdl_node_name_db.
IF execute = 'X'.
IF explain IS INITIAL.
g_exec_mode = c_exec_mode-execute.
CLEAR g_node.
ELSE.
g_exec_mode = c_exec_mode-execute_explain.
CLEAR g_node.
ENDIF.
ELSEIF execrslt IS NOT INITIAL.
IF explain IS INITIAL.
g_exec_mode = c_exec_mode-build_im.
g_node = execnode.
ELSE.
g_exec_mode = c_exec_mode-build_im_explain.
g_node = execnode.
ENDIF.
ELSEIF delerslt IS NOT INITIAL.
g_exec_mode = c_exec_mode-delete_im.
g_node = delenode.
ELSEIF execcalc IS NOT INITIAL.
g_exec_mode = c_exec_mode-build_cs.
g_node = calenode.
ELSEIF delecalc IS NOT INITIAL.
g_exec_mode = c_exec_mode-delete_cs.
g_node = caldnode.
ELSEIF purgeall IS NOT INITIAL.
g_exec_mode = c_exec_mode-delete_results.
CLEAR g_node.
ELSE.
ASSERT 1 = 0.
ENDIF.
PERFORM main
USING process objvers g_exec_mode g_node.
Ctrl + V thread, Paste whatever you Ctrl+C here