Текущее время: Сб, июл 19 2025, 22:28

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: Как в результирующей таблице по условию открывать поле на редактирование?
СообщениеДобавлено: Вт, сен 10 2013, 12:24 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, май 14 2013, 10:12
Сообщения: 50
Добрый день.

Задача казалась очень простой, нужно при определенных условиях открывать поле столбца ISPOL на редактирование. Пробую это делать через свойство -edit соответствующего поля. Не работает.
Попробовал через -style нет ничего.
Ниже приведен код прикрученный к методу на изменение значения поля.

Code:
METHOD handle_data_changed_finished.

    "===ns 8000064381

    DATA tmp_ztrm_card TYPE TABLE OF ztrm_card.
    DATA s_good LIKE LINE OF et_good_cells.

    FIELD-SYMBOLS: <tzc> LIKE LINE OF tmp_ztrm_card.
    FIELD-SYMBOLS: <gs> LIKE LINE OF gs_100-t_res.
    FIELD-SYMBOLS: <fc> LIKE LINE OF gs_100-fieldcat.

    IF LINES( et_good_cells ) = 1.
      LOOP AT et_good_cells INTO s_good.

        IF s_good-fieldname = 'DOGNUM'.
          READ TABLE gs_100-t_res ASSIGNING <gs> INDEX s_good-row_id.
          SELECT * INTO CORRESPONDING FIELDS OF TABLE tmp_ztrm_card
            FROM ztrm_card
            WHERE dog_int_num = s_good-value.

          LOOP AT tmp_ztrm_card ASSIGNING <tzc>.
            IF <tzc>-dog_type = 'DS3' OR <tzc>-dog_type = 'D03'.
              <gs>-kontr = <tzc>-lifnr.
              <gs>-ispol = ''.
              LOOP AT gs_100-fieldcat ASSIGNING <fc>
                WHERE fieldname = 'ISPOL'.
                  <fc>-edit = 'X'.
                  <fc>-style = cl_gui_alv_grid=>mc_style_enabled.
              ENDLOOP.
            ELSE.
              <gs>-kontr = <gs>-ispol = <tzc>-lifnr.
            ENDIF.
          ENDLOOP.
        ENDIF.

      ENDLOOP.
    ENDIF.

    gs_100-grid->register_edit_event( i_event_id = cl_gui_alv_grid=>mc_evt_modified ).
    gs_100-grid->register_edit_event( i_event_id = cl_gui_alv_grid=>mc_evt_enter ).

    gs_100-grid->refresh_table_display( ).

  ENDMETHOD.                    "handle_data_changed_finished


Что делать?

_________________
А ведь все так хорошо начиналось...


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как в результирующей таблице по условию открывать поле на редактирование?
СообщениеДобавлено: Вт, сен 10 2013, 12:54 
Старший специалист
Старший специалист

Зарегистрирован:
Чт, окт 22 2009, 12:41
Сообщения: 473
Может таблицу изначально делать редактируемой, но со всеми ячейками закрытыми от изменения. А по условию уже открывать нужные ячейки?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как в результирующей таблице по условию открывать поле на редактирование?
СообщениеДобавлено: Вт, сен 10 2013, 12:55 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, май 14 2013, 10:12
Сообщения: 50
weise написал(а):
Может таблицу изначально делать редактируемой, но со всеми ячейками закрытыми от изменения. А по условию уже открывать нужные ячейки?


Как мне это сделать?

_________________
А ведь все так хорошо начиналось...


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как в результирующей таблице по условию открывать поле на редактирование?
СообщениеДобавлено: Вт, сен 10 2013, 13:01 
Старший специалист
Старший специалист

Зарегистрирован:
Чт, окт 22 2009, 12:41
Сообщения: 473
А как вы вообще выводите грид? Если напрямую с помощью cl_gui_alv_grid, то на sap wiki есть пример ALV editable grid control. Еще можно посмотреть примеры BCALV_EDIT_*.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как в результирующей таблице по условию открывать поле на редактирование?
СообщениеДобавлено: Вт, сен 10 2013, 13:55 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, ноя 29 2012, 16:47
Сообщения: 85
я бы начал вот так https://www.google.ru/#newwindow=1&q=sap+alv+grid+cell+edit+sapforum.ru
Получил вторая сверху http://wiki.scn.sap.com/wiki/display/Snippets/ALV-Editing+and+saving+the+edited+values+in+Database%28OOPS%29

Еще вариант https://www.google.ru/#newwindow=1&q=sap+alv+grid+cell+edit+pdf
и полный разбор полета http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/e8a1d690-0201-0010-b7ad-d9719a415907?overridelayout=true страница 47.

Надеюсь поможет.


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

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


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

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


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

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