Текущее время: Вт, май 13 2025, 16:57

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 12 ] 
Автор Сообщение
 Заголовок сообщения: Количество отображаемых записей в таблице на экране
СообщениеДобавлено: Вт, фев 08 2005, 17:30 
Специалист
Специалист

Зарегистрирован:
Ср, сен 08 2004, 16:04
Сообщения: 112
Откуда: Ukraine
Пол: Мужской
Люди, подскажите как определить количество отбражаемых строк таблицы на эране?
Т.е. размер окна рисованной таблицы?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, фев 08 2005, 17:36 
Гость
SY-LOOPC не оно?


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

Зарегистрирован:
Ср, сен 08 2004, 16:04
Сообщения: 112
Откуда: Ukraine
Пол: Мужской
Paul_80 написал:
SY-LOOPC не оно?


Не совсем.
Если таблица не заполнено полностью, то это число меньше чем число видимых строк в таблице.

Могу перефразировать вопрос.
Цель у меня такая.
Я знаю индекс записи во внутренней таблице, в которую нужно поставить курсор. Set cursor ставит курсор не по индексу в таблице, а по индексу в ВИДИМОЙ части таблице. :evil:
И шо мне делать? :roll:


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, фев 09 2005, 09:31 
Гость
INDEX + ETAB-TOP_LINE - 1

где INDEX - номер строки, на которую нужно установить курсор
ETAB - экранная таблица

ETAB-TOP_LINE - содержит номер верхней строки таблицы на экране


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, фев 09 2005, 11:33 
Специалист
Специалист

Зарегистрирован:
Ср, сен 08 2004, 16:04
Сообщения: 112
Откуда: Ukraine
Пол: Мужской
ВН написал(а):
INDEX + ETAB-TOP_LINE - 1

где INDEX - номер строки, на которую нужно установить курсор
ETAB - экранная таблица

ETAB-TOP_LINE - содержит номер верхней строки таблицы на экране


Это обратная задача. :(

Дело в том, что при установке курсора нужно знать индекс на экране.
При установке ETAB-CURRENT_LINE в индекс таблицы переход на эту строку не переходит т.к. этот индекс слишком большой.
Так вот, я хочу установить

ETAB-TOP_LINE = (ETAB-LINES/количество строк на экране)*количество строк на экране
а ETAB-CURRENT_LINE = ETAB-LINES - ETAB-TOP_LINE.

Если есть работающее решение, то... пожалуйста.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, фев 09 2005, 11:55 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Чт, сен 23 2004, 18:43
Сообщения: 1556
Откуда: Москва
s_ss написал:
Так вот, я хочу установить

ETAB-TOP_LINE = (ETAB-LINES/количество строк на экране)*количество строк на экране
а ETAB-CURRENT_LINE = ETAB-LINES - ETAB-TOP_LINE.


Совсем вы чего-то запутались :-).
По законам математики,
(ETAB-LINES/количество строк на экране)*количество строк на экране
= ETAB-LINES.

Может быть, все проще?
Code:
ETAB-CURRENT_LINE = ETAB-TOP_LINE = ITAB_INDEX .

Либо
Code:
ETAB-TOP_LINE = ITAB_INDEX .
SET CURSOR LINE 1

_________________
Hе иди по течению, не иди против течения - иди поперек него, если хочешь достичь берега.
Слова Ванталы. Дела Ванталы


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, фев 09 2005, 12:16 
Специалист
Специалист

Зарегистрирован:
Ср, сен 08 2004, 16:04
Сообщения: 112
Откуда: Ukraine
Пол: Мужской
111 написал(а):
s_ss написал:
Так вот, я хочу установить

ETAB-TOP_LINE = (ETAB-LINES/количество строк на экране)*количество строк на экране
а ETAB-CURRENT_LINE = ETAB-LINES - ETAB-TOP_LINE.


Совсем вы чего-то запутались :-).


Ну да, я имел в виду:
(целая_часть(ETAB-LINES/количество строк на экране))_*количество строк на экране.
Понятно, что здесь тоже не все в порядке. Я лишь хотел донести мысль.. :)

Цитата:
Может быть, все проще?
Code:
ETAB-CURRENT_LINE = ETAB-TOP_LINE = ITAB_INDEX .

Либо
Code:
ETAB-TOP_LINE = ITAB_INDEX .
SET CURSOR LINE 1

Да, я думал нат таким решением. В этом случае запись будет отбражена в самом верху. Я хотел красивше показать пользователю..
по экранам. :wink:

Эх.. не судьба. Спасибо.

PS Есть конечно еще решение взять поле sy-SROWS и вычесть из него лишние строки. Но оно некорректное: почти то же самое, что и задать количество видимых строк таблицы числом в формуле. :?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, фев 09 2005, 13:55 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Чт, сен 23 2004, 18:43
Сообщения: 1556
Откуда: Москва
s_ss написал:
Ну да, я имел в виду:
(целая_часть(ETAB-LINES/количество строк на экране))_*количество строк на экране.


Все равно чего-то не то :-) .
Тогда уж
ETAB-TOP_LINE = ITAB_INDEX div SY-LOOPC.

_________________
Hе иди по течению, не иди против течения - иди поперек него, если хочешь достичь берега.
Слова Ванталы. Дела Ванталы


Последний раз редактировалось 111 Ср, фев 09 2005, 15:17, всего редактировалось 1 раз.

Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, фев 09 2005, 15:06 
Ассистент
Ассистент

Зарегистрирован:
Ср, окт 06 2004, 12:06
Сообщения: 35
Пол: Мужской
В CONTROLS для таблицы элемент LINES вроде содержит то, что нужно


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

Зарегистрирован:
Чт, сен 23 2004, 18:43
Сообщения: 1556
Откуда: Москва
nick_mi написал:
В CONTROLS для таблицы элемент LINES вроде содержит то, что нужно


Нет. LINES - это общее количество строк, которые ты хочешь вывести.
Служит для того, чтобы грид скроллинг мог делать. Чтобы знал, до какой записи скроллировать.

_________________
Hе иди по течению, не иди против течения - иди поперек него, если хочешь достичь берега.
Слова Ванталы. Дела Ванталы


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

Зарегистрирован:
Чт, сен 23 2004, 18:43
Сообщения: 1556
Откуда: Москва
s_ss написал:
Если таблица не заполнено полностью, то это число меньше чем число видимых строк в таблице.


Ничего подобного.
Просто это поле корректно заполняется только во время выполнения экранной логики, относящейся к гриду.

_________________
Hе иди по течению, не иди против течения - иди поперек него, если хочешь достичь берега.
Слова Ванталы. Дела Ванталы


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

Зарегистрирован:
Ср, сен 08 2004, 16:04
Сообщения: 112
Откуда: Ukraine
Пол: Мужской
111 написал(а):
s_ss написал:
Если таблица не заполнено полностью, то это число меньше чем число видимых строк в таблице.


Ничего подобного.
Просто это поле корректно заполняется только во время выполнения экранной логики, относящейся к гриду.

Вот оно :!:
Спасибо. Вот эта фраза, которую я так хотел услышать!


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

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


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

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


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

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