![]() |
#21 |
Участник
|
У меня на Nav 3.6 + SQL2000
Код GLEntry.RESET; GLEntry.SETCURRENTKEY("Transaction No."); GLEntry.SETRANGE("G/L Account No.",'60007'); GLEntry.SETRANGE("Posting Date",010107D,310307D); IF GLEntry.FIND('-') THEN ; отрабатывал в разы быстрее, чем GLEntry.RESET; GLEntry.SETRANGE("G/L Account No.",'60007'); GLEntry.SETRANGE("Posting Date",010107D,310307D); IF GLEntry.FIND('-') THEN ; Хотя выбор индекса действительно осуществлялся независимо от GLEntry.SETCURRENTKEY("Transaction No."). Точнее если закомментирована строка GLEntry.SETRANGE("Posting Date",010107D,310307D);, то индекс по "Transaction No.", а если нет, то индекс, который включал оба фильтруемых поля. Во втором случае всегда использовался кластерный индекс. весьма небыстро отрабатывал. P.S. 17 таблица более 3 млн записей |
|