Текущее время: Вс, авг 03 2025, 23:30

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: Исключение кнопок из toolbar.
СообщениеДобавлено: Пт, авг 29 2008, 16:17 
Специалист
Специалист

Зарегистрирован:
Вт, мар 18 2008, 10:21
Сообщения: 136
Откуда: краснодар
Доброго дня :D
Использую классы, и свою строку инструментов. По аналогии как в BCALV_GRID_05, прописал свои иконки коды функций и т.д.
По событиям кнопок строки инструментов меняю содержимое грида

Code:
CALL METHOD GRID->SET_TABLE_FOR_FIRST_DISPLAY
    EXPORTING
      IS_LAYOUT       = G_LAYOT_F
      I_SAVE          = X_SAVE
      IT_TOOLBAR_EXCLUDING = ls_exclude
    CHANGING
      IT_OUTTAB       = gf_itab[]
      IT_FIELDCATALOG = ALV_FIELDCATALOG_F
      IT_SORT         = G_SORT_F.


ls_exclude - готовлю по проинципу

Code:
FORM exclude_tb_functions CHANGING pt_exclude TYPE ui_functions .
  DATA ls_exclude TYPE ui_func.
  ls_exclude = 'EVENT'.
  APPEND ls_exclude TO pt_exclude.
ENDFORM .


Но кнопка EVENT все равно не исчезает из строки инструментов по обновлению грида.
В чем проблема?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, авг 29 2008, 16:29 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
pt_exclude[] вместо ls_exclude в вызове ФМ.

_________________
Я слышу и забываю,
Я вижу и помню долго,
Я делаю и — понимаю.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, сен 01 2008, 08:48 
Специалист
Специалист

Зарегистрирован:
Вт, мар 18 2008, 10:21
Сообщения: 136
Откуда: краснодар
пробовал

Code:
  data: pt_exclude TYPE ui_functions.
  data: ls_exclude TYPE ui_func.

  ls_exclude = 'EVENT1'.
  APPEND ls_exclude TO pt_exclude.

  CALL METHOD GRID->SET_TABLE_FOR_FIRST_DISPLAY
    EXPORTING
      IS_LAYOUT       = G_LAYOT_F
      I_SAVE          = X_SAVE
      IT_TOOLBAR_EXCLUDING = pt_exclude[]
    CHANGING
      IT_OUTTAB       = gf_itab[]
      IT_FIELDCATALOG = ALV_FIELDCATALOG_F
      IT_SORT         = G_SORT_F.


непомогло :(


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, сен 01 2008, 09:17 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
ну, во всяком случае, так правильнее, однозначно.
Я не знаю как у Вас построена программа, но SET_TABLE_FOR_FIRST_DISPLAY вызывается один раз. К рефрешу она не должна иметь отношения, по хорошему.
Кнопку Вы свою, видимо, рисаовали для события toolbar. Вот оно при событие refresh сработает, там свою обработку и вставляйте, т.е. не апепендете свою кнопку и все.

_________________
Я слышу и забываю,
Я вижу и помню долго,
Я делаю и — понимаю.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, сен 01 2008, 10:14 
Специалист
Специалист

Зарегистрирован:
Вт, мар 18 2008, 10:21
Сообщения: 136
Откуда: краснодар
Все оказалось гараздо проще
после каждого последующего SET_TABLE_FOR_FIRST_DISPLAY если при первом запуске грида реализовывался тулбар
SET HANDLER event_receiver->handle_toolbar FOR grid.
CALL METHOD grid->set_toolbar_interactive.
то и в дальнейшем при следующих SET_TABLE_FOR_FIRST_DISPLAY данный метод будет выполняться.
Остается только в методе handle_toolbar реализовать логику ведения\видимости кнопок в зависимости от какой нить глобальной переменной или sy-ucomm.

Не знаю на сколько правильный подход, но работает :D


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

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


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

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


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

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