Show TOC Anfang des Inhaltsbereichs

Diese Grafik wird im zugehörigen Text erklärt Konfigurationsschlüssel Dokument im Navigationsbaum lokalisieren

Der Schlüssel, den Sie der Struktur zuweisen, muss folgende Voraussetzungen erfüllen:

      Er identifiziert die Anwendung, in der die ALV-Ausgabe angezeigt wird.

Dazu können Sie z. B. das Feld USAGE_PATH des S_PARAM_OUT verwenden.

      Er identifiziert die ALV-Ausgabe innerhalb der Anwendung.

Wenn in der Anwendung mehrere ALV-Ausgaben angezeigt werden, müssen Sie diese von einander unterscheiden können. Dazu können Sie z. B. das Feld ALV_COMPONENT_USAGE verwenden, das die Component-Verwendung der einzelnen ALV-Ausgaben zurückgibt.

      Er identifiziert die Struktur, die mit SET_DATA in der ALV-Ausgabe angezeigt wird.

Dazu können Sie eine beliebige, eindeutige Zeichenfolge verwenden.

Wenn Sie diese drei Bestandteile aneinanderhängen, erzeugen Sie somit einen Schlüssel, der eine Struktur ausreichend identifiziert. So kann eine Sicht eindeutig zugeordnet werden.

Das folgende Beispiel zeigt in einer Methode SET_ALV_CONFIG_ID die Schritte, die beim Erzeugen und Zuweisen des Konfigurationsschlüssels notwendig sind:

 

method SET_ALV_CONFIG_ID.
[ ... ]

  data:
    l_ref_if_controller type ref to iwci_salv_wd_table,
    lr_node             type ref to if_wd_context_node,
    own_key             type string.

*... Get RELEVANT NODE of the APPLICATION CONTEXT
  lr_node = WD_THIS->APPL_get_data_node( ).

 

*... Determine name for KEy dependING on THE APPLICATION CONTEXT

  OWN_KEY = 'ALV1'.

 

*... SET NODE of THE APPLICATION CONTEXT
  l_ref_if_controller->set_data( r_node_data = lr_node ).

[ ... ]

*... create configuration key consisting of
*    usage path, component usage, own key
  data:
    ls_param_out type if_salv_wd_table=>s_type_param_config_out,
    ls_param_in  type if_salv_wd_table=>s_type_param_config_in,
    l_key        type string,
    l_key_32     type string.

  ls_param_in-action = if_salv_wd_table=>key.
  ls_param_out = l_ref_if_controller->get_config_data( ls_param_in ).

  concatenate
    ls_param_out-usage_path
    ls_param_out-alv_component_usage
    own_key
  into
    l_key
  separated by '&'.

*... Hash configuration key to unique key of 32 chars length
  try.
    l_key_32 = cl_rsmds_hash_utilities=>to_hash_c32( l_key ).
    catch cx_rsmds_input_invalid cx_rsmds_input_invalid_type.
  endtry.

[ ... ]

*... set new configuration key
  ls_param_in-action                 = if_salv_wd_table=>set.
  ls_param_in-config_key-config_type = '08'. 
  ls_param_in-config_key-config_id   = l_key_32.

  l_ref_if_controller ->get_config_data( ls_param_in ).

Ende des Inhaltsbereichs