12.06.2024, 19:03 | #1 |
Участник
|
Архитектура импорта файлов: батчем + интеррактивно
AX2009
Простая задача: Нужно импортировать файлы батчем из папки на сервере и также дать возможность пользователю запустить этот процесс вручную(интеррактивно) Как избежать того, чтобы два батч процесса или батч+интеррактив не начали одновременно обрабатывать один и тот же файл? Один из вариантов, как мне кажется: создать табличку, куда писать имя файла и статус (обработан или нет) и, может, какой-то guid для обозначения процесса, который файл обрабатывает. Т.о конкурирующий процесс увидит, что файл уже в процессе обработки, и не будет его трогать. Другой вариант: можно куда-то перемещать файл сразу для обработки(в другую папку и удалять из текущей), но, наверное, это менее надежный подход Еще один: как-то лочить сам файл(открывать на запись, но ничего не писать).Тогда другой процесс проверит открыт ли он на запись и не сможет обработать. Есть ли иные(проверенные) способы? (Не хочу изобретать велосипед или наступать на грабли). Может, в самой аксапте есть хорошие стандартные примеры? Последний раз редактировалось Lankey; 12.06.2024 в 19:08. |
|
Теги |
ax2009 |
|
|