Hi,
ich habe ebenfalls eine anwendung in der ca. 30 button dynamisch gehandelt werden (an/aus...). die beste möglichkeit die ich gefunden habe war, alle buttons in allen zuständen im oberflächenstatus zu definieren. im alv user-exit-command frage ich nun useraktionen ab und wenn ein entsprechender button gedrükt wurde merke ich mit diese info in einer variablen =>
* Gesamtsumme aktivieren
WHEN 'SUM_OFF'.
g_parameter-p_sumges = 'X'.
PERFORM f_leave_and_start_alv.
* Gesamtsumme deaktivieren
WHEN 'SUM_ON'.
g_parameter-p_sumges = ' '.
PERFORM f_leave_and_start_alv.
nachfolgend wird alv verlassen und neu aufgebaut.
im setzen des pf-status steuere ich nun immer welche buttons aktiv sind und welche deaktiv, dementsprechend werden buttons aktiv gezeigt oder auch nicht:
FORM f_alv_pfstatus USING rt_extab TYPE slis_t_extab.
DATA: it_extab TYPE slis_t_extab.
CLEAR it_extab. REFRESH it_extab.
....
* Gesamtsumme aktiv/inaktiv
IF g_parameter-p_sumges = 'X'.
APPEND 'SUM_OFF' TO it_extab.
ELSE.
APPEND 'SUM_ON' TO it_extab.
ENDIF.
...
SET PF-STATUS 'STANDARD_ANALYSE' EXCLUDING it_extab.
Gruß aus dem Frankenland.