Текущее время: Пн, окт 23 2017, 02:46

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: Инвертировать выборку в REUSE_ALV_GRID_DISPLAY
СообщениеДобавлено: Пт, июн 16 2017, 16:03 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Вт, авг 31 2004, 15:57
Сообщения: 5072
Откуда: Ростов невеликий
Пол: Мужской
Привет,
может кто разбирался с сабжем?
что-то но не могу найти как сделать.

_________________
Нет сегодняшних проблем -
есть вчерашние ошибки
(с)


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

Зарегистрирован:
Пн, мар 28 2005, 16:38
Сообщения: 1088
Слишком общий вопрос. Конкретизируйте.
В программе или просто "запустил прогу с гридом, выделил строки, где тут кнопка инвертировать выбор?"
Ну и как выбор строк сделан: столбец слева или чекбоксы?

_________________
Там, где я рос, единственным развлечением было запоминать число «π».(С) Н. Стивенсон


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Инвертировать выборку в REUSE_ALV_GRID_DISPLAY
СообщениеДобавлено: Пт, июн 16 2017, 17:47 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Вт, авг 31 2004, 15:57
Сообщения: 5072
Откуда: Ростов невеликий
Пол: Мужской
Кодер писал(а):
Слишком общий вопрос. Конкретизируйте.
В программе или просто "запустил прогу с гридом, выделил строки, где тут кнопка инвертировать выбор?"
Ну и как выбор строк сделан: столбец слева или чекбоксы?

пробовал по-разному. Остановился на без бокса - нашёл, что выделение мультистрок работает через <ctrl>+mouse. Но мне нужно удалить невыделенные. Нашёл пример через "сохранить выделенные", но может есть инверсия всё таки? - красивше будет.
такая классная штука этот ALV :)

_________________
Нет сегодняшних проблем -
есть вчерашние ошибки
(с)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Инвертировать выборку в REUSE_ALV_GRID_DISPLAY
СообщениеДобавлено: Пт, июн 16 2017, 18:08 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 17:44
Сообщения: 2888
Откуда: Москва
1. GET_SELECTED_ROWS
2. LOOP по основной таблице с READ TABLE lt_row_no по row_id = sy-tabix.
3. Если SY-SUBRC <> 0, удаляем запись из основной таблицы.
4. REFRESH_TABLE_DISPLAY в PBO
Если же действительно нужно на экране инвертировать выбор, то:
3. Если SY-SUBRC <> 0, добавляем запись в lt_inverted_row_no
4. SET_SELECTED_ROWS

_________________
С уважением,
Удав.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Инвертировать выборку в REUSE_ALV_GRID_DISPLAY
СообщениеДобавлено: Пт, июн 16 2017, 18:33 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Вт, авг 31 2004, 15:57
Сообщения: 5072
Откуда: Ростов невеликий
Пол: Мужской
Удав писал(а):
1. GET_SELECTED_ROWS
2. LOOP по основной таблице с READ TABLE lt_row_no по row_id = sy-tabix.
3. Если SY-SUBRC <> 0, удаляем запись из основной таблицы.
4. REFRESH_TABLE_DISPLAY в PBO
Если же действительно нужно на экране инвертировать выбор, то:
3. Если SY-SUBRC <> 0, добавляем запись в lt_inverted_row_no
4. SET_SELECTED_ROWS

пасиб. lt_inverted_row_no - это где смотреть?
p.s.
ща наступил на граблю:
loop at it_tabcp into wa_tabcp.
read it_tab into wa_tab with key pernr=wa_tabcp-pernr.

нифига не находит, пришлось переприсвоить сначала
pernr=wa_tabcp-pernr.
read it_tab into wa_tab with key pernr=pernr.

не помню почему - это уже маразм :)

_________________
Нет сегодняшних проблем -
есть вчерашние ошибки
(с)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Инвертировать выборку в REUSE_ALV_GRID_DISPLAY
СообщениеДобавлено: Сб, июн 17 2017, 10:14 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 17:44
Сообщения: 2888
Откуда: Москва
lt_inverted_row_no - своя таблица, в которую запишутся индексы неотмеченных записей. Ее нужно будет подать на вход SET_SELECTED_ROWS
Цитата:
ща наступил на граблю

Посмотри тип поля wa_tabcp-pernr :)

_________________
С уважением,
Удав.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Инвертировать выборку в REUSE_ALV_GRID_DISPLAY
СообщениеДобавлено: Сб, июн 17 2017, 11:53 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, дек 02 2010, 09:37
Сообщения: 81
Только удалять лучше снизу вверх.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Инвертировать выборку в REUSE_ALV_GRID_DISPLAY
СообщениеДобавлено: Сб, июн 17 2017, 14:49 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 17:44
Сообщения: 2888
Откуда: Москва
baboon писал(а):
Только удалять лучше снизу вверх.

Либо использовать счетчик удаленных записей для коррекции индекса строки.

_________________
С уважением,
Удав.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Инвертировать выборку в REUSE_ALV_GRID_DISPLAY
СообщениеДобавлено: Пн, июн 19 2017, 10:53 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Вт, авг 31 2004, 15:57
Сообщения: 5072
Откуда: Ростов невеликий
Пол: Мужской
Удав писал(а):
Посмотри тип поля wa_tabcp-pernr :)


IT_AWARDS TYPE TABLE OF TY_AWARDS,
IT_AWARDSCP TYPE TABLE OF TY_AWARDS,
WA_AWARDS TYPE TY_AWARDS.

DATA : WA_AWARDSCP TYPE TY_AWARDS.

поле как поле

TYPES: BEGIN OF TY_AWARDS,
PERNR TYPE PA0002-PERNR, " таб. номер

может ли влиять, что WA_AWARDSCP определено локально в form, а WA_AWARDS - в программ?

инвертация работает. интересно откуда известно что поле SEL и есть для отметок? - по принципу "первого"?

_________________
Нет сегодняшних проблем -
есть вчерашние ошибки
(с)


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

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


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

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


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

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