#0
by Буратинко
В конструкторе запроса на закладке "Компоновка данных" можно указать поля для выбора пользователей в запрос. Причем эти поля можно выбирать только из уже выбранных полей на закладке "Таблицы и поля". Получается какое-то задвоение.... Причем сгенерированный запрос действительно эти поля содержит дважды: первый раз без фигурных скобок, а второй раз- с ними. В 8.1 Построитель отчета использовал подобные расширения, чтобы не выбирать лишних данных и поля указывались в тексте запроса только один раз в фигурных скобках. В чем смысл?
#3
by Kashemir
"Потом" чтобы знать как скомпоновать запрос выполнения при заданных настройках пользователя.
#5
by Буратинко
А что построитель отчета не мог скомпоновать без лишнего текста? а причем тут автозаполнение? Указывать свойства полей необходимо в любом случае (даже если они используются не всегда)
#6
by Kashemir
Если ты не будешь использовать директивы компоновки твой запрос будет выполнятся в полном "оригинальном" виде при любых настройках пользователя.
#7
by Буратинко
Это понятно. Вопрос в другом: зачем дублировать текст запроса? Ведь в построителе отчета такого не было.
#9
by Буратинко
может это ошибка? Ведь она дает выбирать только из полей, которые уже выбраны. А должна давать выбирать из всех полей таблиц указанных на закладке "Таблицы" закладки "Компановка данных"...
#11
by Kashemir
Под полный "дублированием запроса", если я тебя понял, подразумевается исключение выборки вложенной таблицы, в случае если ее поля не используются. Смотри в конструкторе запроса на закладке компоновки данный подзакладку таблицы и в ней обрати внимание на признак "обязательности".
#12
by Kashemir
Закладка выбранные поля позволяет назначать на каком уровне вложенности запроса то или другое поле можно убирать из выборки запроса, в случае если оно не используется.
#13
by Буратинко
Да нет, же. Почему сгенерированный текст запроса содержит оба поля: Валюта {Валюта} Ведь надо только (так было в построителе отчета): {Валюта}
#15
by Буратинко
Так ведь система компоновки и должна этим заниматься (с учетом настроек пользователя формировать обращение к БД). Зачем еще какие-то дополнительные настройки? В 1с создал справочник с двумя реквизитами и создал Отчет. Его Основная схема компановки данных содержит набор данных "запрос": SELECT Catalog1.Attribute1, Catalog1.Attribute2 AS Attribute2 {SELECT Attribute2} FROM Catalog.Catalog1 AS Catalog1 (То есть второй реквизит справочника добавлен в поля на закладке "компановка данных" построителя запроса, а первый- не добавлен). Открываю 1с и Profiler и строю отчеты: 1. Вывести детальные записи с обоими реквизитами: SELECT T1._Fld8, T1._Fld9 FROM _Reference7 T1 WITH(NOLOCK) 2. Вывести детальные записи ТОЛЬКО с полем 1: SELECT T1._Fld8 FROM _Reference7 T1 WITH(NOLOCK) 3. Вывести детальные записи ТОЛЬКО с полем 2: SELECT T1._Fld9 FROM _Reference7 T1 WITH(NOLOCK) Видно, что никаких лишних полей в запрос не попадает. Поэтому вопрос остается в силе: В чем смысл расширения языка запросов для СКД?
#17
by detec
Лично я заметил, что в отчётах конфигураций под управляемым приложением эта муть в фигурных скобках отсутствует. Не могу навскидку припомнить отчёт, где они используются.
#18
by Kashemir
В этом случае идет работа только с финальными полями, не участвующими в соединениях/условиях/расчетах вычисляемых/пользовательских полей/группировках - в данной ситуации очевидно оптимизатор запроса схемы может самостоятельно отбросить поля. Заверни этот же запрос во вложенный и поиграйся с директивами условной выборки на верхнем и вложенном уровне запроса.
#19
by Буратинко
что такое "директивами условной выборки на верхнем и вложенном уровне запроса"? И что такое "Заверни этот же запрос во вложенный"?
#21
by Буратинко
Действительно на закладке "Компановка данных", "Таблицы" конструктора запроса есть колонка "Номер группы", но единственное на что она влияет- возможность объединенения / разъединения обращения к таблицам. То есть, если номер группы одинаковый и вы обращаетесь к одной из таблиц, то автоматически будет произведено объединение основной таблицы со всеми таблицами ее группы.
#22
by Kashemir
1) Другими словами поля выборки в фигурных скобках 2) Вложенный запрос - Где почитать - не подскажу. Вот примеры запросов для эсперементов с настройками. Попробуй поиграться настройками и посмотреть на финальные запросы. Кстати - для схемы финальный запрос проще вытаскивать из собранного макета, чем ловить в профайлере ИЗ РегистрСведений.КурсыВалют.СрезПоследних КАК КурсыВалютСрезПоследних) КАК ВложенныйЗапрос
#23
by Kashemir
"но единственное на что она влияет- возможность объединенения / разъединения обращения к таблицам." ___________ Т.е. возможность отрезать часть вложенных запросов при ненадобности - это так мало ?
#24
by hhhh
там есть все поля и поля, которые доступны пользователю. Ну не настолько в 1С лохи, чтобы абсолютно все поля запроса вываливать пользователю на экран.
#25
by Буратинко
поиграюсь. я отвечал на Да, считаю, что это достаточно важное поле, но оно имеет не ту функциональность, что описано в не понятно. Так вы считаете, что расширение языка запросов для СКД- излишество или наоборот- крайне важная добавка?
#26
by Kashemir
Не следует путать опциальность присоединения целых таблиц и опциональную выборку конкретных полей таблицы.
#27
by le_
Кстати, по этому вопросу, похоже, вообще нет ничего в литературе. И никакой документации. Т.е., 1С придумала что-то, а все остальные должны догадываться, для чего это нужно...
#28
by Буратинко
Поигрался и вывод такой: опциональные поля имеет смысл использовать ТОЛЬКО во вложенных запросах (в этом случае с их помощью во вложенном запросе можно сократить количество выбираемых полей). То есть использование опциональных полей на самом верхнем уровне запроса- бессмысленное стесывание пальцев об клавиатуру. не путаю я только на диске ИТС в документации нашел сухую справку, что дескать вот так можно написать. Но ни для чего, ни последствий- ничего нет. (Хорошо я в свое время работал с 8.0. Поэтому знаю для чего фигурные скобки используют и, простите за выражение, произвел аналитическое продолжение фигурных скобок.
#29
by Буратинко
Поля запроса могут либо использоваться в соединениях, либо в качестве полей в вышестоящих секциях "ВЫБРАТЬ". Что сложного в определении нужно ли нам то или иное поле? Самое смешное, что если мы дадим подсказку: дескать это поле может быть не нужным, то программа вдруг поумнеет и все сделает. Тоже самое касается таблиц: еще можно было представить, что данное объединение используется не для получения полей, а для фильтрации исходной таблицы. Но ведь все объединения ЛЕВЫЕ! Что трудного в самостоятельном определении выборки полей из таблицы? Вот так и не понял этого функционала прикрученного сбоку.
#31
by Буратинко
Причем тут понимание? Когда реально платформа сама может все сделать без дополнительных глупых настроек.
#33
by le_
Может кто-нибудь привести пример простейшего запроса, в котором не обойтись без описанного выше?
#34
by Буратинко
думаю платформа не перерабатывалась, а развивалась примитивным дописыванием нового. Вот и получилось, что некоторые куски функционала стали взаимопротиворечивы. Хотя похоже разработчик не хочет тратить на это время.
#35
by acsent
Скобочки {} - это возможность задать список доступных полей (отборов) для пользователя. Остальное все - побочные эффекты
#36
by Буратинко
бред какой! хоть со скобочками, хоть без- все равно доступно. А ограничения устанавливаются для каждого поля отдельно в таблице "Поля"
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- В чем смысл отрицательных остатков РН "Товары на складах"?
- Avi-шка 4,5 Гб... Чем из нее сделать DVD или чем ее порезать?
- v8: В чем смысл СКД?
- СКД: СКД. Как переоределить действие кнопки "Сформировать" отчета, созданного в СКД?
- v7: В 1с типов полей dbf меньше чем в Visual Basic чем заменить необходимое поле?
- УПП. Документ "Отчет мастера смены" В чем смысл?
- Скидочные карты. Магнитные и чипованные. В чем смысл последних?
- расширение языка запросов в скд
- Чем менеджер записи РС лучше чем набор записей РС?
- Чем лучше 10.3 чем ТиС семерка
- В чем смысл свертки базы, подскажите.
- глючат расширения: БезопасныйРежим без флага безопасного режима у расширения.
В этой группе 1С
- пропадает доверие между доменами
- Замер производительности 1С
- Выбрать номенклатуру программно из определённой группы справочника
- Диаграмма в табличном документе
- v8: Проблема с тонким клиентом на 8.2
- Подскажите как преобразовать дату созданную через time в php в дату 1с?
- Панель меню Сервис(где калькулятор) как ее убрать совсем?
- нужна помощь с работой картинок
- Работа со строками в 1с 8.1
- Microsoft вынуждает российские школы отказываться от Linux?
- ЗиК: Состояние физлица после увольнения
- Печать PDF из хранилища
- 1crcrus.dll
- Программно изменить номер документа
- УПП реализация материалов проводки
- ЗУП неверно считает размер оплаты больничного
- ЗУП. Исчисление страховых взносов при переводе сотрудника в другоу организацию
- ЗиК Больничный во время отпуска
- Где хранятся наборы записей движений документа в базе
- Помогите. Запрос при выводе в Торг12 округляет количество мест, а мне этого ненадо