|
|
|
Как обойти новшевства в запросе платформы 1с 8.2?! | ☑ | ||
|---|---|---|---|---|
|
0
junior_senior
10.03.13
✎
19:52
|
Доброе время суток!
Столкнулся с ситуацией, которая раньше не имела смысла, а именно обязательное добавление поля в запросе, если по нему необходимо сделать сортировку. В принципе, фирма 1С регламентировала использование данного условия, и этим допущением можно пренебречь, если не делать группировку по полям. Но у меня как раз такая ситуация. Тоже самое, но другими словами)) Произвожу сортировку по полю "Дата", но мне категорически не надо, чтобы данное поле попадало в группировку по полям (на ряду с этим полем обязательно должны группироваться другие поля) Если я исключаю его из полей, то выдаёт закономерную запись "Поле не входит в группу". Есть ли какие-нибудь пути обхода данной ситуации, или после получения выборки по запросу удалять ненужные строки? Заранее благодарен за любой ответ. На всякий случай текст запроса: ВЫБРАТЬ ВложенныйЗапрос.Склад, ВложенныйЗапрос.Номенклатура, СУММА(ВложенныйЗапрос.Остаток) КАК Остаток, ВложенныйЗапрос.Артикул, СУММА(ВЫБОР КОГДА СебестоимостьТоваров.Количество = 0 ТОГДА 0 ИНАЧЕ СебестоимостьТоваров.Стоимость / СебестоимостьТоваров.Количество КОНЕЦ) КАК Цена, СебестоимостьТоваров.Регистратор.Дата ИЗ (ВЫБРАТЬ ТоварыКОформлениюИзлишковНедостачОстатки.Склад КАК Склад, ТоварыКОформлениюИзлишковНедостачОстатки.Номенклатура КАК Номенклатура, СУММА(ТоварыКОформлениюИзлишковНедостачОстатки.КОформлениюАктовОстаток) КАК Остаток, ТоварыКОформлениюИзлишковНедостачОстатки.Номенклатура.Артикул КАК Артикул ИЗ РегистрНакопления.ТоварыКОформлениюИзлишковНедостач.Остатки(, Склад = &Склад) КАК ТоварыКОформлениюИзлишковНедостачОстатки ГДЕ ТоварыКОформлениюИзлишковНедостачОстатки.КОформлениюАктовОстаток < 0 СГРУППИРОВАТЬ ПО ТоварыКОформлениюИзлишковНедостачОстатки.Номенклатура, ТоварыКОформлениюИзлишковНедостачОстатки.Склад, ТоварыКОформлениюИзлишковНедостачОстатки.Номенклатура.Артикул) КАК ВложенныйЗапрос ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.СебестоимостьТоваров КАК СебестоимостьТоваров ПО ВложенныйЗапрос.Склад = СебестоимостьТоваров.АналитикаУчетаНоменклатуры.Склад И ВложенныйЗапрос.Номенклатура = СебестоимостьТоваров.АналитикаУчетаНоменклатуры.Номенклатура СГРУППИРОВАТЬ ПО ВложенныйЗапрос.Номенклатура, ВложенныйЗапрос.Артикул, ВложенныйЗапрос.Склад, СебестоимостьТоваров.Регистратор.Дата УПОРЯДОЧИТЬ ПО СебестоимостьТоваров.Регистратор.Дата УБЫВ |
|||
|
1
GANR
10.03.13
✎
19:57
|
А обернуть запрос (1) во вложенный запрос, в котором все сгруппировано так, как надо?
|
|||
|
2
mistеr
10.03.13
✎
19:57
|
Сортировка выполнятся после группировки. Так что надо включать.
|
|||
|
3
mikecool
10.03.13
✎
20:15
|
(0) как ты себе представляешь сортировку по полю, которого нет в запросе?
|
|||
|
4
mikecool
10.03.13
✎
20:16
|
+3 и это не новшество, это скорее возврат к истокам скулевых запросов.
|
|||
|
5
Злобный Фей
10.03.13
✎
20:18
|
(2) Какая разница, до или после?
|
|||
|
6
junior_senior
11.03.13
✎
06:02
|
(1) GANR, если я его "оберну" во вложенной запрос, то это ничего не изменит, т.к. мне всё равно придётся в группировку добавлять сортировочное поле.
|
|||
|
7
junior_senior
11.03.13
✎
06:09
|
(4) В самую точку! Где-то я слышал, что данное построение запроса действительно более правильное, и похоже на скулевский язык, с которым к сожалению не очень-то знаком( Сложности не возникало, как в 7-ных, так и в 8-ных запросах, где я бы сделал сортировку по полю (в моём случае по полю "Дата"), а в группировку его бы не включил. И результат запроса меня полностью устроил. Видимо придётся фильтровать уже итоговую выборку(
p.s. мне ещё предстоит собрать камни, которые уже давно известны)) |
|||
|
8
junior_senior
11.03.13
✎
06:10
|
(2) Согласен со Злобным Феем, какая разница?
|
|||
|
9
kosts
11.03.13
✎
06:15
|
Делай 1С-кую группировку, правда получишь дерево, но это можно обойти.
|
|||
|
10
Defender aka LINN
11.03.13
✎
06:30
|
(9) Жесть какая...
(6) Что мешает добавить поле Минимум(Дата) и сортировать по нему? |
|||
|
11
mistеr
11.03.13
✎
12:22
|
(5) (8) Во-первых, после группировки меняется состав как строк, так и колонок (в общем случае), так что результат сортировки будет существенно разным. Во-вторых, операция группировки не сохраняет (в общем случае) порядок.
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |