Доступ к данным через OLE DB 1. Класс «OLEDBData» Данный класс предназначен для осуществления подключения к источнику данных, с использованием провайдера OLE DB, и создания команд в контексте данного подключения. Экземпляр класса создается явным образом – функцией СоздатьОбъект(). Подключение к базам данных 1С формата DBF/SQL возможно только в разделенном режиме. Connect(стрСтрока) / Соединение(стрСтрока) – устанавливает подключение с указанным источником. В случае успешного подключения возвращает 1, иначе 0. Может вызвать исключение с описанием проблемы. +Параметры: -стрСтрока (Строка) – строка соединения формата OLE DB. Пример: oledb.Connect("Provider=VFPOLEDB.1;Deleted=Yes;Data Source=" + КаталогИБ() + ";Mode=ReadWrite;Extended Properties="";User ID="";Password="";Mask Password=False;Collating Sequence=RUSSIAN;DSN="""); CreateCommand() / СоздатьКоманду() – возвращает экземпляр класса «OLEDBCommand», в контексте которого будут выполняться sql-инструкций. Close() / Закрыть() – закрывает текущее подключение. 2. Класс «OLEDBCommand» Данный класс предназначен для получения данных от провайдера и манипулирования данными. Класс создается неявно (не может быть создан), а при помощи метода СоздатьКоманду(). В тексте sql-выражений допускается использование метаимен, которые транслируются в реальные имена таблиц, полей (см. спецификацию метаимен в Приложении А). Так же возможно использование типизирующего псевдонима. Формат типизирующего псевдонима: [<ИмяПоля> $<Тип1С>], где ИмяПоля – имя, которое будет доступно для обращения, Тип1С – строка представляющая тип 1С. Пример: SELECT SPR.ID as [Элемент $Справочник.Номенклатура] FROM $Справочник.Номенклатура as SPR Debug(чФлаг) / Отладка(чФлаг) – включает/отключает режим отладки sqlвыражения. При включенной отладке транслированное в реальные имена sqlвыражение будет выводиться в окно сообщений. По умолчанию класс находится в режиме с выключенной отладкой. +Параметры: -чФлаг (Число) – 1 = включить отладку, 0 = отключить отладку. Execute(стрSQL) / Выполнить(стрSQL) – выполняет sql-выражение (вида INSERT, UPDATE, DELETE) и возвращает количество обработанных строк. Метод может вызвать исключение с описанием ошибки +Параметры: -стрSQL (Строка) – строка, содержащая sql-выражение. ExecuteStatement(стрSQL) / ВыполнитьИнструкцию(стрSQL) – выполняет sqlзапрос и возвращает результат в виде Таблицы значений. Если результат запроса пустой, то возвращается Таблица значений с типизированными колонками. Метод может вызвать исключение с описание ошибки. +Параметры: -стрSQL(Строка) – строка, содержащая sql-запрос. Close() / Закрыть() – закрывает команду. Уничтожает объект класса «OLEDBCommand». SetTextParam(стрName, нVal) / УстановитьТекстовыйПараметр() – устанавливает текстовый параметр. Необходимо вызывать метод до передачи текста запроса. +Параметры: -стрName (Строка) – имя текстового параметра. -нVal (Неопределенный) – значение текстового параметра. Приложение: OLEDB Преобразование типов данных OLE DB к типам 1С: Прим. Число Тип 1С Дата Строка Тип OLE DB DBTYPE_NUMERIC DBTYPE_I2 DBTYPE_I4 DBTYPE_R4 DBTYPE_R8 DBTYPE_CY DBTYPE_DECIMAL DBTYPE_UI1 DBTYPE_I1 DBTYPE_UI2 DBTYPE_UI4 DBTYPE_I8 DBTYPE_UI8 DBTYPE_BOOL DBTYPE_DBDATE DBTYPE_DBTIMESTAMP DBTYPE_WSTR DBTYPE_EMPTY DBTYPE_NULL DBTYPE_DATE DBTYPE_BSTR DBTYPE_IDISPATCH DBTYPE_ERROR DBTYPE_VARIANT DBTYPE_IUNKNOWN DBTYPE_ARRAY DBTYPE_BYREF С обрезанием времени DBTYPE_GUID DBTYPE_VECTOR DBTYPE_RESERVED DBTYPE_BYTES DBTYPE_STR DBTYPE_UDT DBTYPE_DBTIME