Тип: Булево. Указывает, используется ли автоматическое упорядочивание результата запроса. Соответствует ключевому слову АВТОУПОРЯДОЧИВАНИЕ языка запросов.
Полное описание, параметры и ограничения
ЗапросВыбораСхемыЗапроса.Автопорядок (QuerySchemaSelectQuery.AutoOrder)
ЗапросВыбораСхемыЗапроса (QuerySchemaSelectQuery)
Автопорядок (AutoOrder)
Доступен, начиная с версии 8.3.5.
Использование:
Чтение и запись.
Описание:
Тип: Булево.
Указывает, используется ли автоматическое упорядочивание результата запроса. Соответствует ключевому слову АВТОУПОРЯДОЧИВАНИЕ языка запросов.
Доступность:
Сервер, толстый клиент, внешнее соединение.
Использование в версии:
Доступен, начиная с версии 8.3.5.
Методическая информация
Практические примеры
Разделить режим СКД и обычную схему запроса
Переключаем режим компоновки на собственном запросе без итогов. Недоступные в этом режиме свойства итогов не читаются; после возврата обычного режима выполняем запрос.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
В учебной обработке или общем модуле выполните каждый фрагмент отдельно на сервере. Все запросы используют только свои числа и параметры, без справочников, документов и регистров рабочей базы.
СхемаЗапроса редактирует структуру и формирует текст, а Запрос выполняет этот текст. Родительская схема должна оставаться в переменной, пока используются её дочерние объекты.
Не переносите полученные дочерние объекты между разными схемами и не обращайтесь к элементу после его удаления. Упражнения удаления работают только со своей структурой в памяти.
Схема = Новый СхемаЗапроса;
Схема.УстановитьТекстЗапроса("ВЫБРАТЬ 3 КАК Количество, 250 КАК Цена");
Если Схема.ПакетЗапросов.Количество() <> 1 Тогда
ВызватьИсключение "Ожидался один собственный запрос";
КонецЕсли;
Выбор = Схема.ПакетЗапросов.Получить(0);
Если ТипЗнч(Выбор) <> Тип("ЗапросВыбораСхемыЗапроса") Тогда
ВызватьИсключение "Первый собственный запрос не является выборкой";
КонецЕсли;
Схема.РежимКомпоновкиДанных = Истина;
Сообщить(Схема.РежимКомпоновкиДанных);
Сообщить(Выбор.Колонки.Количество() = 2);
Схема.РежимКомпоновкиДанных = Ложь;
Выбор.Автопорядок = Ложь;
Выбор.ВыбиратьРазрешенные = Ложь;
Сообщить(Не Схема.РежимКомпоновкиДанных);
Сообщить(Не Выбор.ОбщиеИтоги);
Сообщить(Не Выбор.Автопорядок И Не Выбор.ВыбиратьРазрешенные);
Сообщить(Выбор.ТаблицаДляПомещения = "" И Выбор.ТаблицаДляДобавления = "");
Запрос = Новый Запрос(Схема.ПолучитьТекстЗапроса());
Таблица = Запрос.Выполнить().Выгрузить();
Если Таблица.Количество() <> 1 Тогда
ВызватьИсключение "Ожидалась одна собственная строка";
КонецЕсли;
Сообщить(Таблица[0].Количество * Таблица[0].Цена = 750);Разбор по шагам
Исходный запрос содержит свои два числовых поля и не имеет выражения ИТОГИ.
РежимКомпоновкиДанных=Истина меняет режим схемы. ОбщиеИтоги, КонтрольныеТочкиИтогов и ВыраженияИтогов в нём недоступны и в этом участке не читаются.
Возвращаем Ложь до обращения к ОбщиеИтоги. У своего запроса без ИТОГИ ожидаем Ложь.
Автопорядок и ВыбиратьРазрешенные выключаются только в собственном запросе констант. Это не инструкция отключать ограничения доступа в рабочих запросах.
Пустые имена временных таблиц показывают, что запрос не выполняет ПОМЕСТИТЬ или ДОБАВИТЬ. Выполненная строка по-прежнему даёт 750.
Как проверить результат
Семь сравнений Истина.
Чтение ОбщиеИтоги идёт только после выключения режима СКД; скрытые итоговые коллекции не затрагиваются.
Ожидаемый результат
Разобраны режим схемы и отдельные флаги выборки без неверного доступа к итогам.
На что обратить внимание
РежимКомпоновкиДанных не превращает объект в настройки или процессор СКД.
Ложь у ВыбиратьРазрешенные не означает включение привилегированного режима.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.