cancel
Showing results for 
Search instead for 
Did you mean: 

Setting ALV Header text doesn't work

Former Member
0 Kudos

I'm trying to set different titles on my headers of the ALV table. To do this I do the following during the WDDOINIT of the COMPONENTCONTROLLER.


  CALL METHOD WD_THIS->GO_ALV_EINSTELL->IF_SALV_WD_COLUMN_SETTINGS~GET_COLUMNS
    RECEIVING
      VALUE  = lt_columns
      .
  LOOP AT lt_columns INTO ls_column.
    CASE ls_column-ID.
      WHEN 'SETTING_ID'.
        CALL METHOD LS_COLUMN-R_COLUMN->SET_FIXED_POSITION
           EXPORTING
             VALUE  = CL_WD_ABSTR_TABLE_COLUMN=>E_FIXED_POSITION-LEFT
            .
        CALL METHOD LS_COLUMN-R_COLUMN->SET_POSITION
          EXPORTING
            VALUE  = '2'
            .
        CALL METHOD LS_COLUMN-R_COLUMN->GET_HEADER
          RECEIVING
            VALUE  = lo_header
            .
        IF NOT ( lo_header IS BOUND ).
          CALL METHOD LS_COLUMN-R_COLUMN->CREATE_HEADER
            RECEIVING
              VALUE  = lo_header
              .
        ENDIF.
        CALL METHOD LO_HEADER->SET_TEXT
          EXPORTING
            VALUE  = 'Einstellung'
            .
      WHEN 'EVENT_TYPE'.
        ...
    ENDCASE.
  ENDLOOP. 

The debugger shows me that the different titles are updated but when it gets displayed I see the old DDIC titles. Any ideas on how to fix this?

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

The method SET_DDIC_BINDING_FIELD is marked as obsolete. Anything I need to check if I use SET_PROP_DDIC_BINDING_FIELD instead?

saket_abhyankar
Active Participant
0 Kudos

Yes, the method SET_DDIC_BINDING_FIELD is obsolete, so use SET_PROP_DDIC_BINDING_FIELD instead

Refer following link for more help on ALV column header and method SET_PROP_DDIC_BINDING_FIELD.

http://help.sap.com/saphelp_NW70EHP1/helpdata/en/f7/924a3de0384c2c893ca867cb936551/content.htm

Edited by: Saket Abhyankar on Jan 13, 2010 6:37 PM

Former Member
0 Kudos

Thank you

Dirk

Answers (2)

Answers (2)

saket_abhyankar
Active Participant
0 Kudos

I hope you want to change the name of ALV column in the display.

Try following code for the same:

DATA: l_ref_interfacecontroller TYPE REF TO iwci_salv_wd_table .

l_ref_interfacecontroller = wd_this->wd_cpifc_alv_table( ). " Value from the prop tab of the view

DATA: l_value TYPE REF TO cl_salv_wd_config_table.

l_value = l_ref_interfacecontroller->get_model( ).

DATA l_column TYPE REF TO cl_salv_wd_column.

DATA l_header TYPE REF TO cl_salv_wd_column_header.

l_column = l_value->if_salv_wd_column_settings~get_column( 'MATNR' ). " Name of column you want to change

l_header = l_column->get_header( ).

l_header->set_ddic_binding_field( ).

l_header->set_text( `Material Nuber` ). " Name that is to be displayed

Regards,

Saket.

Edited by: Saket Abhyankar on Jan 13, 2010 3:32 PM

Edited by: Saket Abhyankar on Jan 13, 2010 3:48 PM

Former Member
0 Kudos

HI ,

You need to set the DDIC binding as none once after getting the header.

lr_column_heading = lr_column->get_header( ).

lr_column_heading->set_ddic_binding_field( ).

lr_column_heading->set_text( 'YOUR OWN TEXT'' ).

Regards,

Lakshmi