Текущее время: Пт, июл 25 2025, 05:43

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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