Автоматизация загрузки файлов Priority-Web-SDK
Я хотел бы создать командную строку (или другой автоматизированный) метод для загрузки файлов в приоритет с помощью Web-SDK. Лучшее решение, которое у меня есть сейчас, - это простая веб-форма, активируемая скриптом Python.
Существуют ли инструменты / примеры использования Javascript и средства выбора файлов без открытия браузера? Существуют ли порты Priority-Web-SDK для других сред? C#, Python и т. Д.?
Любые другие предложения также приветствуются.
2 ответа
Этот скрипт nodejs загрузит файл в Приоритет. Удостоверься что fetch-base64
установлен npm:
"use strict";
const priority = require('priority-web-sdk');
const fetch = require('fetch-base64');
const configuration = {...};
async function uploadFile(formName, zoomVal, filepath, filename) {
try {
await priority.login(configuration);
let form = await priority.formStartEx(formName, null, null, null, 1, {zoomValue: zoomVal});
await form.startSubForm("EXTFILES", null ,null);
let data = await fetch.local(filepath + '/' + filename);
let f = await form.uploadDataUrl(data[0], filename.match(/\..+$/i)[0], () => {});
await form.fieldUpdate("EXTFILENAME", f.file); // Path
await form.fieldUpdate("EXTFILEDES", filename); // Name
await form.saveRow(0);
} catch(err) {
console.log('Something bad happened:');
console.dir(err);
}
}
uploadFile('AINVOICES', 'T9679', 'C:/my/path', 'a.pdf');
Вы запускаете узел локально и используете приоритетный SDK.
* Пока вы работаете в среде, способной визуализировать JS. Вы можете отправлять файлы через функцию uploadFile
, Данные внутри файлового объекта должны быть записаны как 64 базовых файла.