Работаем с FTP-сервером из «1С»::Журнал СА 5.2009
www.samag.ru
Льготная подписка для студентов      
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
О журнале
Журнал «БИТ»
Подписка
Где купить
Авторам
Рекламодателям
Магазин
Архив номеров
Вакансии
Контакты
   

Jobsora

ЭКСПЕРТНАЯ СЕССИЯ 2019


  Опросы

Какие курсы вы бы выбрали для себя?  

Очные
Онлайновые
Платные
Бесплатные
Я и так все знаю

 Читать далее...

1001 и 1 книга  
28.05.2019г.
Просмотров: 1826
Комментарии: 2
Анализ вредоносных программ

 Читать далее...

28.05.2019г.
Просмотров: 1887
Комментарии: 1
Микросервисы и контейнеры Docker

 Читать далее...

28.05.2019г.
Просмотров: 1446
Комментарии: 0
Django 2 в примерах

 Читать далее...

28.05.2019г.
Просмотров: 1066
Комментарии: 0
Введение в анализ алгоритмов

 Читать далее...

27.03.2019г.
Просмотров: 1636
Комментарии: 1
Arduino Uno и Raspberry Pi 3: от схемотехники к интернету вещей

 Читать далее...

Друзья сайта  

Форум системных администраторов  

sysadmins.ru

 Работаем с FTP-сервером из «1С»

Архив номеров / 2009 / Выпуск №5 (78) / Работаем с FTP-сервером из «1С»

Рубрика: Базы данных /  Изучаем «1С»

Андрей Луконькин

Работаем с FTP-сервером из «1С»

Столкнувшись с острой необходимостью получить довольно большой файл из удаленного офиса, я начал поиск программы для комфортной работы с FTP. Интерфейс FAR напомнил мне полузабытый DOS, Google предлагает в основном платные клиенты, из командной строки работать тоже не совсем удобно. Поэтому я задумался о создании собственного инструмента в той среде, в которой я работаю каждый день, т.е. в «1С».

Что нам нужно от обработки? Чтобы была возможность по указанному адресу, с заданным логином и паролем подключаться к FTP-серверу, смотреть список находящихся там файлов, получать необходимые файлы с сервера, и наоборот, закачивать туда что-то.

Создадим внешнюю обработку, а в ней реквизиты:

  •  «АдресFTP», «Логин», «Пароль», «КаталогДляПолученияФайлов», «ВыгружаемыйФайл» – тип «Строка» неограниченной длины;
  •  на форме разместим «ПолеСписка» с признаком «Отображатьпометку»;
  •  кнопки «Прочитать», «ЗагрузитьОтмеченные», «ОбновитьСписок» и «ВыложитьФайл».

Теперь перейдем непосредственно к программному коду.

Определим переменную «НашеСоединение», которая будет использоваться в нескольких процедурах.

Перем НашеСоединение;

При открытии формы убираем доступность всех кнопок до тех пор, пока не будет установлено соединение, и задаем каталог для получения файлов по умолчанию.

Процедура ПриОткрытии()

ЭлементыФормы.ЗагрузитьОтмеченные.Доступность = Ложь;

ЭлементыФормы.ВыложитьФайл.Доступность = Ложь;

ЭлементыФормы.ОбновитьСписок.Доступность = Ложь;

КаталогДляПолученияФайлов = "C:\";

КонецПроцедуры

После указания адреса, логина и пароля нужно нажать кнопку «Прочитать» для установки соединения. Список файлов заполнится при обращении к процедуре «ОбновитьСписок()».

Процедура ПрочитатьНажатие(Элемент)

ПроксиСервер = Новый ИнтернетПрокси(Истина);

Попытка

НашеСоединение = Новый FTPСоединение(АдресFTP, 21, Логин, Пароль , , );

Исключение

Сообщить("Ошибка создания соединения: "+ОписаниеОшибки());

Возврат;

КонецПопытки;

ЭлементыФормы.ЗагрузитьОтмеченные.Доступность = Истина;

ЭлементыФормы.ВыложитьФайл.Доступность = Истина;

ЭлементыФормы.ОбновитьСписок.Доступность = Истина;

ОбновитьСписок();

КонецПроцедуры

 

Процедура ОбновитьСписок()

ПолеСписка.Очистить();

СписокФайлов = НашеСоединение.НайтиФайлы("/","*.*");

Для Каждого Файл Из СписокФайлов Цикл

Если Файл.ЭтоФайл() Тогда

ПолеСписка.Добавить(Файл, Файл.Имя);

КонецЕсли;

КонецЦикла;

КонецПроцедуры

После подключения видим файлы на сервере

После подключения видим файлы на сервере

