Общие сведения о внешних источниках данных в 1С и примеры строки соединения

В 8 версии программы 1С разработчики добавили в функционал возможность подключения сторонних баз данных и получения информации из них напрямую из конфигуратора, без использования COM  соединений и OLE объектов. Эта возможность реализована при помощи нового объекта – «Внешних источников данных»

Внешние источники данных в 1С можно использовать так же, как и остальные таблицы системы:

  1. При создании отчетов и расчетов с помощью системы компоновки данных (СКД);
  2. Для получения ссылок на информацию, хранящуюся в сторонних источниках;
  3. Для изменения хранящихся в таблицах данных;
  4. При формировании запросов.

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

Создание нового источника

Добавление нового внешнего источника в программу происходит в режиме «Конфигуратора». В дереве конфигурации есть соответствующая ветка (Рис.1)

Рис. 1

Попотеть при создании нового источника придется, несмотря на то, что форма нового объекта имеет всего четыре закладки:

  1. Основные;
  2. Данные;
  3. Функции;
  4. Права.

Первая закладка имеет только один интересный параметр – режим управления блокировкой. Если не задаваться вопросами о блокировании данных в транзакциях, о тонкостях распараллеливания информационных потоков можно оставить этот параметр в режиме автоматической блокировки. Однако подобный подход может привести к появлению избыточных ограничений (например, когда вместо отдельной записи программа заблокирует всю физическую таблицу, лишив остальных пользователей возможности работы с ней).

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

Установив в этом параметре значение «Автоматический и управляемый» мы предоставляем системе возможность определить, какой режим использовать, обратившись непосредственно к аналогичному свойству каждой конкретной таблицы.

 Закладка «Данные» формы свойств внешнего источника

Форма закладки «Данные» представлена на Рис. 2

Рис. 2

Здесь мы можем добавить таблицы внешнего источника и кубы. Добавлять таблицу можно двумя способами:

  1. Вручную, тогда перед нами откроется форма добавления таблицы (Рис. 3);

Рис. 3

  1. Либо выбрать из списка физических таблиц источника (Рис. 4), в этом случае перед нами открывается специальный конструктор.

Рис. 4

Рассмотрим подробнее форму добавления таблицы. Свойство «Имя» служит для однозначной идентификации объекта в конфигурации.

Сопоставление объекта метаданных и конечной физической таблицы происходит через свойство «Имя в источнике данных», расположенном на закладке «Дополнительно» (Рис. 5)

Рис. 5

Дальше мы должны определить тип таблицы, точнее её объектность. Если данные, хранимые в структуре можно однозначно идентифицировать через какое-либо одно поле, таблица – может быть объектной. Если индивидуальность записи определяется набором ключевых полей – таблица должна иметь необъектный тип.

Сравнивая такие таблицы с другими объектами метаданных можно привести следующую аналогию:

  • Объектные таблицы – это справочники;
  • Необъектные – это регистры сведений.

Набор ключевых полей определяется в следующем параметре формы («Поля ключа»). Это поле обязательно к заполнению, если оставить его пустым, сохранение конфигурации завершится ошибкой.

Как видно из Рис.5, некоторые поля и кнопки формы недоступны для изменения:

  • Выражение в источнике данных;
  • Тип данных таблицы;
  • Поле представления;
  • Обработчики представления.

Их можно будет использовать только после того, как мы заполним поля таблицы, определив их тип и задав им идентификаторы (Рис. 6)

Рис. 6

Здесь следует обратить внимание на параметр «Разрешить Null», если установлен этот флажок, такое поле нежелательно использовать в качестве ключа.

Конструктор таблиц

Пожалуй, самым важным и интересным моментом в работе с внешними источниками является создание строки подключения. Её конструктор открывается, если нажать кнопку с тремя точками у параметра «Строка соединения».

В первую очередь нам предложат определиться с драйвером, который будет использоваться для подключения (Рис. 7)

Рис. 7

Неправильное определение этого параметра не позволит подключиться к сторонней информационной базе. Также следует понимать, что не все указанные в выпадающем списке драйвера могут быть использованы для автоматического формирования строки соединения. Если платформа выдала ошибку (Рис. 8), то строку соединения придется прописывать вручную.

Рис.8

Для SQL драйвера, нажатие на кнопку «Далее» открывает следующую форму (Рис. 9)

Рис. 9

Сама строка представляет собой жестко регламентированную конструкцию.

Пример строки подключения

Рассмотрим стороннюю базу данных, созданную в Microsoft Access и расположенную в корне диска D. Для подключения этой базы мы должны использовать соответствующий драйвер, но его выбор в конструкторе строки приводит к появлению ошибки Рис.8.

