-
Здравствуйте, идет долгая работа хранимой процедуры, как мне посылать в приложение (написанное на делфи) уведомление об обработке следующей сотни записей? И как ловить это уведомление в приложении?
-
> как мне посылать в приложение .. уведомление > об обработке следующей сотни записей
А собссно зачем ? Мне как потенциальному пользователю клиентской части твоего приложения абсолютно индифферентно что там и как делает сервер, мне нужно лишь знать что "система не зависла" и идет выполнение затребованной мной операции..
-
ну как же, если операция работы с бд длится хотя бы минуты, то думаю для пользователя нужно обязательно организовать в клиентской части отображение прогресса с ходом процесса
-
вот именно для того чтобы знать
-
Самое простое, имхо, в ХП писать некое значение в некую таблицу и читать его от туда в приложении.
-
Это занятие бестолковое. Ибо евент всё одно придет после подтверждения транзакции.
-
> после подтверждения транзакции
+1
А до ее подтверждения клиентом говорить о проценте обработанности чего-то там на сервере говорить попросту бессмысленно.
-
> Karburator (17.12.08 09:21) [2]
Покажи юзеру анимашку, просто развлеки его на эту минуту. Можно и просто туда-сюда погонять ползунок какого-нить "бара" - юзеру этого будет вполне достаточно для успокоения.
-
> Можно и просто туда-сюда погонять ползунок какого-нить "бара" - юзеру этого будет вполне достаточно для успокоения. :)) А если у меня запускаются последовательно несколько тяжелых ХПшек внутри одной ХПшки на сервере, то стало быть если после каждой подтверждать транзакцию и по совету заносить значение в таблицу отображающую количество завершенных ХП и которую постоянно читать клиентом, то я частично решу проблему уведомления клиента о работе сервера?
-
> Karburator (17.12.08 10:36) [8]
Это уж тебе решать насчет подтверждения ТА .. Но если она подтверждена, то и таблица не нужна - достаточно post_event
-
> А если у меня запускаются последовательно несколько тяжелых > ХПшек внутри одной ХПшки на сервере, то стало быть если > после каждой подтверждать транзакцию
то в этом случае нафиг не нужна та самая ХП-вызывалка со всей мутотней с временными записями гораздо удобнее вызывать эти ХП из клиента по очереди и индицировать вызовы в окошке кроме того, это можно сделать, не завершая транзакции после каждой ХП, если логика работы так требует (уж не знаю, ввели ли возможность коммита внутри ХП в двойке, раньше не было)
-
|