Слайд 2Условия.
Условные операторы.
Оператор ГДЕ.
Оператор ВЫБОР.
Параметры виртуальных таблиц.
Подзапросы.
Использование подзапроса в ИЗ.
Использование подзапроса в
![Условия. Условные операторы. Оператор ГДЕ. Оператор ВЫБОР. Параметры виртуальных таблиц. Подзапросы. Использование](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-1.jpg)
условии.
Итог.
Домашнее задание.
План занятия
Слайд 4Условия
Условия в запросе применяются в четырех местах:
Наиболее часто - после конструкции ГДЕ
![Условия Условия в запросе применяются в четырех местах: Наиболее часто - после](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-3.jpg)
в теле запроса;
В конструкции ВЫБОР КОГДА;
В параметрах виртуальных таблиц свойство Условие;
После слова ИМЕЮЩИЕ для условия над рассчитанными итогами агрегатных функций.
Слайд 6Условные операторы
В условиях применяются операторы:
Операторы сравнения:
>, <, =, <>, >=, <=;
В ()
![Условные операторы В условиях применяются операторы: Операторы сравнения: >, , >=, В](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-5.jpg)
- в массиве, параметре, вложенном запросе. Указываются в скобках после оператора В;
В ИЕРАРХИИ () - в группе справочника, плана видов характеристик. Указываются в скобках;
Подобно <шаблон> - сравнение строкового значения с шаблоном;
ССЫЛКА <ТИП> - проверка значения ссылочного типа;
Слайд 7Условные операторы
Оператор отрицания НЕ ставится перед выражением через пробел;
Логические операторы И, ИЛИ;
Это
![Условные операторы Оператор отрицания НЕ ставится перед выражением через пробел; Логические операторы](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-6.jpg)
не окончательный перечень. Указаны основные операторы.
Слайд 9Оператор ГДЕ
Конструкция ГДЕ:
Ограничивает выборку ;
Условие накладывается на поля выборки;
В запросе выполняется условие
![Оператор ГДЕ Конструкция ГДЕ: Ограничивает выборку ; Условие накладывается на поля выборки;](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-8.jpg)
после выборки данных для виртуальных таблиц. Из обычных условие применяется сразу.
сначала отработает срез на дату, потом выполнится условие -
Слайд 10Оператор ГДЕ
В конструкторе запросов определяется на вкладке “Условие”. Определяется двумя вариантами:
При установленном
![Оператор ГДЕ В конструкторе запросов определяется на вкладке “Условие”. Определяется двумя вариантами:](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-9.jpg)
значении реквизита “Произвольное” пишется текстом;
В обычном варианте - выбор поля, оператора сравнения и значения;
Слайд 12Оператор ВЫБОР
На примере выводится тип контрагента в зависимости от значения перечисления ЮридическоеФизическоеЛицо:
![Оператор ВЫБОР На примере выводится тип контрагента в зависимости от значения перечисления ЮридическоеФизическоеЛицо:](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-11.jpg)
Слайд 13Оператор ВЫБОР
Оператор ВЫБОР:
Используется для преобразования значения поля по условию;
Может находиться в
![Оператор ВЫБОР Оператор ВЫБОР: Используется для преобразования значения поля по условию; Может](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-12.jpg)
полях выборки, полях условий ГДЕ, группировок, итогов;
В конструкторе запросов определяется в зависимости от места использования (после ГДЕ - на вкладке Условия и т.д.);
Является универсальным оператором для сложных условий в запросе;
Ограничивает выборку только после оператора ГДЕ;
Допускает несколько подчиненных условий;
Слайд 14Оператор ВЫБОР
Конструкция оператора ВЫБОР:
ВЫБОР
КОГДА <ПроверяемоеВыражение> Тогда <ВыражениеЗамены_1>
ИНАЧЕ <ВыражениеЗамены_1>
КОНЕЦ
![Оператор ВЫБОР Конструкция оператора ВЫБОР: ВЫБОР КОГДА Тогда ИНАЧЕ КОНЕЦ](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-13.jpg)
Слайд 16Параметры виртуальных таблиц
Оперирование идет с полями таблиц (ресурсами, измерениями, реквизитами);
Обращение к полям
![Параметры виртуальных таблиц Оперирование идет с полями таблиц (ресурсами, измерениями, реквизитами); Обращение](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-15.jpg)
идет без точки;
Параметризация виртуальной таблицы ускоряет выборку. Заметно при больших объемах данных.
Слайд 17Параметры виртуальных таблиц
При наложении условия на ресурсы, например, при получении среза, в
![Параметры виртуальных таблиц При наложении условия на ресурсы, например, при получении среза,](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-16.jpg)
отличие от оператора ГДЕ в первую очередь выполняется условие, а во вторую - срез;
Слайд 18Параметры виртуальных таблиц
В конструкторе запросов на вкладке Таблицы и поля нажатием на
![Параметры виртуальных таблиц В конструкторе запросов на вкладке Таблицы и поля нажатием](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-17.jpg)
кнопку “Параметры виртуальной таблицы” для установки параметров. Для обычных таблиц эта кнопка не доступна;
Слайд 19Параметры виртуальных таблиц
В конструкторе запроса набор свойств отличается в зависимости от типа
![Параметры виртуальных таблиц В конструкторе запроса набор свойств отличается в зависимости от](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-18.jpg)
виртуальной таблицы. Основные и неизменные для всех - это:
Установка параметра для периода;
Определение условий;
Слайд 20Параметры виртуальных таблиц
Параметры для периода задаются вручную;
Условия формируются специальным конструктором , в
![Параметры виртуальных таблиц Параметры для периода задаются вручную; Условия формируются специальным конструктором](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-19.jpg)
котором - в левом верхнем окне перечислены поля, в правом - функции языка запросов, в нижнем - произвольное выражение. Перетаскиванием полей, функций и ручным редактированием произвольного выражения формируем условие.
Слайд 21Параметры виртуальных таблиц
Параметры задаются в источнике в круглых скобках;
На примере получаем выборку
![Параметры виртуальных таблиц Параметры задаются в источнике в круглых скобках; На примере](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-20.jpg)
последних цен на дату, указанную в параметре &ДатаНач и для номенклатуры, указанной в параметре &Номенклатура;
Слайд 23Подзапросы
Подзапрос - запрос, вызываемый внешним запросом:
Синтаксически заключается в круглые скобки;
Обязательно ему присваивается
![Подзапросы Подзапрос - запрос, вызываемый внешним запросом: Синтаксически заключается в круглые скобки;](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-22.jpg)
псевдоним;
Видит только себя, не видит внешний запрос (например, нельзя установить во вложенном запросе условие по значению поля внешнего запроса);
Слайд 24Подзапросы
Подзапрос может использоваться для получения отборов, группировок и агрегатных функций:
В конструкции ИЗ;
В
![Подзапросы Подзапрос может использоваться для получения отборов, группировок и агрегатных функций: В](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-23.jpg)
соединениях;
В условиях запроса со сравнением В() или В ИЕРАРХИИ ();
Возможность использования подзапроса в соединениях более подробно разберем на следующих занятиях.
Слайд 26Использование подзапроса в ИЗ
Подзапрос является источником для внешнего запроса в случае использования
![Использование подзапроса в ИЗ Подзапрос является источником для внешнего запроса в случае](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-25.jpg)
после оператора ИЗ;
На примере простое использование подзапроса получения контрагентов у которых не пустой ИНН;
Слайд 27Использование подзапроса в ИЗ
Подзапрос в случае использования после оператора ИЗ в конструкторе
![Использование подзапроса в ИЗ Подзапрос в случае использования после оператора ИЗ в](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-26.jpg)
запроса определяется на вкладке Таблицы и поля нажатием на кнопку “Создать вложенный запрос”;
Слайд 28Использование подзапроса в ИЗ
В конструкторе запросов открывается новое окно конструктора для построения
![Использование подзапроса в ИЗ В конструкторе запросов открывается новое окно конструктора для](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-27.jpg)
подзапроса;
Работа с конструктором создания подзапроса ничем не отличается от построения внешнего запроса;
После создания подзапроса в основном конструкторе создается подзапрос;
Слайд 29Использование подзапроса в условии
![Использование подзапроса в условии](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-28.jpg)
Слайд 30Использование подзапроса в условии
Подзапрос можно использовать в условиях;
Основное применение - используется в
![Использование подзапроса в условии Подзапрос можно использовать в условиях; Основное применение -](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-29.jpg)
операторах В(), В ИЕРАРХИИ();
В конструкторе запроса определяется в местах, где формируются условия.
В качестве условия вхождения он должен иметь столько полей, сколько значений проверяется, иначе появится ошибка. На примере будет выдана ошибка из-за того что в ВЫБРАТЬ используется 2 поля
Слайд 31Использование подзапроса в условии
В примере используем подзапрос в отборе для временной таблицы
![Использование подзапроса в условии В примере используем подзапрос в отборе для временной таблицы при получении цен;](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-30.jpg)
при получении цен;
Слайд 32Итог
Мы узнали:
Что такое условия в запросе, где они применяются, какие операторы используют,
![Итог Мы узнали: Что такое условия в запросе, где они применяются, какие](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-31.jpg)
как формируются в конструкторе запросов.
Что такое подзапросы и как использовать.
Мы научились:
Создавать условия, подзапросы в конструкторе запросов.
Изменять и анализировать измененный текст запроса.
Слайд 33Домашнее задание
Задача № 1 "Отбор номенклатуры при обновлении цен в документе Реализация":
Описание
![Домашнее задание Задача № 1 "Отбор номенклатуры при обновлении цен в документе](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-32.jpg)
задачи
Изменить процедуру для команды "Обновить цены" документа Реализация. Перечень номенклатуры получать не передачей элементов массива, а используя вложенный запрос к табличной части текущего документа.
Требования к результату
Выгрузка информационной базы (.dt) с конфигурацией из прошлого задания в котором внести изменения для получения перечня элементов номенклатуры вложенным запросом к табличной части документа Реализация.
Слайд 34Домашнее задание
Задача № 2 "Заполнение строк табличной части по отбору в документе
![Домашнее задание Задача № 2 "Заполнение строк табличной части по отбору в](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1174326/slide-33.jpg)
Реализация":
Описание задачи
Добавить команду "Заполнить строки" в табличной части документа Реализация. При заполнении добавить возможность отбора по номенклатурной группе и диапазону цен. Заполнять номенклатуру и цены из регистра Цены номенклатуры.
Требования к результату
Прикрепить .dt файл с внесенными изменениями по реализации заполнения табличной части документа Реализация из регистра сведений Цены номенклатура по отбору.