К Роман Кошелев:
"Не очень верится, чтобы такая простая операция занимала много времени".
Насколько я понимаю, выполняется
select count(recid) from table
это далеко не простая операция.
А насчет времени все же посмотри как открывается форма, которая показывает количество записей.
Размер кэша не решит эту проблему
К Buh:
"а можно создать таблицу, в которой будет содержаться длина необходимых списков, тогда обращаться можно к ней и не заниматься подсчетом записей."
Во-первых не списков, а таблиц. Они по разному хранятся.
Во-вторых. Это ж сетевая версия!
Предположим, что один раз посчитали, другой пользователь добавил несколько (или сотню) записей. Что тогда будет с бегунком у первого пользователя?
Можно конечно отслеживать добавления и удаления записей.
Но это приведет к тому, что по сути после каждого добавления и удаления будет выполняться та самая конструкция, вычисляющая количество записей. Она потенциально очень медленная.
Говорю же, это не Аксаптовская проблема.
Это пролема большинства клиент-серверных приложений.
Если вспомнить тот же 1С.
SQL версия 1Са просто держит бегунок постоянного размера в центре скроллера.
Если вспомнить Навижин, то там вообще нет бегунка.
Если вспомнить Конкорд... Блин, не помню как это было в Конкорде... По-моему его вообще не было. Может Pavel подскажет?
В Аккпаке тоже бегунок по хитрому устроен.
В четвертом Сане бегунок работает как в Аксапте. В Пятом Сане бегунка вроде вообще нет, насколько я помню. Завтра надо у наших уточнить.
В САПе вроде тоже бегунка нет.