Импорт из 1C:Предприятие 8.x
Компонент предназначен для импорта из базы данных 1С.
Важно: Для работы узла требуется предварительно создать подключение к платформе 1C:Предприятие 8.x и связать его с входным портом Подключение. Подключение происходит аналогично подключению с БД.
Порты
Входные порты
- Подключение — принимает параметры подключения к базе данных;
- Управляющие переменные (необязательный порт) — переменными можно задать значения параметров мастера настройки.
Выходные порты
- Импортированная таблица.
Мастер настройки
Мастер настройки содержит следующие параметры:
- Подключение – отображает строку подключения к источнику данных. Не доступна для редактирования;
- Текст запроса – поле ввода запроса к базе, определяющего структуру и содержание импортируемой таблицы. Поддерживается как кириллический синтаксис 1С, так и синтаксис SQL.
Кнопка Предпросмотр… позволяет оценить корректность запроса, отображая до 100 первых строк результирующей таблицы.
Применение параметров в запросах
Возможно использование параметров в запросах в синтаксисе 1С.
Пример 1.
ВЫБРАТЬ
КурсыВалют.Валюта.Код,
КурсыВалют.Валюта.Наименование,
КурсыВалют.Период КАК Период,
КурсыВалют.Курс,
КурсыВалют.Кратность
ИЗ
РегистрСведений.КурсыВалют КАК КурсыВалют
ГДЕ
КурсыВалют.Период МЕЖДУ &start_date И &end_date
УПОРЯДОЧИТЬ ПО
Период УБЫВ
В Примере 1 &start_date
и &end_date
– конструкции подстановки значений входных переменных start_date
и end_date
узла импорта. Если данные переменные не будут определены во входном порту узла импорта, то возникнет исключение. При использовании данной конструкции в запросе учитывается тип данных передаваемой переменной, он должен соответствовать типу данных, ожидаемых запросом 1С.
Особенностью применения данной конструкции подстановки является то, что в запрос через переменные могут передаваться значения только простых типов данных: логический, строковый, числовой, дата/время. Возможность получения и использования в запросах внутренних идентификаторов объектов добавлена в версии платформы 1С 8.3.22. Для версий платформы ниже 1С 8.3.22 передача в запрос внутренних объектных переменных 1С (например, объектов или ссылок справочников и документов) невозможна. Это необходимо учитывать при построении запросов.
Пример 2.
SELECT
Период, Номенклатура.Наименование, Количество
FROM
InformationRegister.КалендарныеПотребностиВНоменклатуре.SliceLast(&Date, Количество > &Count) AS Потребности
INNER JOIN
Catalog.Номенклатура
ON
Catalog.Номенклатура.Ссылка = Потребности.Номенклатура
WHERE %CONDITION%
В Примере 2 %CONDITION%
– конструкция подстановки значения входной переменной CONDITION
узла импорта. Конструкция %CONDITION%
в тексте запроса будет заменена на строковое значение переменной CONDITION
. Если переменная будет содержать значение: Номенклатура.Артикул = "4561"
, то результирующий запрос будет иметь вид:
SELECT
Период, Номенклатура.Наименование, Количество
FROM
InformationRegister.КалендарныеПотребностиВНоменклатуре.SliceLast(&Date, Количество > &Count) AS Потребности
INNER JOIN
Catalog.Номенклатура
ON
Catalog.Номенклатура.Ссылка = Потребности.Номенклатура
WHERE Номенклатура.Артикул = "4561"
Такая конструкция подстановки дает возможность динамически в ходе выполнения сценария формировать текст запроса.