Отметив галочками нужные файлы, их можно сохранить локально в предварительно выбранный каталог.

Процедура КаталогДляПолученияФайловНачалоВыбора(Элемент, СтандартнаяОбработка)

СтандартнаяОбработка = Ложь;

РежимДиалога = РежимДиалогаВыбораФайла.ВыборКаталога;

ДиалогВыбораКаталога = Новый ДиалогВыбораФайла(РежимДиалога);

ДиалогВыбораКаталога.МножественныйВыбор = Ложь;

ДиалогВыбораКаталога.Заголовок = "Выберите путь для сохранения файлов";

Если ДиалогВыбораКаталога.Выбрать() Тогда

КаталогДляПолученияФайлов = ДиалогВыбораКаталога.Каталог;

КонецЕсли;

КонецПроцедуры

 

Процедура ЗагрузитьОтмеченныеНажатие(Элемент)

Для каждого Файл из ПолеСписка Цикл

Если Файл.Пометка Тогда

НашеСоединение.Получить(Файл.Значение.ПолноеИмя,КаталогДляПолученияФайлов+Файл.Значение.ПолноеИмя);

КонецЕсли;

КонецЦикла;

КонецПроцедуры

Для размещения файла на сервере нужно нажать кнопку «Выложить файл на FTP» и выбрать необходимый файл. Ответив «Да» в дополнительном подтверждении о размещении, мы инициализируем запуск процедуры «ВыложитьФайлНажатие()».

Процедура ВыложитьФайлНажатие(Элемент)

РежимДиалога = РежимДиалогаВыбораФайла.Открытие;

ДиалогВыбораФайла = Новый ДиалогВыбораФайла(РежимДиалога);

ДиалогВыбораФайла.МножественныйВыбор = Ложь;

ДиалогВыбораФайла.Заголовок = "Выберите файл для загрузки";

ДиалогВыбораФайла.ПолноеИмяФайла = ВыгружаемыйФайл;

Если ДиалогВыбораФайла.Выбрать() Тогда

ВыгружаемыйФайл = ДиалогВыбораФайла.ПолноеИмяФайла;

ВыгружаемыйФайлОбъект = Прав(ВыгружаемыйФайл,СтрДлина(ВыгружаемыйФайл)-СтрДлина(ДиалогВыбораФайла.Каталог));

Ответ = Вопрос("Выложить файл на FTP?",РежимДиалогаВопрос.ДаНет);

Если Ответ = КодВозвратаДиалога.Да Тогда

НашеСоединение.Записать(ВыгружаемыйФайл,ВыгружаемыйФайлОбъект);

ОбновитьСписок();

КонецЕсли;

ВыгружаемыйФайл="";

Иначе

ВыгружаемыйФайл="";

КонецЕсли;

КонецПроцедуры

 

Процедура ОбновитьСписокНажатие(Элемент)

ОбновитьСписок();

КонецПроцедуры

Перед отправкой файла на сервер запросим подтверждение

Перед отправкой файла на сервер запросим подтверждение

Что мы имеем? Нехитрая, в несколько десятков строчек, обработка позволяет принимать файлы и отправлять их на FTP-сервер.

Цель нами достигнута, остается только совершенствовать программу, наращивая её дополнительным функционалом.

Приложение

Наше «1С». Собрание авторских материалов

В апреле 2009 года открылся новый проект «Наше 1С» по адресу http://www.nashe1c.ru. Здесь собираются авторские материалы, относящиеся к программному продукту «1С». Каждый желающий может опубликовать свою разработку, поделиться с коллегами методиками, получив при этом оценку своего творчества или «know how».

Чем примечателен этот портал и в чем его принципиальное отличие от множества существующих сайтов на данный момент? Во-первых, этот проект создан и курируется самой фирмой «1С», что говорит об уровне и масштабе мероприятия. Во-вторых, работы оценивают не только пользователи, но и представители фирмы «1С» оставляют оценки и комментарии. В-третьих, материалы предварительно отбираются и фильтруются таким образом, что посетители избавляются от некачественных «изобретений».

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

В открытом доступе любой посетитель может найти что-то полезное из следующих рубрик:

  • «Работа с программами»;
  • «Установка, администрирование»;
  • «Разработка и программирование»;
  • «Внедрение»;
  • «Библиотека дипломных проектов»;
  • «Программы «1С:Предприятие 7.7».

Сейчас на сайте уже десятки опубликованных работ, с каждым днем их количество увеличивается, а это значит, что уникальная коллекция высококачественного материала собирается в одном месте и будет доступна любому желающему.


Комментарии отсутствуют

Добавить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-41
Fax: (499) 277-12-45
E-mail: sa@samag.ru