Столкнулся с проблемой производительности при первичном открытии формы, после перехода на DAX 2009.
Ситуация следующая:
В системе есть примерно 2000 компаний и еще ~20 виртуальных компаний. При открытии тогоже стандартного плана счетов, система начинает делать множественне запросы к DataArea и VirtualDataAreaList. В Ledgertable план счетов настроен на одну виртуальную компанию, т.е. у всех один план счетов. В итоге первый раз форма открывается у пользователей от 1 до 3х минут. В последующие разы запросы уже не уходят к БД.
Да, в инфологе пишет, что план запроса используется повторно, но кол-во запросов меня пугает ~3000
Посмотрел на метод CursorNotify источника данных на строчке:
X++:
ledgerTableCache = ledgerTable_ds.getFirst(0,false);
начинаются множественные запросы.
если сделать:
X++:
ledgerTableCache = ledgerTable_ds.getFirst(0, true);
то работает еще хуже.
В общем, как разогнать не понятно.
Есть идеи?
P.S. пробовал коментить все кроме super(), в CursorNotify но это ни к чему не привело.