Процесс:
- Некая сторонняя система или человек выкладывает файл в некий каталог
- Периодическая операция в аксапте видит новые файлы и вызывает хранимую процедуру на SQL, в которую параметром передается путь к файлу
- SQL засасывает содержимое через BULK INSERT и возвращает либо Ок, либо ошибку
- В зависимости от ответа файл перемещается либо в каталог архива, либо в ошибки
На Ax2012 задача решалась просто, через сетевую шару и настройку доступа к каталогам всем, кому надо.
В D365FO насколько я понял
аналог сетевой шары можно сделать через Azure File Storage, который можно замаунтить и использовать, как диск. Но во всех примерах с Azure
BULK INSERT используется Blob storage, который, как я понял, замаунтить нельзя.
Вопросы к тем, кто, может быть, уже решал аналогичную задачу.
- Можно ли на SQL использовать в качестве external datasource не Blob, а File storage?
- Если нет, то как быть?
На второй вопрос пока вижу ответ,
средствами Ах копировать из File в Blob, передавать на SQL Blob, после успешной/неуспешной вставки данных этот Blob удалять и манипулировать дальше с File опять из Ах. Но как-то сложно это всё выглядит
Может есть путь проще? Размеры файлов, кстати, от 4 до 10 Гб, как там с копированием File -> Blob? Оно в облаках выполняется или сначала скачивается файл, а потом закачивается обратно?