#0
by Игорь Сергеевич
Народ подскажите пожалуста. Надо сделать так что бы обработку можно было одновременно запускать 1 раз. Щас реализовано так. Ну если все коротко. При запуске создается файлик определенного вида с одной строчкой. А после завершения работы обработки этот файлик удаляется. Но если обработка завершенна аварийно то соответственно этот файлик не удаляется. есть у кого нить светлые мысли по этому поводу?
#3
by Ёпрст
самое простое - блокировать лбой объект бд методом Блокировка, в обработке в ПриОткрытии проверять, если заблокирован - не запущаем, свободен - устанавливаем блокировку, запущаем. При любом вылете (аварийном или еще как), блокировка снимется сама автоматом.
#5
by Игорь Сергеевич
мне новую форму открывать не надо. Просто там обработка выгрузки ХМЛ в кассу и если она запустится на 2 машинах сразу будет в кассе белеберда.
#6
by KishMish
в обработке создавать этот файик каждые 5 секунд и записывать туда время изменения Удалять файлик через ОбработкаОжидания если прошло много времени
#19
by KishMish
думаешь так надо? "блокировать любой объект методом Блокировка" то есть берешь любой (но конкнретный) элемент справочника и блокируешь его
#24
by Игорь Сергеевич
Я так понял мне взять любой элемент справочника. И заблокировать его а при открытии обарботки проверять его блокировку.
#27
by Ёпрст
не обязательно справочника, это может быть документ/константа.. пока сам не отпустишь(разблокируешь) методом блокировка или пока не закроешь свою обработку.
#28
by Игорь Сергеевич
что то синтоксису не нашел не чего. Это типо Блокировка(Справочники.Номенклатура.Реквизит)=1; так что ли?
#35
by YHVVH
не проще сделать пользователя в базе который будет запусать только эту обработку сразу при старте
#36
by Ёпрст
вероятно, этим пользователем будут бухи, которых много. Смысл - не дать запускаться этой обработке одновременно разным пользователям. всё.
#38
by YHVVH
не я понял , что одновременно разным пользователем можно ведь создать юзера назвать его отчет, и пжалуста пользуйся, не получится ведь зайти два разйти одним юзером отчетом. ну это все лирика, вариант коненчо ни много ни удобный, поэтому и спрашиваю а в чем сообсвтенно такого что отчет нельзя запускать одновременно.
#40
by YHVVH
вот и спрашиваю :-) уж на сколько у нас ситема дебильная и все переписанная и задачи разнообразные, но такой фишки не используем как то все обходилось.
#41
by Игорь Сергеевич
ме задачу поставили пытаюсь реализовать. Я бы такой что бы реализовать причину. Думаю легче было бы устранить краши системы.
#44
by BuHu
зачем все так сложно , у тебя ведь при открытии смотрит наличие файла и если его нет то запускается выгрузка , так вот смотри не только на наличе файла но и на время последнего изменения , если он долго лежит - грохай его и запускай.
#54
by Ork
Фсе фигня. Не нужно оставлять файл, который уже обработывается, на всеобщее обоРзение. Перед началом обработки файл должен быть скопирован в место (доступное или назначенное) только для одного пользователя.
#56
by Ork
+ Получите возможность _одновременно_ обрабатывать _разные_ файлы. При помощи блокировок чего-либо такой возможности не будет. Кроме того, если обработка может вестись с разных баз, тогда блокировка в одной базе никак не перенесетна на другую. В итоге настанет белый и пушистый.
#60
by Игорь Сергеевич
Были еще идеи получить список используемых файлов из винды и поискать там эту обработку. Но как жто реализвать даже не представляю.
#62
by orefkov
Создай сигнальный файл - дбф. При старте обработки пытайся открыть его методом XBase::ОткрытьФайл эксклюзивно. При закрытии обработки закрывай файл.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
В этой группе 1С
- Директор по доверенности БП 2.0
- v8: вывести значки в столбец табличного поля
- Автоматическая выгрузка данных 7.7
- Огромный файл LDF. Как уменьшить?
- Управление торговлей 10.3 резервирование товара без указания размещения
- <служебные программы EISA> - что это?
- Проводки по договору ГПХ в комплексной автоматизации
- Куда 1С 8 РБД кладет файлы при обмене по e-mail?
- .УстановитьТекущийКаталог()
- Динамический список. Вывод с учетом иерархии.
- ПриНачалеБлокировкиОбъекта
- Подскажите как пользоваться обфускацией кода 1С
- ЗУП - отчет "Отражение зарплаты в регламентированном учете"
- БП 2.0 Добавить субконто примитивного типа Дата
- Себестоимость при продаже в минус - помогите советом
- Как создать документа перемещение на основании перемещения?
- Печатные формы через метаданные
- Ошибка при получении значения атрибута контекста (Экземпляр) . Метод не найден.
- Ошибка при получении значения атрибута контекста (Экземпляр) . Метод не найден.
- Отправка EPL-команд на принтер