Содержание:
1. Что такое язык запросов 1С 8.3?
2. Основные операторы языка запросов
3. Использование языка запросов 1С: Предприятие
1. Что такое язык запросов 1С 8.3?
Язык запросов 1С 8.3 — это инструмент, который позволяет получать требующуюся информацию из базы данных, применяя различные условия и фильтры. Это один из основных инструментов для работы с информацией в 1С, и благодаря ему процесс обработки информации значительно ускоряется.
Синтаксис языка запросов 1С схож с синтаксисом языка SQL, по сути, он основан на нем, только используется на русском языке. Ниже в таблице перечислены основные операторы языка, соответствующие друг другу в обоих языках.
Для получения данных следует использовать ключевое слово Выбрать. Для выполнения запроса из программного кода необходимо пользоваться встроенным языком «Запрос».
Специальный инструмент для отладки запросов называется консоль запросов 1С: 8.3.
2. Основные операторы языка запросов
Оператор ВЫБРАТЬ в языке запросов 1С: Предприятие позволяет выбрать нужные поля из таблицы или их набора. В списке полей можно применять агрегатные функции 1С, а также вычисляемые поля.
Оператор ИЗ указывает таблицу или набор таблиц, из которых нужно выбрать данные. Можно использовать иные адреса (алиасы) для удобства обращения к таблицам.
Оператор ГДЕ позволяет задать условия для фильтрации данных. В условиях могут использоваться операторы сравнения (=, >, <, >=, <=), логические операторы (И, ИЛИ, НЕТ) и функции (МЕЖДУ, В).
Оператор СГРУППИРОВАТЬ ПО нужен для группировки данных по одному или нескольким полям. В результате получается общий список с агрегатными функциями 1С по каждой группе. Например, СГРУППИРОВАТЬ ПО Контрагенты.Наименование.
Оператор ИМЕЮЩИЕ позволяет фильтровать группы данных по условиям, заданным после группировки. В условиях можно добавлять агрегатные функции 1С.
Оператор УПОРЯДОЧИТЬ ПО используется для сортировки данных по одному или нескольким полям. Можно указывать направление сортировки (по возрастанию, по убыванию).
Оператор СОЕДИНЕНИЕ необходим для объединения таблиц по условиям. Могут применяться различные типы соединений (ВНУТРЕННЕ СОЕДИНЕНИЕ, ЛЕВОЕ СОЕДИНЕНИЕ, ПРАВОЕ СОЕДИНЕНИЕ).
Оператор ОБЪЕДИНИТЬ используется для интеграции результатов двух запросов в один список. Результаты должны иметь одну и ту же структуру (одинаковое количество и типы полей).
3. Использование языка запросов 1С: Предприятие
ВЫБРАТЬ Контрагенты.Наименование, Документы.Номер, Документы.Дата
ИЗ Документы
ВНУТРЕННЕ СОЕДИНЕНИЕ Контрагенты ПО Документы.Контрагент = Контрагенты.Ссылка
В этом запросе наименование контрагента 1С, номер и дата документа выбирается из таблицы Документы и затем присоединяется таблица Контрагенты по ссылке контрагента.
ВЫБРАТЬ Наименование
ИЗ Контрагенты
ОБЪЕДИНИТЬ
ВЫБРАТЬ Наименование
ИЗ Сотрудники
В данном запросе наименование контрагентов 1С выбирается из таблицы Контрагенты, наименование сотрудников из таблицы Сотрудники. Затем результаты объединяются в один список.
ВЫБРАТЬ Контрагенты.Наименование, Документы.Номер, Документы.Дата
ИЗ Документы
ВНУТРЕННЕЕ СОЕДИНЕНИЕ Контрагенты ПО Документы.Контрагент = Контрагенты.Ссылка
ГДЕ Документы.Дата >= '01.01.2021'
УПОРЯДОЧИТЬ ПО Документы.Дата по убыванию
В этом запросе выбирается наименование контрагента 1С, номер и дату документа из таблицы Документы, присоединяется таблица Контрагенты по ссылке контрагента, фильтруются данные по дате и сортируются по убыванию даты.
Важно уметь использовать основные операторы языка запросов и правильно формулировать условия и фильтры для получения нужной информации.
Специалист компании "Кодерлайн"
Марина Анапольская