Запросы в 1С

Без комментариев 948 Views

Запрос в 1С

Основные понятия.

      Язык запросов СУБД (система управления базами данных) необходим пользователям для извлечения из базы данных информации об объектах, выбранных в заданном объеме, по заданным критериям, отсортированным в заданном порядке и тп.

   База данных — некий набор таблиц с данными, которые могут быть связаны между собой.

   Запрос — это одно предложение языка запросов.

     Платформа «1С:Предприятие 8» также имеет развитый язык запросов, сравнимый с языками запросов самых мощных СУБД от мировых разработчиков. Однако, при этом язык в 1С содержит дополнительные расширения, необходимые для отражения специфики финансово-экономических задач.

 Язык запросов 1С основан на SQL и похож на SQL, вплоть до прямого заимствования лексических конструкций из этих языков. Более того, очень важно знать, что

Платформа «1С:Предприятие 8» интерпретирует код запроса 1С в SQL запрос

 Отметим особенности языка запросов платформы «1С:Предприятие 8»:

  • в отличие от SQL не может вносить изменения в базу данных (нет операторов INSERT, DELETE и UPDATE).
  • ключевые слова запроса могут быть представлены в двух вариантах написания: русском и английском.
  • требует соблюдения строгого порядка следования секций запроса.
  • является непроцедурным, то есть не имеет операторов цикла и ветвления.
  • обращение к подчиненным полям через точку.

     Конструктор запросов — основной инструмент визуального программирования запросов 1с, встроенный в систему 1С:Предприятие.

Пример использования языка запросов.

Разберем простейший запрос к базе данных на примере справочника Номенклатура. Конечно же, состав реквизитов справочника весьма условен и может быть далек от реальной практики.

     Итак, попробуем сформулировать суть нашего 1с запроса к базе: выбрать все элементы справочника Номенклатура с полным составом полей, за исключением групп, и упорядочить их по наименованию номенклатуры.

     Выделим обязательные элементы, из которых состоит наш запрос:

  • Текст запроса начинается с ключевого слова ВЫБРАТЬ;
  • После слова ВЫБРАТЬ обязательно указывается список полей выборки, представляющий собой имена полей таблицы-источника данных, разделенных запятыми;
  • Таблица — источник данных задается после ключевого слова ИЗ;
  • Синтаксис имени таблицы строится по принципу: <имя класса прикладных объектов в единственном числе(кроме таблиц Констант)>.<имя объекта метаданных>.

Например:                                                               Синтаксическая форма запроса 1с;

  • Конструкции ГДЕ и УПОРЯДОЧИТЬ ПО хоть и не обязательны, но должные следовать в строго установленном порядке.

В поле Текст запроса введем наш текст и нажмем кнопку Выполнить:

Консоль запросов

 

 

Поле Результат запроса в консоли запросов заполнится записями из справочника:

Пример данных консоли запросов

 

Дополнительные особенности языка запросов 1с.

 

  1. Во всех таблицах объектов ссылочного типа присутствует поле Ссылка, которое является ссылкой на описываемый объект и поле Представление, содержащее строковое представление объекта.
  2. В иерархических таблицах объектов есть поле Родитель. 
  3. В подчиненных справочниках наверняка будет добавлено поле Владелец.
  4. С помощью предварительно указанных символов «//» в запрос можно добавлять комментарии для пояснения различных фрагментов запроса.
  5. С помощью оператора КАК можно, а иногда и нужно для однозначности выбора поля, присваивать псевдонимы полям и таблицам запроса.

В одной статье невозможно охватить все стороны целого языка запросов. Отдельного рассмотрения требуют такие темы как:

  • Использование встроенных функций получения значения и манипулирования значениями.
  • Соединение данных из нескольких таблиц
  • Вложенные запросы
  • Виртуальные таблицы
  • Запросы из таблицы значений
  • Пакетный запрос.

Об авторе

Оставить комментарий

Ваш электронный адрес не будет опубликован. Обязательные поля с пометкой - необходимо