Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.11.22;
Скачать: CL | DM;

Вниз

уведомление из FireBird приложения   Найти похожие ветки 

 
Karburator   (2008-12-17 06:41) [0]

Здравствуйте, идет долгая работа хранимой процедуры, как мне посылать в приложение (написанное на делфи) уведомление об обработке следующей сотни записей? И как ловить это уведомление в приложении?


 
Сергей М. ©   (2008-12-17 08:50) [1]


> как мне посылать в приложение .. уведомление
> об обработке следующей сотни записей


А собссно зачем ?
Мне как потенциальному пользователю клиентской части твоего приложения абсолютно индифферентно что там и как делает сервер, мне нужно лишь знать что "система не зависла" и идет выполнение затребованной мной операции..


 
Karburator   (2008-12-17 09:21) [2]

ну как же, если операция работы с бд длится хотя бы минуты, то думаю для пользователя нужно обязательно организовать в клиентской части отображение прогресса с ходом процесса


 
Karburator   (2008-12-17 09:23) [3]

вот именно для того чтобы знать


 
Sergey13 ©   (2008-12-17 09:28) [4]

Самое простое, имхо, в ХП писать некое значение в некую таблицу и читать его от туда в приложении.


 
Johnmen ©   (2008-12-17 09:28) [5]

Это занятие бестолковое. Ибо евент всё одно придет после подтверждения транзакции.


 
Сергей М. ©   (2008-12-17 09:38) [6]


> после подтверждения транзакции


+1

А до ее подтверждения клиентом говорить о проценте обработанности чего-то там на сервере говорить попросту бессмысленно.


 
Сергей М. ©   (2008-12-17 09:40) [7]


> Karburator   (17.12.08 09:21) [2]


Покажи юзеру анимашку, просто развлеки его на эту минуту.
Можно и просто туда-сюда погонять ползунок какого-нить "бара" - юзеру этого будет вполне достаточно для успокоения.


 
Karburator   (2008-12-17 10:36) [8]

> Можно и просто туда-сюда погонять ползунок какого-нить "бара" - юзеру этого будет вполне достаточно для успокоения.
:))
А если у меня запускаются последовательно несколько тяжелых ХПшек внутри одной ХПшки на сервере, то стало быть если после каждой подтверждать транзакцию и по совету заносить значение в таблицу отображающую количество завершенных ХП и которую постоянно читать клиентом, то я частично решу проблему уведомления клиента о работе сервера?


 
Сергей М. ©   (2008-12-17 11:12) [9]


> Karburator   (17.12.08 10:36) [8]


Это уж тебе решать насчет подтверждения ТА ..
Но если она подтверждена, то и таблица не нужна - достаточно post_event


 
Правильный$Вася   (2008-12-17 11:16) [10]


> А если у меня запускаются последовательно несколько тяжелых
> ХПшек внутри одной ХПшки на сервере, то стало быть если
> после каждой подтверждать транзакцию

то в этом случае нафиг не нужна та самая ХП-вызывалка со всей мутотней с временными записями
гораздо удобнее вызывать эти ХП из клиента по очереди и индицировать вызовы в окошке
кроме того, это можно сделать, не завершая транзакции после каждой ХП, если логика работы так требует
(уж не знаю, ввели ли возможность коммита внутри ХП в двойке, раньше не было)


 
PEAKTOP ©   (2008-12-17 17:56) [11]

> (уж не знаю, ввели ли возможность коммита внутри ХП в двойке, раньше не было)

COMMITа - пока нет, зато можно выполнить кусок кода внутри ХП, триггера или PSQL-блока в другой транзакции, и даже в другом подключении. Если этот блок кода выполнится успешно, то автономной транзакции наступит COMMIT, иначе - ROLLBACK

http://firebirdsql.su/doku.php?id=autonomous_transaction
http://firebirdsql.su/doku.php?id=execute_statement



Страницы: 1 вся ветка

Текущий архив: 2009.11.22;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.016 c
2-1255076968
Pascal96
2009-10-09 12:29
2009.11.22
Задачка на Pascal


15-1253622103
cwl
2009-09-22 16:21
2009.11.22
скрипт для Delphi


15-1253610696
Вася
2009-09-22 13:11
2009.11.22
Распаковать gz


11-1207992046
Фунтик
2008-04-12 13:20
2009.11.22
Delphi 7 + KOL, проблема


1-1225802818
NiGGa
2008-11-04 15:46
2009.11.22
Вызов метода объекта по имени