Текущее время: Пт, мар 29 2024, 14:50

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


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

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


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

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