Самостоятельно пропишем параметры подключения.

Driver={Microsoft Access Driver (*.mdb)} – именно так выглядит первая часть строки. В фигурных скобках мы определили драйвер.

Для файлов Excel она будет иметь вид {Microsoft Excel Driver (*.xls)} , для экселевских файлов, созданных в офисе старше 2003, строка драйвера будет иметь вид {Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)}.

Отделив точкой запятой этот параметр от следующего, мы должны прописать адрес нашего хранилища (в нашем случае DBQ=D:\База данных1.mdb).

Сложив эти два параметра получим Driver={Microsoft Access Driver (*.mdb)};DBQ=D:\База данных1.mdb, записав этот параметр, получим доступ к внутренним структурам этой базы.

Для объекта «Внешний источник» мало просто создать его в конфигурации, его еще надо подключить и в режиме «Предприятия». Это можно сделать из меню «Все функции»->Внешние источники. При первом входе в нашу таблицу нам надо прописать ту же самую строку соединения уже в режиме «Предприятия».



Начался прием заявок на участие в конкурсе студенческих ИТ-проектов Imagine Cup 2018
С 15 января стартовал отборочный этап международного технологического конкурса студенческих проектов Imagine Cup 2018, который проводится при поддержке Microsoft ...
Фирма «1С» приглашает студентов принять участие в 1С:Соревнованиях
В январе-марте 2018 года фирма «1С» проводит очередные студенческие 1С:Соревнования – олимпиады по программированию и конкурсы по «1С:Бухгалтерии 8» и ...
Как разрабатывать на 1С и не быть "1С-ником"
В прогрессивном ИТ мире сложилось популярное мнение, что разработчики 1С - не совсем разработчики, и не совсем ИТ-шники в целом ...
Универсальный шаблон для отчета
Универсальный шаблон для отчета с использованием СКД на управляемых формах ...
Российский рынок серверов вырос за один квартал более чем на треть
По данным аналитического центра IDC, в III квартале 2017 года поставки серверов увеличились на 37,1% в количественном показателе и на ...
Капитализация Microsoft достигла рекордной отметки в 700 млрд долларов
В ходе торгов 16 января рыночная капитализация корпорации Microsoft впервые превысила отметку в 700 млрд долларов. Microsoft стала третьей компанией ...
Российские процессоры «Байкал» поступят в розницу по сниженной цене
Отечественный разработчик микропроцессоров «Байкал Электроникс» запустит в первом квартале 2018 года продажи процессоров Baikal-T1 в розничных магазинах ...
Повышающий коэффицент
НК РФ разрешает применять к норме амортизации ОС специальный коэффициент (не выше двух) в отношении объектов (с 01.01.2018 за исключением ...
Джон фон Нейман

УСН

УСН
Любое имущество рано или поздно придется ремонтировать, основные средства не исключение. Если упрощенец выбрал объект обложения "доходы минус расходы", он ...
Тест 1С:Управление торговлей 8 (ред. 11.2)  - 10 вопросов от 18.1.2018
Проверь свои профессиональные навыки по программе "1С:Управление торговлей 8 (ред. 11.2)". Пройди тест! Всего 10 вопросов:При обмене с банком в ...
Тест 1С:Документооборот 8 (Ред. 2.0)  - 7 вопросов от 18.1.2018
Проверь свои профессиональные навыки по программе "1С:Документооборот 8 (Ред. 2.0)". Пройди тест! Всего 7 вопросов:После выполнения команд Проверить или Проверить ...
Тест 1С:Зарплата и управление персоналом 8 (Ред. 3.1)  - 5 вопросов от 18.1.2018
Проверь свои профессиональные навыки по программе "1С:Зарплата и управление персоналом 8 (Ред. 3.1)". Пройди тест! Всего 5 вопросов:Расчет удержания из ...
Тест 1С:ERP Управление предприятием (Ред. 2.2)  - 7 вопросов от 18.1.2018
Проверь свои профессиональные навыки по программе "1С:ERP Управление предприятием (Ред. 2.2)". Пройди тест! Всего 7 вопросов:Если при построении графика производства ...
Тест 1С:Бухгалтерия 8.3  - 7 вопросов от 18.1.2018
Проверь свои профессиональные навыки по программе "1С:Бухгалтерия 8.3". Пройди тест! Всего 7 вопросов:В программе 1С:Бухгалтерия 8 дополнительные расходы, включаемые в ...
Тест Платформа 1С:Предприятия 8  - 7 вопросов от 18.1.2018
Проверь свои профессиональные навыки по программе "Платформа 1С:Предприятия 8". Пройди тест! Всего 7 вопросов:При программном создании фабрики XDTO, типы в ...