Skip to content
Dmitry Makarov edited this page Apr 22, 2024 · 18 revisions

Функции YellowQuery

Для использования в формулах доступны следующие функции.

Функция YQ

Функция возвращает результат выполнения запроса на языке 1С:Предприятие 8. Если результат запроса не содержит строк или содержит одну колонку и строку, результат выводится в виде обычного значения, в остальных случаях - в виде массива. Начиная с Excel версии 2021, массив автоматически переносится в смежные ячейки. В ранних версиях Excel область ячеек для вывода массива задается вручную.

Синтаксис

YQ(Base; QueryText[; Params])

Например:

=YQ("e1c://filev/o/Tests/ib";"выбрать первые 1 спр.наименование из справочник.контрагенты как спр где спр.ИНН = &ИНН";"ИНН";"1234567890")
=YQ("e1c://server/MyServer/MyBase";"выбрать спр.ссылка, спр.наименование из справочник.пользователи как спр")
Имя аргумента Описание
Base (обязательный) Навигационная ссылка информационной базы 1С, к которой выполняется запрос. Например, для файловой базы - e1c://filev/с/Path/To/My/Base, для клиент-серверного варианта - e1c://server/MyServer/MyBase
QueryText (обязательный) Текст запроса на языке 1С. Например, выбрать первые 10 спр.наименование из справочник.пользователи как спр
Params Произвольное число параметров запроса. Параметры задаются парами имя;значение.

Особенности обработки параметров запроса

  • Поддерживается произвольное количество пар имя; значение.
  • Имена параметров должны быть корректными идентификаторами 1С.
  • В качестве значений параметров возможно указывать строки, числа, даты, булево, ссылки на объекты и элементы перечислений.
  • Также поддерживаются параметры-массивы и таблицы значений.
Использование массивов и таблиц значений в качестве параметров
  • Массивы задаются в виде прямоугольных областей ячеек одиночной ширины или высоты.
  • Таблицы значений задаются в виде прямоугольных областей ячеек. Первая строка области должна содержать имена колонок таблицы. Имена колонок должны быть корректными идентификаторами 1С. В области должно быть две или больше колонок. Таблица с одной колонкой будет воспринята как массив.
  • В запросе таблицы значений доступны как временные таблицы по имени параметра.

Демо

Обычный запрос

YQ-01c

Запрос с параметром-массивом

YQ-02c

Запрос с параметром-таблицей значений

YQ-03c

Функция REFA

Функция получает значение реквизита ссылки.

Синтаксис

REFA(Reference; AttributeName)

Например:

=REFA("e1c://filev/o/Tests/ib#e1cib/data/Справочник.Контрагенты?ref=979a50ebf628462e11eedfb52fb803ac";"Код")
Имя аргумента Описание
Reference (обязательный) Внешняя навигационная ссылка объекта, значение реквизита которого требуется получить
AttributeName (обязательный) Имя реквизита объекта, значение которого требуется получить

Демо

REFA-01c

Функция REFP

Функция получает представление ссылки.

Синтаксис

REFP(Reference)

Например:

=REFP("e1c://filev/o/Tests/ib#e1cib/data/Справочник.Контрагенты?ref=979a50ebf628462e11eedfb52fb803ac")
Имя аргумента Описание
Reference (обязательный) Внешняя навигационная ссылка объекта, для которого требуется получить представление

Демо

REFP-01c