|
Как запретить одновременный вызов ХП?
|
|||
---|---|---|---|
#18+
Здравствуйте! ASA 12.0.1. Поискал, но не нашел решения для ASA. Не выполнять процедуру, если в данный момент она вызвана другим пользователем. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.11.2014, 16:55 |
|
Как запретить одновременный вызов ХП?
|
|||
---|---|---|---|
#18+
Например это можно сделать так: Создаем табличку с полями: имя пользователя, дата и время запуска SP. В самой SP в ее начале пишем в эту табличку строку current user, currend date, current time, а в конце этой SP удаляем эту строку по имени пользователя. В обработчике на дисконнект пользователя так же вешаем удаление этой строки (это надо на случай ошибки в SP). А при запуске SP проверяем нашу табличку на наличие данных и нужным образом реагируем на это. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.11.2014, 18:30 |
|
Как запретить одновременный вызов ХП?
|
|||
---|---|---|---|
#18+
Stalker4, А разве в случае ошибки в SP вызовется вызовется событие disconnect пользователя? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.11.2014, 18:59 |
|
Как запретить одновременный вызов ХП?
|
|||
---|---|---|---|
#18+
TeckStalker4, А разве в случае ошибки в SP вызовется вызовется событие disconnect пользователя?Нет конечно. Но дисконнект когда-нибудь произойдет... Но лучше не удалять строку, а сделать в этой табличке два поля - старт-стоп и заполнять их соответственно. И если в таблице есть строка с пустым стоп-полем то значит процедура работает. Получится еще и лог запусков... А если поднять уровень изоляции то можно будет просто вызывать при старте ХП update, тогда конкуренты будут автоматически замерзать пока первая процедура не сделает коммит. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2014, 05:32 |
|
|
start [/forum/topic.php?fid=55&fpage=7&tid=2009805]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
47ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 143ms |
0 / 0 |