Показать сообщение отдельно
Старый 01.07.2011, 12:58   #26  
Гонков Владислав is offline
Гонков Владислав
Участник
Аватар для Гонков Владислав
 
35 / 10 (1) +
Регистрация: 17.09.2008
Цитата:
Сообщение от Sancho Посмотреть сообщение
Цитата:
Сообщение от Гонков Владислав Посмотреть сообщение
видимо, красным цветом помечен код, который не был выполнен...
хм..
анализируем, прежде всего, на предмет времени старта той или иной строчки.
цвет не важен.
если строка 85 запустилась на 20 секунд позже строки 84, то в 84-й строке какая-то фигня, которая выполняется 20 секунд.
если на форме 30 строчек, то эти 20 секунд * 30 строчек и вот ваши ожидания открытия формочки.
При открытии Оборотки торможение происходит в этом месте:
Время Операция Но. Имя функции Номер параметра Параметр Номер Данные
10:23:59 6650 FIND/NEXT 100 Elapsed Time (ms)
10:23:59 6651 FINDFIRST 1 Table 21 Cust. Ledger Entry
10:23:59 6651 FINDFIRST 3 Key Клиент Но.,Открыта,Положительна,Дата Оплаты,Код Валюты,Операция Но.
10:23:59 6651 FINDFIRST 6 Filter Клиент Но.:К04972, Открыта:Да, Положительна:Да
10:23:59 6651 FINDFIRST 14 Source Object Form 12406 Клиент Фин. Оборот. Ведомость
10:23:59 6651 FINDFIRST 15 Source Trigger/Function CriticalDatePayment := fn_CriticalDatePayment()
10:23:59 6651 FINDFIRST 16 Source Line No. 101
10:23:59 6651 FINDFIRST 17 Source Text IF l_recPaymentTerms.FIND('-') THEN BEGIN
10:23:59 6651 FINDFIRST 33 SQL Status ID: 369135;Reused: 2188;Prepared;Default;Top;Rows: 1;Cached;Browse
10:23:59 6651 FINDFIRST 100 Elapsed Time (ms)
10:24:04 6652 FIND/NEXT 1 Table 13 Salesperson/Purchaser

а при проваливании по дрилдаун в поле "Дебет сумма (руб)" "зависание" происходит здесь:
Время Операция Но. Имя функции Номер параметра Параметр Номер Данные
11:41:00 7757 FIND/NEXT 100 Elapsed Time (ms) 93
11:41:00 7758 FIND/NEXT 1 Table 17 G/L Entry
11:41:00 7758 FIND/NEXT 2 Search Method <
11:41:00 7758 FIND/NEXT 3 Key Дата Учета='14.06.11',Операция Но.='3241132'
11:41:00 7758 FIND/NEXT 6 Filter Дата Учета:01.06.11..30.06.11, Дебет Сумма:<>0, Фин. Счет Но.:62-100, Источник Но.:К04982, Тип Источника:Клиент
11:41:00 7758 FIND/NEXT 14 Source Object Form 20 Фин. Книга Операций
11:41:00 7758 FIND/NEXT 15 Source Trigger/Function Form - OnNextRecord()
11:41:00 7758 FIND/NEXT 16 Source Line No. 70
11:41:00 7758 FIND/NEXT 17 Source Text END ELSE
11:41:00 7758 FIND/NEXT 30 SQL Statement SELECT * FROM "ЗАО Чайная компания №1$G_L Entry" WITH (READUNCOMMITTED) WHERE (("Posting Date">=? AND "Posting Date"<=?)) AND (("Debit Amount"<>?)) AND (("G_L Account No_"=?)) AND (("Source No_"=?)) AND (("Source Type"=?)) AND "Posting Date"=? AND
11:41:00 7758 FIND/NEXT 31 SQL Plan Filter[2,1];Nested Loops[3,2];Index Seek($1)[4,3];Clustered Index Seek(ЗАО Чайная компания №1$G_L Entry$0)[6,3]
11:41:00 7758 FIND/NEXT 32 SQL Index Фин. Счет Но.,Дата Учета,Операция Но.
11:41:13 7758 FIND/NEXT 33 SQL Status ID: 371603;New;Direct;Fast;Restricted;Rows: 1;UpdateNoLocks
11:41:14 7758 FIND/NEXT 50 Search Result

11:41:14 7758 FIND/NEXT 100 Elapsed Time (ms) 13891
11:41:14 7759 FIND/NEXT 1 Table 13 Salesperson/Purchaser

Вся ещё проблема в том, что я пока с SQL "на ты", поэтому оперативно понять "куда копать" не получается, буду благодарен за любую помощь.
П.С. Может кто-нибудь из форумчан посоветует литературу по данному вопросу? Курсы? Хочется научиться разбираться в подобных вопросах.
П.П.С. Видимо, надо изучать SQL для начала...