24.05.2009, 12:32 | #1 |
Участник
|
В таблицу CustInvoiceTrans вставила новый real столбик и по дефолту значение придала 0.00 .
Запускаю простой Job, Код: public void cusInvoiceTrans_KiekisGk(Args _args) { CustInvoiceTrans CustInvoiceTrans; real weight; ; ttsbegin; while select forupdate CustInvoiceTrans where CustInvoiceTrans.KiekisKG ==0 && CustInvoiceTrans.InvoiceDate >= str2Date('2009.01.01', 321) { weight = decround(CustInvoiceTrans.NetWeight(),4); if (weight != CustInvoiceTrans.KiekisKG) { CustInvoiceTrans.KiekisKG = weight; CustInvoiceTrans.update(); } } ttscommit; } |
|
04.06.2009, 15:42 | #2 |
Участник
|
&& CustInvoiceTrans.InvoiceDate >= 01\01\2009
будет работать быстрее (kaip man atrodo) |
|
04.06.2009, 22:27 | #3 |
Участник
|
Цитата:
Сообщение от Nastia
если ставлю фильтр по одной фактуре - новый столбик заполняется новыми данными, но как только пытаюсь сделать ту же процедуру с данными за этот год - всё виснет. Почему всё виснет??? Если запускаю простой SELECT без ttsbegin, ttscommit, forupdate - всё прекрасно считается. Не могу понять в чём дело...
кто-нибудь в это время с фактурами работает? может не виснет, а возникает блокировка? или даже deadlock? что показывает Management Studio? |
|