| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Базы данных и репортинг > Хранимая процедура! |
| Автор: DDX 13.2.2006, 14:16 |
| D7/ADO/SQL Server 2000 хранимка не возвращает набора данных, вызываю через ExecProc, только работает порядочное время. Вопрос: как отследить, что она уже отработала?? дождаться окончания нужно обязательно и дать юзеру возможность работать дальше. и можно ли сделать какой-то прогрессбар выполнения? |
| Автор: DimW 13.2.2006, 15:29 | ||
| ну а откуда ты знаешь что она столько работает? значит видно когда ана отработала.... ну так процедура и неможет возвратить набор данных. на счет прогрес бара: на мой взгляд единственный способ это реализовать - создаешь таблицу с полями: id_session|progress_num где id_session -идентификатор сесии, а progress_num процентное выполнение процедуры... в процессе выполнения процедуры апдейтишь и коммитишь свою таблицу и из другой сесии селектишь из ее поле progress_num
и присваеваешь это эначение прогрес бару. но нужно учесть что эти два процесса должны работать параллельно в разных потоках, но это уже гругая тема!!! |
| Автор: DimW 13.2.2006, 15:45 |
| ну раз данные не обнавленные, значит она не отробатывает? а чего ждать? ты определи точно, после вызова процедуры из твоего проекта, после окончания 6-7 сек. данные в БД меняются или нет? |
| Автор: DDX 13.2.2006, 15:49 |
| при вызове из дельфи - нет при вызове напрямую - да |
| Автор: DimW 13.2.2006, 15:53 |
| DDX, тогда я непонял что отслеживать если оно и так не вызывается? может вопрос в том, что у тебя не получается с помошью ExecProc вызвать процедуру? |
| Автор: DDX 14.2.2006, 14:06 |
| хранимка вызывается! профайлер показывает, что она запустилась и начала работу но почему-то она отваливается, не отработав до конца! хотя из под квери аналайзера под тем же логином все работает замечательно Добавлено @ 14:20 всё!! нашел!! ураа!!! всего-то знаете в чем дело? в хранимке был невинный оператор print, выводящий сообщения в окно сообщений! вот из-за него-то всё и отваливалось каким- то хреном! |