Выгрузка файла
В интерфейсе можно добавить кнопку, по нажатию на которую будет автоматически скачиваться любой файл из MDT по его UID
. Файл может быть как сгенерирован в ходе ETL-процесса, так и загружен ранее любым другим способом. Это удобно для выгрузки отчётов, актов, сводок и других документов.
Для скачивания файла используется метод download
объекта file
. Метод принимает UID
файла, который должен быть заранее сохранён в кэш-таблице.
Базовое использование
return file.download("UID_файла");
Полный пример использования
При вызове file.download(...)
браузер пользователя автоматически начнёт скачивание файла.
const object = app.configureObject("demo.load");
// Добавляется кнопка "Выгрузить отгрузки" в список
object.addStaticAction("exportLoadData", {
title: "Выгрузить отгрузки",
execute: ({ params }, { objects, file, etl }) => {
// Получаем ID текущей записи
const recordId = params.get("RecordId");
// Запускаем ETL-процесс, который формирует файл
etl.execute("generateExcel", { recordId });
// Получаем UID сгенерированного файла из кэш-таблицы
const result = objects.get("usp_getFileUid").selectRecords({
params: { RecordId: recordId }
});
const uid = result[0].get("UID");
// Отправляем файл на скачивание
return file.download(uid);
}
});