Экспорт файла из 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-сервере.

Другие вопросы по тегам