/// Как подлючиться к FTP серверу из 1с 8.3, 8.2
&НаКлиенте
Функция ПодключитьсяКFTPСерверу()
Соединение = Новый FTPСоединение(
"0.0.0.0", // адрес ftp сервера
21, // порт сервера
"user", // имя пользователя
"123", // пароль пользователя
Неопределено, // прокси не используется
Истина, // пассивный режим работы
0, // таймаут (0 - без ограничений)
Неопределено // незащищенное соединение
);
// Для случаев, когда у ftp сервера нет возможности
// обращаться к нам (мы находимся за межсетевым экраном)
// следует использовать пассивный режим работы.
Возврат Соединение;
КонецФункции
/// Как искать файлы по FTP из 1с 8.3, 8.2
&НаКлиенте
Процедура ПоискФайловПоFTP(Команда)
// Функция подключения определена выше.
Соединение = ПодключитьсяКFTPСерверу();
// Установим текущий каталог.
Соединение.УстановитьТекущийКаталог("/");
// Найдём конкретный файл по его полному адресу.
// Внимание! Используем прямые слеши.
НайденныеФайлы = Соединение.НайтиФайлы("/data/1.txt");
Если НайденныеФайлы.Количество() > 0 Тогда
Файл = НайденныеФайлы[0];
// и получим следующую информацию о нём:
Сообщить("Имя: " + Файл.ПолноеИмя);
Сообщить("Это файл: " + Файл.ЭтоФайл());
Сообщить("Это каталог: " + Файл.ЭтоКаталог());
Сообщить("Размер: " + Файл.Размер() + " байт");
Сообщить("Атрибут только чтение: " + Файл.ПолучитьТолькоЧтение());
Сообщить("Атрибут скрытый: " + Файл.ПолучитьНевидимость());
Сообщить("Атрибут время изменения: " + Файл.ПолучитьВремяИзменения());
КонецЕсли;
// Найдём все папки и файлы в корневом каталоге
НайденныеФайлы = Соединение.НайтиФайлы(
"/", // ищём в корневом каталоге
"*" // любые файлы (здесь можно задать маску)
);
Для Каждого Файл Из НайденныеФайлы Цикл
Сообщить(Файл.ПолноеИмя);
КонецЦикла;
// Найдём все файлы с расширением .txt в папке data
НайденныеФайлы = Соединение.НайтиФайлы(
"/data", // ищём в определенной папке
"*.txt" // по определенной маске
);
КонецПроцедуры
/// Как скачивать файлы по FTP из 1с 8.3, 8.2
&НаКлиенте
Процедура ПолучениеФайловПоFTP(Команда)
// Функция подключения определена выше.
Соединение = ПодключитьсяКFTPСерверу();
// Установим текущий каталог.
Соединение.УстановитьТекущийКаталог("/");
ПапкаДляСохранения = СлужебныйНаКлиенте.СоздатьПапкуДляЭкспериментов();
// Скачаем "trade_exchange/01.01.2017.xml"
// Внимание! Используем прямые слеши.
Соединение.Получить(
"trade_exchange/01.01.2017.xml", // что качаем
ПапкаДляСохранения + "/01.01.2017.xml" // куда качаем
);
Сообщить("Сохранили файл в " + ПапкаДляСохранения);
КонецПроцедуры
/// Как передавать файлы по FTP из 1с 8.3, 8.2
&НаКлиенте
Процедура ПередачаФайловПоFTP(Команда)
// Функция подключения определена выше.
Соединение = ПодключитьсяКFTPСерверу();
// Установим текущий каталог.
Соединение.УстановитьТекущийКаталог("/");
// Создадим случайный текстовый файл.
Папка = СлужебныйНаКлиенте.СоздатьПапкуДляЭкспериментов();
Служебный.СоздатьПроизвольныйТекстовыйФайл(
Папка + "/info.txt");
// Запишем этот файл на сервер по ftp в папку trade_exchange
// Внимание! Используем прямые слеши.
Соединение.Записать(
Папка + "/info.txt", // что записываем
"/trade_exchange/info.txt" // куда записываем
);
Сообщить("Передали файл по FTP.");
КонецПроцедуры
&НаКлиенте
Процедура ДругиеОперацииПоFTP(Команда)
// Функция подключения определена выше.
Соединение = ПодключитьсяКFTPСерверу();
// Установим текущий каталог.
Соединение.УстановитьТекущийКаталог("/");
/// Как создать новый каталог по FTP из 1с 8.3, 8.2
Соединение.СоздатьКаталог("/NewBin");
/// Как удалить каталог по FTP вместе с содержимым из 1с 8.3, 8.2
Соединение.Удалить("/trade_exchange");
/// Как удалить файлы по FTP из 1с 8.3, 8.2
Соединение.Удалить(
"/trade_exchange/01.01.2017.xml"
); // удаляем один файл по его адресу
Соединение.Удалить(
"/trade_exchange", // путь к удаляемым файлам
"*.xml" // маска для выбора
); // или несколько файлов поиском по маске
/// Как переименовать файл или каталог по FTP из 1с 8.3, 8.2
Соединение.Переместить(
"/NewBin", // старое имя
"/OldBin" // новое имя
);
КонецПроцедуры
Смотрите также:
Электронный учебник по программированию в 1С Рекомендации по изучению программирования 1С с нуля Игра "Кто хочет стать миллионером?" с вопросами на определенную тематику (язык программирования JavaScript, английские, немецкие, французские, испанские, португальские, нидерландские, итальянские слова, электробезопасность, промышленная безопасность, бокс и т.п.), написанная на 1С Программирование в 1С 8.3 с нуля - краткий самоучитель Комплексная подготовка программистов 1С:Предприятие 8.2 Сайты с уроками программирования и со справочниками Youtube-каналы с уроками программирования Сайты для обучения программированию Лекции и уроки