Текущее время: Вт, дек 23 2025, 07:22

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
 Заголовок сообщения: Выделение цветом строчек в alv WD
СообщениеДобавлено: Пт, дек 09 2011, 10:41 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пт, окт 08 2010, 11:37
Сообщения: 322
Утро, мир, пятница.

Коллеги, столкнулся с простой на мой взгляд задачей.
Есть ALV в WD. Необходимо в ней подсвечивать красным строки, где значение Х столбца равно Y.

Если кто сталкивался, помогите пожалуйста.
С уважением


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Выделение цветом строчек в alv WD  Тема решена
СообщениеДобавлено: Пт, дек 09 2011, 11:46 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пт, окт 08 2010, 11:37
Сообщения: 322
Даже заяц загнанный в угол становится зверем, не говоря уже о АБАПере загнанным в сроки.

Решение вопроса:
Добавляем колонку CELL_COLOUR в node для вывода в ALV

Заполняем ALV +
Code:
  IF xxx < 0.
    ls_final-cell_color = CL_WD_TABLE_COLUMN=>E_CELL_DESIGN-BADVALUE_DARK.
  ELSE.
    ls_final-cell_color = CL_WD_TABLE_COLUMN=>E_CELL_DESIGN-STANDARD.
  ENDIF.

Меняем настройки ALV
Code:
* Data declarations for ALV
  DATA: lt_columns                  TYPE        salv_wd_t_column_ref,
        ls_column                   TYPE        salv_wd_s_column_ref,
        lo_column                   TYPE REF TO cl_salv_wd_column ,
        lo_col_head                 TYPE REF TO cl_salv_wd_column_header
        .

* Get reference to the Component usage of the ALV.
  lo_ref_cmp_usage =   wd_this->wd_cpuse_alv_vedkz( ).
  IF lo_ref_cmp_usage->has_active_component( ) IS INITIAL.
    lo_ref_cmp_usage->create_component( ).
  ENDIF.

* Get reference to the Interface controller of the ALV.
  lo_ref_interfacecontroller =   wd_this->wd_cpifc_alv_vedkz( ).
  lo_value = lo_ref_interfacecontroller->get_model( ).
  wd_this->m_alv_model = lo_value.

* Get the Columns of the ALV
  CALL METHOD lo_value->if_salv_wd_column_settings~get_columns
    RECEIVING
      value = lt_columns.

* Get reference to each column and set the column heading.
  LOOP AT lt_columns INTO ls_column.
    lo_column = ls_column-r_column.

    CASE ls_column-id.



      WHEN 'CELL_COLOUR'.
        CALL METHOD lo_column->set_visible(
          EXPORTING
            value = '00'
          ).
      WHEN OTHERS.
        lo_col_head = lo_column->get_header( ) .
        lo_col_head->set_ddic_binding_field(  ).
        DATA: lr_input_field TYPE REF TO cl_salv_wd_uie_input_field.
        CREATE OBJECT lr_input_field
          EXPORTING
            value_fieldname = ls_column-id.
        lo_column->set_cell_editor( lr_input_field ).
        lo_column->set_cell_design_fieldname( value = 'CELL_COLOUR' ).
    ENDCASE.
  ENDLOOP.


Получаем счастье!
http://wiki.sdn.sap.com/wiki/display/Snippets/ABAP%20Web%20Dynpro%20ALV%20-%20Change%20Cell%20Colour%20based%20on%20Content?bc=true Но тут ошибка!


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 2 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB