Цитата:
Изначально опубликовано uk
Как сделать так, чтобы при запуске отчета из одной сессии его невозможно было запустить из другой сессии до тех пор, пока он не отработает в первой?
Вы делаете отчет с побочными эффектами?
Т.е. в отчете вы изменяете состояние базы данных?
Зачем? Это ж противоречит всем правилам программирования, это противоречит зравому смыслу, это противоречит правилам администрирования. Вам придется воевать с ядром, наконец.
Сделайте два объекта - обработку и отчет.
Обработка меняет. Отчет только получает данные.
В результате, вы получите возможность запускать их в разное время и на разных машинах. Расчет будет делаться один раз, поэтому вы снизите нагрузку на систему. Вы получите возможность давать разные права на эти объекты. Отчет будет существенно проще и не потребует ТАКОГО программирования. Задачу можно распараллелить между разработчиками. И т.п.
Ну зачем же вы себе жизнь то усложняете?! На ровном месте причем!