- •Лекция 15
- •Текстовые файлы
- •Последовательный доступ к тексту
- •XBase (работа с dbf-файлами)
- •Запись dbf-файла
- •Чтение dbf-файла
- •Удаленные записи
- •Индексы
- •Запись xml
- •Чтение xml
- •Интернет-технологии Интернет-соединение
- •Поле html-документа
- •Электронная почта (e-mail)
- •Работа с ftp
- •Работа с операционной системой
- •Механизм Automation
- •Технология внешних компонент
- •Важные отличия от версии 7.7
Интернет-технологии Интернет-соединение
С помощью объекта ИнтернетСоединение можно устанавливать и разрывать соединение с провайдером через коммутируемые линии (модем). После установления соединения можно отправлять и принимать почту, обращаться к сайтам (веб-серверам) по протоколам HTTP/HTTPS и к РТР-серверам.
Для операций через эти протоколы можно также использовать процедуры и функции глобального контекста для работы с файлами, например, КопироватъФайл.
Поле html-документа
Элемент управления ПолеНТМLДокумента позволяет отобразить HTML-страницу. Это могут быть как локальные страницы, так и страницы из Интернета:
У данного элемента управления есть метод Перейти, который позволяет указать адрес страницы (URL) или HTML-макет, хранящийся в конфигурации.
Следующий фрагмент демонстрирует, как можно указать адрес сайта (веб-сервера) для данного элемента управления:
ЭлементыФормы.ПолеНТМLДокумента.Перейти("http://www.1с.ru");
Электронная почта (e-mail)
Для работы с электронной почтой в 1С:Предприятии 8.0 существуют следующие объекты:
• Почта,
• ПочтовоеСообщение,
• ПочтовыйАдрес,
• ПочтовоеВложение.
Полный список свойств и методов каждого объекта приведен в документации, а здесь мы покажем общую схему взаимосвязей между этими объектами:
Объект Почта имеет методы Выбрать и Послать. Первый метод возвращает массив объектов ПочтовоеСообщение, а второй метод принимает объект ПочтовоеСообщение в качестве параметра.
В объекте ПочтовоеСообщение поле Отправитель имеет тип ПочтовыйАдрес, а поля Получатели, Копии и СлепыеКопии являются коллекциями объектов ПочтовыйАдрес. Поле Вложения также является коллекцией объектов типа ПочтовоеВложение.
Следующий пример создает электронное письмо, присоединяет к нему два файла и отправляет его сразу двум адресатам:
Письмо = Новый ПочтовоеСообщение;
Письмо.Тема = "Тест";
Письмо.Текст = "Это тестовое письмо!";
Письмо.Получатели.Добавить{"myboss@company.ru");
Письмо.Получатели.Добавить("myfriend@company.ru");
Письмо.Вложения.Добавить("с:\test.txt");
Мелодия = Новый ДвоичныеДанные("с:\opera.mрЗ");
Письмо.Вложения.Добавить(Мелодия,"Опера.mрЗ");
Почта = Новый Почта;
Почта.Послать(Письмо)
Работа с ftp
Система 1С:Предприятие 8.0 имеет средства для работы с файлами по протоколу FTP. Можно подключаться к FTP-серверам, скачивать и закачивать файлы, переименовывать их, обращаться к их свойствам, создавать каталоги и т.д.
Ниже показан простой пример, в котором устанавливается соединение с FTP-сервером, скачивается один файл, а на его место помещается другой:
FТР = Новый FТРСоединение
("ftp://ftp.mysite.ru",21,"login","password");
FTP.УстановитьТекущийКаталог ("htdocs");
FТР.Получить("index.htm", "c:\old\index.htm");
FTP.Записать("с:\new\index.htm", "index.htm");
Работа с операционной системой
Система 1C:Предприятие 8.0, как и версия 7.7, позволяет выполнять команды операционной системы через командный интерпретатор и запускать внешние приложения. Для этого предназначены процедуры ЗапуститьПриложение и КомандаСистемы:
ЗапуститьПриложение
Выполняет запуск внешнего приложения либо открытие файла с использованием связанного с ним приложения.
КомандаСистемы
Вызывает на исполнение команду операционной системы, как если бы она была введена в командной строке. После загрузки приложения управление возвращается в 1С:Предприятие 8.0, и исполнение модуля продолжается.
СОМ-соединение
В новой версии 1С:Предприятия введен механизм СОМ-соединения для быстрого и надежного доступа к системе 1С:Предприятие 8.0 из других программ.
Следующий фрагмент на языке VB.Net устанавливает СОМ-соединение с 1 С:Предприятием 8.0, создает массив из 6 элементов (индексация начинается с 0), а также получает значение системного перечисления:
//внимание! фрагмент на языке VB.Net
Module Module1
Sub Main ()
Dim cc As Object 'это будет Com-connector
Dim con As Object
Dim o,o2 As Object
Dim e As Object
Dim str As String
Try
cc = CreateObject("V8.COMConnector")
con = cc.Connect ("File=c: /lcv8/mdcom;Usr=Главный")
о = con.NewObject("Массив", 5)
о.Set(0, "Item 0")
о.Set(1, "Item 1")
o.Set(2, "Item 2")
o.Set(3, "Item 3")
o.Set(4, "Item 4")
о.Set(5, "Item 5")
Dim с As Integer = o.Count()
For Each e In о
Console.WriteLine(e.ToString())
Next
o2 = con.ДопустимаяДлина.Переменная
str = con.ValueStr(o2)
Dim s As String = str
Catch ex As Exception
Console.WriteLine(ex)
End Try
con = Nothing
cc = Nothing
System.GC.Collect()
End Sub
End Module
Обратите внимание, что при таком варианте подключения к 1С:Предприятию 8.0 полностью отсутствует пользовательский интерфейс.
Важным моментом является то, что при установлении СОМ-соединения вместо модуля приложения используется модуль внешнего соединения. При этом в вызывающем приложении доступен для использования глобальный контекст 1C:Предприятия 8.0, включая переменные, процедуры и функции, объявленные в модуле внешнего соединения с ключевым словом Экспорт. Некоторые объекты не доступны в режиме внешнего соединения, о чем подробно написано в документации.
Аутентификация пользователя при СОМ-соединении может производиться через параметры строки соединения или средствами Windows. В любом случае у пользователя должно быть право «Внешнее соединение» (см. роли).