|
![]() |
#1 |
Участник
|
Мой отчет имеет свойство ProcessingOnly. Т.е. он предназначен именно для обработки, а не для вывода на печать.
Но забудем про отчет. Пусть это будет кнопка на форме. Нажатием на кнопку вызывается, допустим, codeunit, который выполняет расчеты и производит модификацию записей в базе. Я хочу сделать так, чтобы во время, пока выполняется этот процесс, нельзя было запустить этот же процесс из другой сессии. Во время процесса блокируются таблицы, к которым обращаются другие пользователи. Поскольку процесс продолжительный, я разбил его на транзакции функцией COMMIT. Происходит обработка первого товара, на время которой некоторые процессы других пользователей блокируются. Далее следует функция COMMIT, которая завершает транзакцию (но не процесс) и снимает блокировку. Другие сессии благополучно завершают свои транзакции. После чего мой процесс приступает к обработке следующего товара. Здесь все в порядке. Но при таком раскладе я не вижу возможности исключить параллельный запуск данного расчета. Потому что мне нужно блокировать не таблицы, которые расчет модифицирует, а сам факт запуска этого расчета. Нужен действительно какой-то флажок, но я не знаю, где его можно создать. Что касается xSysLastValue – то это из мира Axapta, насколько я понимаю, а речь про Navision. 2 Yuriy Не совсем понял про выделенный сервер отчетов. У меня ведь идет именно модификация данных. Как можно выполнять ее отдельно? К слову, всё это касается как раз коррекции себестоимости, только не родной навижнской, а самодельной, доставшейся нам в наследство от внедряющей фирмы. |
|
|
![]() |
||||
Тема | Ответов | |||
Печать отчета из просмотра | 1 | |||
Свойство KeepWithNext тела отчета! | 2 | |||
Проблема с компиляцией отчёта | 2 | |||
[Attein 3.01]Запрет печати отчета из предварительно просмотра. | 11 |
|