Внешняя обработка "Консоль запросов" для управляемого приложения
Механизм запросов - это один из способов доступа к данным, которые поддерживает платформа 1С:Предприятие. Используя этот механизм, разработчик может читать и обрабатывать данные, хранящиеся в информационной базе.
Условия, задаваемые в конструкции ВЫБРАТЬ
ВЫБРАТЬ ПЕРВЫЕ <количество>
- задает предельное количество строк в результате запроса (если нужно с конца - поменять упорядочиваниеУБЫВ
илиВОЗР
). Указывается на закладке "Дополнительно" конструктора запросов.ВЫБРАТЬ РАЗЛИЧНЫЕ
- исключение дублей в результате запроса (если в списке выборки указано несколько полей, то в результат запроса отбираются записи, содержащие неповторяющиеся комбинации значений сразу по нескольким полям). Указывается на закладке "Дополнительно" конструктора запросов - флаг "Без повторяющихся".ВЫБРАТЬ РАЗРЕШЕННЫЕ
— используется при применении ограничения прав пользователей на уровне записей (RLS). Использование данного ключевого слова позволяет избежать получения записей, прав на которых у пользователя нет. Если ограничение прав не используется - не применять, снижает быстродействие.
1 2 3 4 |
ВЫБРАТЬ Количество(*) КАК Всего, Количество(РАЗЛИЧНЫЕ ТоварыИУслуги.Номенклатура) ИЗ Документ.РасходнаяНакладная.ТоварыИУслуги КАК ТоварыИУслуги |
Количество всевозможных значений, отличных от NULL
, для некоторого поля в таблице:
КОЛИЧЕСТВО(<Имя поля>)
Для определения числа различных записей:
Неверно (выведет общее число записей):
Условия, задаваемые в конструкции ГДЕ
ГДЕ
- условия отбора данных из таблицы, причем поле конструкции ГДЕ может не входить в список выборки, например:
1 2 3 4 5 6 7 8 |
ВЫБРАТЬ ТоварыИУслуги.Номенклатура, ТоварыИУслуги.Цена ИЗ Документ.РасходнаяНакладная.ТоварыИУслуги КАК ТоварыИУслуги ГДЕ ТоварыИУслуги.Количество<100 И ТоварыИУслуги.Количество>50 ИЛИ ТоварыИУслуги.Количество МЕЖДУ 0 И 3 |
Особенности использования конструкции ГДЕ:
- В предложении
ГДЕ
можно использовать как имена полей, так и их псевдонимы. - Условие отбора может определяться и как простое логическое выражение, и как сложное, в котором простые логические выражения соединяются между собой логическими операторами
И
,ИЛИ
,НЕ
. Порядок можно менять с использованием круглых скобок. - Допускается использование оператора
МЕЖДУ
, который проверяет результат вхождения значения в указанный диапазон. - Допускается использование оператора
ПОДОБНО
для сравнения значения со строкой шаблона вида"%строка%"
. - Допускается использование параметров, которые обозначаются символом «&» (например, параметр
&Клиент
или&Цена
).
Особенности использования оператора ПОДОБНО
:
- может размещаться:
- в блоке условий, обозначенном ключевым словом
ГДЕ
; - в конструкции
Выбор Когда Тогда Иначе Конец
; - непосредственно в полях выборки, как результат сравнения полей;
- в блоке условий, обозначенном ключевым словом
- специальные символы, облегчающие разработку:
- «%»– последовательность любых символов произвольной длины, используется для поиска отдельных слов или цифр в строке;
- «_»– любой единичный символ для обозначения наличия одного знака;
- «[…]»– последовательность символов для сравнения со знаком в строке, проверяется соответствие любому из перечисленных в скобках знаков (можно задать диапазон цифр или букв - [а-г] или [1-7]);
- «[^…]» – шаблон, противоположный предыдущему, проверяется отличие указанного в строке символа от перечисленных в скобках.
Конструкция ВЫБОР (КОГДА … ТОГДА) ИНАЧЕ … КОНЕЦ
Для формирования поля выборки может использоваться операция выбора ВЫБОР (КОГДА … ТОГДА) ИНАЧЕ … КОНЕЦ
, в которой:
- после ключевого слова
КОГДА
записывается условие выбора; - после ключевого слова
ТОГДА
следует значение поля выборки в случае, если условиеКОГДА
истинно; - после слова
ИНАЧЕ
указывается значение, которое используется в качестве результата операции выбора в том случае, если ни одно из ранее указанных альтернативных условий выбораКОГДА
не было выполнено.
В общем случае в операции выбора может указываться неограниченное количество альтернативных одиночных выборов КОГДА … ТОГДА.