Цитата:
Сообщение от
greench
День добрый. Вопрос от новичка: как узнать сколько строк в данный момент отображается на форме? или как сделать столбец "номер строки"?
Вопрос гораздо сложнее, чем вам кажется.
Для отображения в форме Аксапта НЕ читает ВСЕ записи. Она читает только те, что помещаются в буфер. При необходимости читает дополнительные. Это происходит автоматически.
Поэтому есть два ответа:
1. если под "отображается на форме" вы имеете в виду сколько строк загружено в буфер Аксапты, то надо рыть куда-то в низкоуровневое кодирование.
2. если под "отображается на форме" вы имеете в виду сколько строк в таблице, то можно сделать как говорит kashperuk, а можно и по-другому. Но в любом случае это будет
дополнительный и достаточно
тяжелый запрос, который значительно снизит производительность системы.
Чтобы "сделать столбец номер строки" вы должны ответить для себя на несколько вопросов:
1. какие номера будут отображаться, если на записи наложить фильтр? Номера должны остаться такими же, как и до фильтрации или изменятся?
2. что будет происходить с номерами если изменить сортировку? (чтобы изменить сортировку, нажмите на любой заголовок столбца)
3. что будет происходить с номерами, если в середину будет вставлена запись? а при другой сортировке/фильтре?
4. Что будет происходить с номерами, если в середине запись будет удалена?
Представьте, что у вас нет Аксапты. Есть только бумага и карандаш.
Как только вы найдете ответ на бумаге, сразу станет ясно, что надо делать в Аксапте
Цитата:
Сообщение от
kashperuk
Можно попробовать вот так:
X++:
SysQuery::countTotal(<dataSourceName>_qr);
Попробовать то можно.
Только он насмерть забьет этими запросами систему.
Может не стоит советовать такие вещи новичкам?
Или хотя бы объяснять к чему это приведет.