Экспорт файла из FileCabinet NetSuite на FTP
Файл находится в картотеке NetSuite и должен каждый день размещаться на FTP-сервере.
Я не уверен, как справиться с этим через Suitelet/RESTlet, или если это возможно - но предпочел бы не использовать внешний источник / приложение.
Мой текущий и, надеюсь, временный обходной путь - это локальное запланированное задание для запуска скрипта для извлечения файлов из NetSuite и загрузки на FTP.
4 ответа
Netsuite не взаимодействует с FTP.
Вам нужен какой-нибудь сервер-бридж, который запускает веб-приложение (полноценный Apache или nginx, работающий на PHP или просто простую службу Node). Просто возьмите сервер и установите какой-нибудь веб-сервер / веб-сервис и разместите на нем свои файлы (nlapiRequestURL с Запланированный сценарий). Попросите веб-приложение на сервере моста отправить файлы на FTP-сервер. Если вы используете Netsuite, вы можете позволить себе стоимость сервера моста.
В SuiteScript 2.0, хотя незащищенный FTP все еще не поддерживается, но SS2.0 имеет возможность делать SFTP. См. http://www.upilioconsulting.com/blog/netsuite-2016-2-sftp-suitescript-2-0/
В SuiteScript 1.0 это не поддерживается. Обходной путь заключается в том, что вам нужно написать код промежуточного программного обеспечения (например, в PHP) и позволить промежуточному программному обеспечению выполнять передачу по FTP.
Одним из возможных решений является создание сохраненного поиска на Documents
перечислить все файлы в Netsuite фильтрации по createdate
или же lastmodifieddate
, Создайте планировщик, чтобы получать только новые файлы и сохранять их локально, где вы хотите.
Обратите внимание, что все файлы будут в base64
Формат закодированной строки, вам нужно декодировать снова, чтобы получить файл.
Как сказал bknights, NetSuite не поддерживает FTP. Вам нужен веб-сервер (для этого может использоваться любой язык на стороне сервера, я написал его на Node.js), чтобы получать файлы.
Содержимое файла для текстового файла будет в текстовом формате, поэтому для текстовых файлов не требуется логика декодирования. Однако двоичный файл /pdf/image и другие должны быть в формате base64, поскольку в JS NetSuite нет способа обработки двоичных данных. Поэтому убедитесь, что вы расшифровали его перед созданием файла на вашем FTP-сервере.