Текущее время: Сб, апр 20 2024, 06:15

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


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


ВНИМАНИЕ!

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



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

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

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


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

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

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


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

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

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

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


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

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3074
Откуда: Москва
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, 17:33 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Вт, авг 31 2004, 14:57
Сообщения: 5257
Откуда: Ростов невеликий
Пол: Мужской
Удав написал(а):
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, 09:14 
Почетный гуру
Почетный гуру
Аватара пользователя

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

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

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


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

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


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

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

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

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


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

Зарегистрирован:
Вт, авг 31 2004, 14:57
Сообщения: 5257
Откуда: Ростов невеликий
Пол: Мужской
Удав написал(а):
Посмотри тип поля 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 + 3 часа


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

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


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

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