Текущее время: Вс, июл 20 2025, 09:19

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


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

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


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

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