Метод Отправить (Send) <FTPСоединение>

Описание:

Отправляет файл со всеми изменениями на FTP-сервер, в корневую папку агента.

Синтаксис:

Отправить(<ПутьОбмена>, <ИмяФайла>)

Send(<ExchangePath>, <FileName>)

Параметры структуры:

ПутьОбмена (ExchangePath) путь на МУ, где находятся файлы обмена данными. Строковое значение.

ИмяФайла (FileName) наименование файла, который необходимо передать. Строковое значение.

Возвращаемые значения:

Значение "Истина" ("True"), если обмен запущен. Метод возвращает значение "Ложь" ("False"), если обмен не запущен.

Пример:

//В примере представлено использование методов Отправить (Send)и Получить (Receive).
//За отправку файла с данными из локальной базы на FTP-сервер отвечает функция Отправить(Send).
//За получение данных с FTP-сервера отвечает функция Получить (Receive).
//Для обработки событий окончания обмена и события обновления состояния обмена
//устанавливаются обработчики "ПриСобытии" и "ПриОкончании".
//В процессе соединения с FTP-сервером многократно вызывается функция "ПриСобытии"
//для информирования о текущем состоянии процесса соединения с FTP-сервером

Перем Файл;
Функция КнопкаОтправить_ПриНажатии()
    ОтладочноеСообщение("Начало отправки данных на сервер");
    Файл.Отправить(Файл.ПолучитьКаталогОбменаПоУмолчанию(), "ToFTP.lng"); //отправка файла
    Возврат 0;                                                            //на FTP-сервер
КонецФункции
 
Функция КнопкаПолучить_ПриНажатии()
    ОтладочноеСообщение("Начало получения данных с сервера");
    Файл.Получить(Файл.ПолучитьКаталогОбменаПоУмолчанию(), "FromFTP.lng"); //получение файла
    Возврат 0;                                                           //с FTP-сервера 
КонецФункции
 
Функция КнопкаОстановитьОбмен_ПриНажатии()
    Файл.ПрерватьОбмен(); //прерывание процесса отправки и получения данных
    Возврат 0;
КонецФункции
 
Процедура ПриСобытии(ТипСобытия, Результат)
    Если ТипСобытия = 0 Тогда
        ОтладочноеСообщение("Создание соединения с FTP сервером: " + Строка(Результат));
    КонецЕсли;
    Если ТипСобытия = 1 Тогда
        ОтладочноеСообщение("Перед авторизацией на сервере: " + Строка(Результат));
    КонецЕсли;
    Если ТипСобытия = 2 Тогда
        ОтладочноеСообщение("Авторизация на сервере завершена: " + Строка(Результат));
    КонецЕсли;
    Если ТипСобытия = 3 Тогда
        ОтладочноеСообщение("Начало передачи данных: " + Строка(Результат));
    КонецЕсли;
    Если ТипСобытия = 4 Тогда
        ОтладочноеСообщение("Окончание передачи данных: " + Строка(Результат));
    КонецЕсли;
    Если ТипСобытия = 5 Тогда
       ОтладочноеСообщение("Разрыв соединения с FTP сервером: " + Строка(Результат));
    КонецЕсли;
КонецПроцедуры
 
Процедура ПриОкончании(Направление, ТипСобытия)
    Если Направление = 1 Тогда
        ОтладочноеСообщение("Направление обмена: скачивание с FTP сервера");
    Иначе
        ОтладочноеСообщение("Направление обмена: отправка на FTP сервер");
    КонецЕсли;
    Если ТипСобытия = 0 Тогда
        ОтладочноеСообщение("Ошибки нет");
    КонецЕсли;
    Если ТипСобытия = 1 Тогда
        ОтладочноеСообщение("Истекло время ожидания (таймаут)");
    КонецЕсли;
    Если ТипСобытия = 2 Тогда
        ОтладочноеСообщение("Ошибка сокета");
    КонецЕсли;
    Если ТипСобытия = 3 Тогда
        ОтладочноеСообщение("Ошибка соединения");
    КонецЕсли;
    Если ТипСобытия = 4 Тогда
        ОтладочноеСообщение("Ошибка");
    КонецЕсли;
    Если ТипСобытия = 5 Тогда
        ОтладочноеСообщение("Не найден файл на МУ");
    КонецЕсли;
    Если ТипСобытия = 6 Тогда
        ОтладочноеСообщение("Прервано пользователем");
    КонецЕсли;
    Если ТипСобытия = 7 Тогда
        ОтладочноеСообщение("Ошибка авторизации");
    КонецЕсли;
    Если ТипСобытия = 8 Тогда
        ОтладочноеСообщение("Нет данных на сервере");
    КонецЕсли;
КонецПроцедуры
 
Файл = Новый("FTPСоединение", "192.168.0.37", 21, "agentp2", "1111", true, 10000);
ОтладочноеСообщение(Файл.ПолучитьКаталогОбменаПоУмолчанию());
Файл.УстановитьПриСобытииСостояния(ПриСобытии);
Файл.УстановитьПриОкончании(ПриОкончании);
Файл.УстановитьРазмерБуфера(16*1024);