Показать сообщение отдельно
Старый 01.04.2003, 10:56   #6  
Grizzly is offline
Grizzly
Участник
 
85 / 10 (1) +
Регистрация: 30.01.2003
Адрес: Омск
Цитата:
Изначально опубликовано finn
подскажите сколько записей в G/L Entry ?
3 минуты слишком много как мне представляется.
К сожалению, может быть значительно дольше :-(

Дело в том, что Attain и SQL Server используют принципиально разные модели данных. SQL Server ориентирован на работу со множествами (как, собственно, и все реляционные СУБД), а Attain - на работу с записями. Из этого следует два вывода:

1. Attain не может использовать реляционный аппарат (в том числе и агрегатные функции), так как сам он "мыслит" на более низком уровне. Сооответственно, он не может использовать все возможности и реляционных СУБД.

2. Операции по обработке данных производятся на клиенте (Свойство GroupTotalFields используется только лишь для того, чтобы определить поля, которые надо контроллировать и при изменении их значения вызывать соответсвующие триггеры), поэтому все данные, которые необходимы для обработки, сначала извлекаются сервером, передаются по сети на клиент и затем обрабатываются. Что конечно же дольше, чем если бы эта операция была выполнена на сервере, а возвращен был только результат.

Что касается "рецепта" для решения подобных проблем, то я абсолютно согласен с Finn. Существует всего два средства:
1. Использование в Attain технологии SIFT
2. Использование внешних средств генерации отчетности, которые, кстати, можно легко интегрировать в среду Attain