15.09.2020 Юрий Сахно 16371
Работа с протоколом передачи файлов FTP в 1С

Содержание:

1.       Обмен данными между системами и конфигурациями

2.       Создание FTP соединение.  


1.    Обмен данными между системами и конфигурациями


Работа с FTP данными в 1с необходима, когда имеется потребность в пересылке данных, например, обмен данными между системами и конфигурациями. По сути, FTP – это классический протокол, для передачи файлов по сети (File Transfer Protocol).


Чтобы начать производить какие-либо действия с файлами, надо для начала создать соединение. Объект, через который происходит соединение называется FTP соединение. Все параметры указываются вначале работы в конструкторе объекта. Имя файла, путь, размер и прочую информацию можно получить с помощью другого объекта 1С – это FTP Файл. Но об этом позже. Также существует возможность создать защищенное соединение с указанием конкретного сертификата клиента или сертификата удостоверяющего центра. 


2.    Создание FTP соединения


Рассмотрим для примера следующий листинг программы, который был составлен с помощью синтаксис-помощника и внедрен в код модуля. Обращу внимание, что Данная функция работает на клиенте.


&НаКлиенте

ФункцияПодключитьсяКFTPСерверу()

 

    Соединение =НовыйFTPСоединение(

"0.0.0.0",// адрес ftp сервера

21,// порт сервера

"user",// имя пользователя

"123",// пароль пользователя

Неопределено,// прокси не используется

Истина,// пассивный режим работы

0,// таймаут (0 - без ограничений)

Неопределено// незащищенное соединение

);

Возврат Соединение;

КонецФункции

 

Не все параметры являются обязательными: при самом простом раскладе достаточно адреса, логина и пароля. Порт сервера может принимать различные значения, но по умолчанию стандартно используются 21 для ftp и 990 для ftps. Соединение создается в результате выполнения кода. Часто бывает, что при создании подключения с минимальным набором образуется задержка. Такое случается при активном соединении. В этом случае я рекомендую попробовать пассивный режим работы с выставлением нужного атрибута в параметрах сетевого соединения.


Дальнейшая работа будет проходить с помощью установленного соединения. Обычно следующее действие – это поиск нужных файлов. Для этого надо использовать метод НайтиФайлы:  


ФайлыСервера=Соединение.НайтиФайлы("/data/1.txt");


При наличии файла результатом будет его получение в виде переменной типа массив файлыFTP. Для дальнейшего обращения к полученному файлу используем индекс, например:


ФайлСервера = ФайлыСервера[0];


Метод НайтиФайлы может иметь два параметра – маска файлов и путь. Например, для получения файлов типа txt из корневой папки будет использован код:


ФайлыСервера=Соединение.НайтиФайлы("/","*.txt");

Чтобы скачать файлы используется метод «Получить» c двумя параметрами: «Имя файла и путь откуда» и «Путь и имя файла куда».


Соединение.Получить("/folder_1/file_1.txt","C:\file1.txt");

Аналогично происходит передача файлов со схожими параметрами:


Соединение.Записать("/folder_1/file_2.txt","C:\file2.txt") 

Удаление файлов происходит одноименным методом с указанием двух параметров: «Путь» и «Маска удаляемых файлов». Если маску не указать, то удалиться папка. Если необходимо удалить только один файл, то в качестве единственного параметра нужно задать полный путь к этому файлу.


Соединение.Удалить("/Folder1","*.txt");//удалить txtфайлы
Соединение.Удалить("/Folder1/1.txt");// удалить файл
Соединение.Удалить("/Folder1");// удалить папку
 

Переименовать файл можно с помощью метода «Переместить» с указаниям параметров «старое имя» и «новое имя»:


Соединение.Переместить("/NewBin","/OldBin");


Специалист компании «Кодерлайн»

Юрий Сахно

 

Наши проекты

ООО “РТИТС”
ООО “РТИТС”

Отрасль:
Транспортные системы

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

Блок регламентированного кадрового учета и расчета заработной платы в 1С:ERP;...

 ЗАО "Инвестгеосервис" -ДО
ЗАО «Инвестгеосервис»

Отрасль:
Нефтесервис

Внедренное типовое решение:
1С:Документооборот КОРП

- Работа с файлами;
- Делопроизводство;
- Процессы движения документов; ...

Автоматизация торговых операций на базе "1С:Управление торговлей" в ОАО "Авиазапчасть"
ОАО «Авиазапчасть»

Отрасль:
Авиационно-космическая промышленность

Внедренное типовое решение:
1С:Управление торговлей

- Оптовая торговля;
- Оформление заказов покупателей;
- Планирование прод...

ООО «Мир Аксиомы»
ООО «Мир Аксиомы»

Отрасль:
Аудиторские и консалтинговые услуги

Внедренное типовое решение:
1С:Бухгалтерия КОРП

- Бухгалтерский учет:
Банк и касса
Завершение периода
Нематериальные ...

ФГУП «Почта России»
ФГУП «Почта России»

Отрасль:
Почта, доставка

Внедренное типовое решение:
1С:Зарплата и управление персоналом

- Бухгалтерский учет
- Расчет зарплаты и кадровый учет
- Налоговый учет ...

Группа компаний ТМ «Дружба народов»
Группа компаний ТМ «Дружба народов»

Отрасль:
Пищевая промышленность

Внедренное типовое решение:
1С:ERP Управление предприятием 2.1

- Переход на новый релиз 2.1 программы «1С:ERP Управление предприятием»
- Разра...

Фирма 1С
Фирма 1С

Отрасль:

Внедренное типовое решение:
1С:Документооборот

- Подготовка функциональной модели прикладного решения «1С:Документооборот...

ООО «Солви Пак»
ООО «Солви Пак»

Отрасль:
Торговля. Производство печати на рулонных материалах

Внедренное типовое решение:
1С:CRM+1С:Комплексная автоматизация

Управление отношениями с клиентами (CRM) ...

Внедрение блока бухгалтерского учета «1С:Управление производственным предприятием»
ОАО «Издательство «Просвещение»

Отрасль:
Производство

Внедренное типовое решение:
1С:Управление производственным предприятием

Бухгалтерский учет:
- Завершение периода;
- Регламентированная отчетнос...

ООО "НЦКТ"
ООО "НЦКТ"

Отрасль:
Профессиональные услуги

Внедренное типовое решение:
1С:Управление нашей фирмой 8 ПРОФ

Взаиморасчеты с покупателями
Автоматизация бизнес-процессов...

Внедрение ПП "1С:Бухгалтерия 8 ПРОФ" в ООО Фирма «Бисер»
ООО фирма «Бисер»

Отрасль:
Производство

Внедренное типовое решение:
1С:Бухгалтерия 8 ПРОФ

Финансы, управленческий учет, мониторинг показателей:
- Налоговый учет...

Автоматизация учета на базе ПП "1С:Комплексная автоматизация 8" в ЗАО "Крюгер-Гранд"
ЗАО «Крюгер-Гранд»

Отрасль:
Производство

Внедренное типовое решение:
1С:Комплексная автоматизация

- Создание интерфейсов и наборов прав пользователей;
- Отражению временных ...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение