Web Dynpro ALV grid column colour

Hi,
I have tried to set the colour of a column for my web dynpro alv with the below code but it the colour for this column has not changed - it seems to remain the standard colour.  Is there something else i need to do?
  DATA: lt_columns TYPE salv_wd_t_column_ref
      , ls_columns  TYPE salv_wd_s_column_ref
      , lr_column TYPE REF TO cl_salv_wd_column
  lt_columns = lo_value->if_salv_wd_column_settings~get_columns( ).
  LOOP AT lt_columns INTO ls_columns.
    IF ls_columns-id CS 'TOTAL_'.
      lr_column = ls_columns-r_column.
      lr_column->set_cell_design( cl_wd_abstr_master_table_col=>e_cell_design-positive ). "CL_WD_TABLE_COLUMN=>E_CELL_DESIGN-GROUP_LEVEL1
    ENDIF.
  ENDLOOP.

Hi Samir,
You will have to create an attribut WDUI_TABLE_CELL_DESIGN and bind this attribute with the cell design property of the column. Check this wiki link [https://wiki.sdn.sap.com/wiki/display/Snippets/ABAP%20Web%20Dynpro%20ALV%20-%20Change%20Cell%20Colour%20based%20on%20Content], it will solve your issue.
Regards,
Radhika.

Similar Messages

  • Web Dynpro ALV grid column width

    Hi,
    I have a web dynpro alv grid that has columns titles that are long.  What is the best way of displaying the data without taking up too much space with the titles? 
    For example is it possible to wrap the title into 2 or 3 rows
    Thanks,
    Samir

    Hi,
    DATA: lr_column type ref to cl_salv_wd_column,
    lr_colheader type ref to cl_salv_wd_column_header.
              CALL METHOD lrcolumn->get_header
                RECEIVING
                  value = lr_COLHEADER.
    lr_COLHEADER->set_ddic_binding_field( if_salv_wd_c_ddic_binding=>ddic_bind_short ).
    Refer this if_salv_wd_c_ddic_binding in se24 for more.
    Regards,
    Lekha.

  • Web Dynpro ALV grid column names

    Hi,
    I wish to specify the text that appears on the column names.  At present the name defaults to the field name within the structure.  Is there a way to specify the name that i wish to appear for each column?  Many thanks in advance
    Samir

    Hi,
    Use the following code
    * Instantiate the used component
      DATA lo_cmp_usage TYPE REF TO if_wd_component_usage.
      lo_cmp_usage =   wd_this->wd_cpuse_usg_alv( ).
      IF lo_cmp_usage->has_active_component( ) IS INITIAL.
        lo_cmp_usage->create_component( ).
      ENDIF.
    * Get Model
      DATA lo_interfacecontroller TYPE REF TO iwci_salv_wd_table .
      lo_interfacecontroller =   wd_this->wd_cpifc_usg_alv( ).
      DATA lo_value TYPE REF TO cl_salv_wd_config_table.
      lo_value = lo_interfacecontroller->get_model(
    *---------- ALV table settings.
      DATA: l_table_settings TYPE REF TO if_salv_wd_table_settings .
      l_table_settings ?= lo_value.
      wd_this->l_table =  l_table_settings .
    * Set the Editable property to true
      l_table_settings->set_read_only( abap_false ).
    * Set table header
      DATA: l_header TYPE REF TO cl_salv_wd_header.
      l_header = l_table_settings->get_header( ).
      l_header->set_text( 'Sales Orders' ).
    *---------- Column settings
      DATA: l_column_settings TYPE REF TO if_salv_wd_column_settings.
      l_column_settings ?= lo_value.
    * Get columns
      DATA: lt_columns TYPE salv_wd_t_column_ref ,
            ls_columns TYPE salv_wd_s_column_ref .
      DATA: l_column_header  TYPE REF TO cl_salv_wd_column_header .
      lt_columns = l_column_settings->get_columns( )              .
      LOOP AT lt_columns INTO ls_columns .
       CASE ls_columns-id   .                    
          WHEN 'VBELN'     .
            l_column_header = ls_columns-r_column->get_header( )  .
            l_column_header->set_ddic_binding_field(
               if_salv_wd_c_column_settings=>ddic_bind_none )     .
            l_column_header->set_text( 'Sales Order' ). " column header
           WHEN 'POSNR .
            l_column_header = ls_columns-r_column->get_header( )  .
            l_column_header->set_ddic_binding_field(
               if_salv_wd_c_column_settings=>ddic_bind_none )     .
            l_column_header->set_text( 'Item No' ) . "column header
          WHEN 'ZMENG'.
            l_column_header = ls_columns-r_column->get_header( )  .
            l_column_header->set_ddic_binding_field(
               if_salv_wd_c_column_settings=>ddic_bind_none )     .
            l_column_header->set_text( 'Qty' ). "column header
            WHEN OTHERS                                             .
            ls_columns-r_column->set_visible(
                               cl_wd_uielement=>e_visible-none )  .
        ENDCASE  .
      ENDLOOP.
    Regards,
    Radhika.

  • Web Dynpro ALV grid totals

    Hi,
    I have created an application that uses a web dynpro alv grid.  I want to display totals - is there a setting that can do this automatically - if so, can you please tell me how to do this?    Thanks,

    Hi
    You can take help of following code snippet to create totals for a particular column
    Data: lr_function_settings TYPE REF TO CL_SALV_WD_CONFIG_TABLE.
      DATA: lr_column_settings TYPE REF TO if_salv_wd_column_settings,
            lr_column          TYPE REF TO cl_salv_wd_column,
            lt_column type salv_wd_t_column_ref,
            ls_column type salv_wd_s_column_ref.
    Data:  lr_field_amnt type REF TO CL_SALV_WD_FIELD.
    * get reference of ALV component
      lr_salv_wd_table = wd_this->wd_cpifc_OVERVIEW_EARNED_ALV( ).
      wd_this->alv_config_table = lr_salv_wd_table->get_model( ).
    *  get function settings
      lr_function_settings ?= wd_this->alv_config_table.
    * display columns in correct order
      lr_column_settings ?= wd_this->alv_config_table.
      lt_column = lr_column_settings->get_columns( ).
      loop at lt_column into ls_column.
    CASE ls_column-id.
    when 'AMOUNT'
    * aggregate field
            CALL METHOD LR_FUNCTION_SETTINGS->IF_SALV_WD_FIELD_SETTINGS~GET_FIELD
              EXPORTING
                FIELDNAME = 'AMOUNT'
              RECEIVING
                VALUE     = lr_field_amnt.
    * create aggregate rule as total
            CALL METHOD LR_FIELD_AMNT->IF_SALV_WD_AGGR~CREATE_AGGR_RULE
              EXPORTING
                AGGREGATION_TYPE = IF_SALV_WD_C_AGGREGATION=>AGGRTYPE_TOTAL
              RECEIVING
                VALUE            = lv_aggr_rule.
    endcase.
    Regards
    Manas DUa

  • Web Dynpro ALV grid filter on date

    Hi,
    I want to set a "view" on my web dynpro alv grid that uses the current date.  Is there a way to specify the current date in the filter values?  Thanks,
    Samir

    Thanks Thomas.  I will certainly look into using POWL in the future.
    A related question - Its possible to use a filter by entering something like " .01. " but it doesnt seem to allow me to save that value as its not a date.  Is there any way around this?  Thanks

  • Web Dynpro ALV grid format

    Hi,
    I have a web dynpro alv table that has many columns (about 20) I would like it to be displayed so that the user does not have to scroll right to see all the data.
    at the moment columns:
    col1 col2 col3 ......col19 col20
    i would like the second half of the table under the 1sta half:
    col1 col2 col3...col9 col10
    col11 col12...col19 col20
    Is there any way that i can get the table to be split into two or some other nice way to display without scrolling?

    You won't be able to do this with a single ALV.  I suppose you could have two ALVs and bind them both to the same context.  You wouldn't be able to sync the veritcal scrolling between the the two ALVs however.  I'm also not sure how usage this design is from a UI design pattern.  I would think the acceptible approach would be to use horizontal scrolling within the ALV.  You don't have to make the ALV display all columns at once as this can make your entire page very wide and require using the browser scrolling.  Instead consider using the set_scrollable_col_count method.

  • Web Dynpro ALV grid sub totals

    Hi,
    I have managed to get totals working with web dynpro ALV using code like this :
      DATA: lr_field TYPE REF TO cl_salv_wd_field.
    For total calculations...
      lo_value->if_salv_wd_std_functions~set_aggregation_allowed( abap_true ).
      lr_field = lo_value->if_salv_wd_field_settings~get_field( 'N_OF_DLRS' ).
      lr_field->if_salv_wd_aggr~create_aggr_rule( aggregation_type = if_salv_wd_c_aggregation=>aggrtype_total ).
    Please can someone advise how i can do subtotals also.  Thanks
    Edited by: Samir Vora on Jul 15, 2009 12:40 PM

    Hi,
    For creating subtotals, you can have a look at following article:
    [Tutorial for Creation Subtotals using ALV|https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/user-interface-technology/wd%20abap/tutorial%20for%20creating%20totals%20and%20subtotals%20using%20alv.pdf].
    Hope this helps.
    Regards
    Manas Dua

  • Web Dynpro ALV grid equivalent of onLeadSelect

    Hi,
    I am new to web dynpro alv and would like to know how to implement the equivelent of the action onLeadSelect that you can do with a table UIElement, but I want to do this for the ALV table that I have.  Many thanks,
    Samir

    Hi,
    Go to the View's property tab and include you ALV in that.
    whenever you instantiate the ALV then in the view, METHODS tab, you can find the Event handler for the lead selection for that ALV. Implement that.
    Method name           Method type         Event        
    ONLEADSELECT     Eventhandler        ON_LEAD_SELECT
    Check out the links -
    Re: click event on ALV
    http://www.flickr.com/photos/31042772@N08/3408386623/
    Regards,
    Lekha

  • WEB DYNPRO ALV GRID : CELL CONTENT - Initial Value

    I created a sort of 'Timesheet' in web dynpro...
    Unfortunatly, for all days of the month it displays '0.00' as initial value...
    Is it possible to not display this initial value or display space/empty ?
    In gui alv it is possible, I don't know if it could be done in web dynpro

    Hi,
    For the node to which the ALV is bound. For the column (context attribute) check the property of the attribute check the formatting propertioes as ZEROS AS BLANKS
    for ex: price is the context attrbiute check the properties.
    This FORMATTING options for the context attribute is found in the latest verions like EHP4.
    Regards,
    Lekha.

  • Action on selected row in Web dynpro ALV grid

    Hello,
    i'm pretty new on web dynpro development, and i need some help.
    I have a working grid alv and i would like to create an event when i select a row (not editable).
    I have looked around and didn't find anything interesting.
    Do you have a solution?
    Thanks a lot.
    Cedric

    Hi.,
    U have to use onLeadSelection  Event Handler.,
    Check this tutorial.,: [ALV onLead Selection another ALV|http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/7020c76f-c40e-2e10-a795-d88e67740ee4?quicklink=index&overridelayout=true]
    hope this helps u.,
    Thanks & Regards
    Kiran.

  • Filter in web dynpro ALV grid error

    The filter in the ALV web dynpro seems to work like *<condition>*. let's say if you have 4 entries in the table 30,230,300,1230 applying the filter value '30' will select all of them making the filter function virtually useless.
    Is there a way to change how the filter works?

    Dear Stanley,
    https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/63a47dd9-0b01-0010-3d8e-de27242bf011
    Regards,
    Flavya

  • Web Dynpro ALV grid navigation problems when entry is selected

    Hi,
    We have implemented support packs 19 and 20 and following this, we are having the following side effect :
    When you click on an entry within an alv grid, it does not navigate to the next screen.  It worked fine before the service packs, please advise if you have any suggestions as to how we can get it to work again!?  Thanks in advance.
    When I click, the debug does not event go to the ON_LEAD_SELECT event.
    Edited by: James Wilson on Dec 10, 2009 3:52 PM

    Hi Samir,
    I think possibly you have other code which is relying on a lead selection being set in the context that you have provided to the ALV grid?
    And it is that code that is falling over?
    In this case I think you need to handle in that other code the possibility that the user/ALV grid will unselect all entries in the table.
    Or am I misunderstanding your issue? Please do let us know,
    Thanks,
    Chris

  • WEB DYNPRO ALV GRID  GET SELECTED ROWS...

    I'm reusing component ALV Grid ...
    How can i get selected rows...

    Hi Stephan,
    In order to get the multiple rows which were selected by the user you will just have to call the get_selected_elements method of if_wd_context_node. So as you can see its no different from how you would get the multiple rows selected by the user in a table ui element. First get the reference of the node which you have used to bind to the ALV & then call this method on it.
    METHOD get_selected_rows .
      DATA: temp TYPE string.
      DATA: lr_node TYPE REF TO if_wd_context_node,
                wa_temp  TYPE REF TO if_wd_context_element,
                ls_node1 TYPE wd_this->element_node_flighttab,
                lt_node1 TYPE wd_this->elements_node_flighttab.
      lr_node = wd_context->get_child_node( name = 'NODE_FLIGHTTAB' ).
    " This would now contain the references of all the selected rows
      lt_temp = lr_node->get_selected_elements( ).
        LOOP AT lt_temp INTO wa_temp.
    " Use the references to get the exact row data
          CALL METHOD wa_temp->get_static_attributes
            IMPORTING
              static_attributes = ls_node1.
          APPEND ls_node1 TO lt_node1.
          CLEAR ls_node1.
        ENDLOOP.
    ENDMETHOD.
    Hope this helps resolve your problem.
    Regards,
    Uday

  • Web Dynpro ALV disable column sort for specific column

    Hi,
    I have the above mentioned problem. The Coding I use is:
    DATA:  lr_field_settings  TYPE REF TO if_salv_wd_field_settings,
                lt_fields          TYPE SALV_WD_T_FIELD_REF.
    FIELD-SYMBOLS:  <fs_field>  LIKE LINE OF lt_fields.
    lr_field_settings ?= lr_config.
    lt_fields = lr_field_settings->get_fields( ).
    READ TABLE lt_fields ASSIGNING <fs_field> WITH KEY fieldname = 'ANSPRECH_DETAILS'.
    IF sy-subrc EQ 0.
      <fs_field>-r_field->if_salv_wd_sort~set_sort_allowed( abap_false ).
      <fs_field>-r_field->if_salv_wd_sort~set_grouping_allowed( abap_false ).
    ENDIF.
    When debugging I can see that the object attributes for sort_allowed and grouping_allowed are changed from 'X' to ' '
    but the running application still allows sorting and grouping for the column 'ANSPRECH_DETAILS'.
    So what did I forget or what is my mistake ????
    Thx for your help.
    Dino Dini

    I got the similar requirement and I tried to do the below way.. it worked for me..
    DATA: lr_field_settings TYPE REF TO if_salv_wd_field_settings.
    DATA: lr_field TYPE REF TO cl_salv_wd_field.
    lr_field_settings ?= lr_table.
    lr_field = lr_field_settings->get_field( 'MATNR' ).
    lr_field->IF_SALV_WD_SORT~SET_SORT_ALLOWED( abap_false
    you can observe in the below image that sort option is not enabled for MATNR in the ALV.

  • Web Dynpro ALV - get Columns of selected Variant

    hi folks,
    we use the personalization manager to set a start-up variant for displaying data in WD Abap ALV.
    However, now we need the possiblity to get the columns shown on the screen (of that variant).
    Using the functions like
      lr_column_settings ?= wd_this->go_table.
      lt_columns = lr_column_settings->get_columns( ).
    on my config-table i always get ALL columns in the order of the Table i submitted to the ALV component.
    What we need is as mentioned above to get the columns in order that are on the screen at the moment (or of that variant).
    does anyone has a hint for me how to do that.
    kind regards,
    oliver

    Thanks Oliver for the quick reply,
    I tried the below code I am getting the variant right, but not the columns associated with the variant.
    I get all the columns. Please check if I am missing anything,
          DATA lo_INTERFACECONTROLLER TYPE REF TO IWCI_SALV_WD_TABLE .
          lo_INTERFACECONTROLLER =   wd_this->wd_cpifc_em_list_alv( ).
          data: lo_api_interfacecontroller type ref to IF_WD_CONTROLLER,
                lo_pers TYPE REF TO if_wd_personalization,
                lt_pers_table_ref TYPE REF TO IF_WD_PERS_TABLE,
                lt_pers_table TYPE STANDARD TABLE OF WDR_PERS_DATA.
          lo_api_interfacecontroller = lo_INTERFACECONTROLLER->wd_get_api( ).
            CALL METHOD lo_api_interfacecontroller->get_personalization_manager
              RECEIVING
                pers_manager = lo_pers.
            DATA: ls_config_key type WDY_CONFIG_KEY,
                  ls_PERS_SCOPE TYPE WDR_PERS_SCOPE,
                  ls_loaded TYPE WDY_BOOLEAN,
                  ls_desc TYPE WDY_MD_DESCRIPTION.
            CALL METHOD lo_pers->GET_STATE
              IMPORTING
                CONFIG_KEY  = ls_config_key
                PERS_SCOPE  = ls_PERS_SCOPE
                IS_LOADED   = ls_loaded
                DESCRIPTION = ls_desc. -> Gives me the Variant info
          data: ls_param_in type if_salv_wd_table=>s_type_param_config_in,
                lv_s_param_out TYPE if_salv_wd_table=>s_type_param_config_out,
            LS_r_model type ref to cl_salv_wd_config_table.
          ls_param_in-action = if_salv_wd_table=>set.
          ls_param_in-config_key = ls_config_key.
          ls_param_in-is_model_requested = 'X'.
          lv_s_param_out = lo_interfacecontroller->get_config_data(
            s_param_in =  ls_param_in                    
        LS_r_model = lv_s_param_out-r_model.
          data: lr_column_settings type ref to if_salv_wd_column_settings,
                lt_columns TYPE STANDARD TABLE OF SALV_WD_S_COLUMN_REF.
          lr_column_settings ?= LS_r_model.
          lt_columns = lr_column_settings->get_columns( ). -> this gives me all columns, not columns associated to variant
    Regards,
    Prasad

Maybe you are looking for

  • Extend function in pl/sql table

    declare type aar_test is table of varchar2(100) index by binary_integer; aar_main aar_test; begin aar_main.extend; aar_main(aar_main.last) :='Extend Cell'; end; it's return a error....it is possible??? if yes how...plzzzzzzzz help me...

  • How do I email a sheet that is inside a spreadsheet in numbers?

    I tried to email a sheet that is inside a spreadsheet containing 10 sheets and all 10 sheets were emailed. 

  • Excellent management software? (2)

    (not trying to flame...I accidentally posted this on the wrong board earlier...) I'm new to my position and have been asked to find a network performance managment package for my company to use. I've searched around and found a few different solid of

  • Timing problem between XPS 14.4 x64 vs x86

    Hello all, I am using XPS 14.4 on a x64 machine and I have a design which is failing timing contraints. However, when using the same design on a x86 machine, I do not have the problem. How is that possible? Thank you for your answers. Kind regards

  • DPS Web Viewer SSL Support

    Hello, at this moment Adove Web Viewer does not support SSL. Is Adobe working to support SSL in the near future? Background: We are planning to switch the whole website to SSL. Our problem is that an embedded Web Viewer call (iframe) within a ssl enc