Имя: Пароль:
1C
1С v8
Подскажите с запросом, а то нет возможности проверить консолью
,
0 ultrannge89
 
18.06.15
14:12
Вот для запросов которые образуются путем объединения нескольких таблиц чтобы избавить от повторяющихся строк обязательно тащить в новую временную таблицу и оттуда группировать? Или можно все это до объединения сгруппировать?
Например такую шляпу:
                   |;
                   |
                   |////////////////////////////////////////////////////////////////////////////////
                   |ВЫБРАТЬ
                   |    ДляНеСовпНомГрупп.НомерПутевогоЛиста,
                   |    ДляНеСовпНомГрупп.ДатаДокумента,
                   |    ДляНеСовпНомГрупп.Автомобиль,
                   |    ДляНеСовпНомГрупп.ОбъектСтроительства,
                   |    ДляНеСовпНомГрупп.КоличествоРабот,
                   |    ДляНеСовпНомГрупп.ЦенаРабот,
                   |    ДляНеСовпНомГрупп.Номенклатура,
                   |    ДляНеСовпНомГрупп.Контрагент,
                   |    ДляНеСовпНомГрупп.ЦенаИзБазы,
                   |    ДляНеСовпНомГрупп.НоменклатурнаяГруппа
                   |ПОМЕСТИТЬ НомГруппыОбщие
                   |ИЗ
                   |    ДляНеСовпНомГрупп КАК ДляНеСовпНомГрупп
                   |
                   |ОБЪЕДИНИТЬ ВСЕ
                   |
                   |ВЫБРАТЬ
                   |    ДляСовпНомГруп.НомерПутевогоЛиста,
                   |    ДляСовпНомГруп.ДатаДокумента,
                   |    ДляСовпНомГруп.Автомобиль,
                   |    ДляСовпНомГруп.ОбъектСтроительства,
                   |    ДляСовпНомГруп.КоличествоРабот,
                   |    ДляСовпНомГруп.ЦенаРабот,
                   |    ДляСовпНомГруп.Номенклатура,
                   |    ДляСовпНомГруп.Контрагент,
                   |    ДляСовпНомГруп.ЦенаИзБазы,
                   |    ДляСовпНомГруп.НоменклатурнаяГруппа
                   |ИЗ
                   |    ДляСовпНомГруп КАК ДляСовпНомГруп
                   |;
                   |
                   |////////////////////////////////////////////////////////////////////////////////
                   |ВЫБРАТЬ
                   |    НомГруппыОбщие.НомерПутевогоЛиста,
                   |    НомГруппыОбщие.ДатаДокумента,
                   |    НомГруппыОбщие.Автомобиль,
                   |    НомГруппыОбщие.ОбъектСтроительства,
                   |    НомГруппыОбщие.КоличествоРабот,
                   |    НомГруппыОбщие.ЦенаРабот,
                   |    НомГруппыОбщие.Номенклатура,
                   |    НомГруппыОбщие.Контрагент,
                   |    НомГруппыОбщие.ЦенаИзБазы,
                   |    НомГруппыОбщие.НоменклатурнаяГруппа
                   |ИЗ
                   |    НомГруппыОбщие КАК НомГруппыОбщие
                   |
                   |СГРУППИРОВАТЬ ПО
                   |    НомГруппыОбщие.НомерПутевогоЛиста,
                   |    НомГруппыОбщие.ДатаДокумента,
                   |    НомГруппыОбщие.Автомобиль,
                   |    НомГруппыОбщие.ОбъектСтроительства,
                   |    НомГруппыОбщие.КоличествоРабот,
                   |    НомГруппыОбщие.ЦенаРабот,
                   |    НомГруппыОбщие.Номенклатура,
                   |    НомГруппыОбщие.Контрагент,
                   |    НомГруппыОбщие.ЦенаИзБазы,
                   |    НомГруппыОбщие.НоменклатурнаяГруппа";

Можно так?


                   |;
                   |
                   |////////////////////////////////////////////////////////////////////////////////
                   |ВЫБРАТЬ
                   |    ДляНеСовпНомГрупп.НомерПутевогоЛиста,
                   |    ДляНеСовпНомГрупп.ДатаДокумента,
                   |    ДляНеСовпНомГрупп.Автомобиль,
                   |    ДляНеСовпНомГрупп.ОбъектСтроительства,
                   |    ДляНеСовпНомГрупп.КоличествоРабот,
                   |    ДляНеСовпНомГрупп.ЦенаРабот,
                   |    ДляНеСовпНомГрупп.Номенклатура,
                   |    ДляНеСовпНомГрупп.Контрагент,
                   |    ДляНеСовпНомГрупп.ЦенаИзБазы,
                   |    ДляНеСовпНомГрупп.НоменклатурнаяГруппа
                   |ПОМЕСТИТЬ НомГруппыОбщие
                   |ИЗ
                   |    ДляНеСовпНомГрупп КАК ДляНеСовпНомГрупп
                   |
                   |СГРУППИРОВАТЬ ПО
                   |    ДляНеСовпНомГрупп.НомерПутевогоЛиста,
                   |    ДляНеСовпНомГрупп.ДатаДокумента,
                   |    ДляНеСовпНомГрупп.Автомобиль,
                   |    ДляНеСовпНомГрупп.ОбъектСтроительства,
                   |    ДляНеСовпНомГрупп.КоличествоРабот,
                   |    ДляНеСовпНомГрупп.ЦенаРабот,
                   |    ДляНеСовпНомГрупп.Номенклатура,
                   |    ДляНеСовпНомГрупп.Контрагент,
                   |    ДляНеСовпНомГрупп.ЦенаИзБазы,
                   |    ДляНеСовпНомГрупп.НоменклатурнаяГруппа
                   |
                   |ОБЪЕДИНИТЬ ВСЕ
                   |
                   |ВЫБРАТЬ
                   |    ДляСовпНомГруп.НомерПутевогоЛиста,
                   |    ДляСовпНомГруп.ДатаДокумента,
                   |    ДляСовпНомГруп.Автомобиль,
                   |    ДляСовпНомГруп.ОбъектСтроительства,
                   |    ДляСовпНомГруп.КоличествоРабот,
                   |    ДляСовпНомГруп.ЦенаРабот,
                   |    ДляСовпНомГруп.Номенклатура,
                   |    ДляСовпНомГруп.Контрагент,
                   |    ДляСовпНомГруп.ЦенаИзБазы,
                   |    ДляСовпНомГруп.НоменклатурнаяГруппа
                   |ИЗ
                   |    ДляСовпНомГруп КАК ДляСовпНомГруп
                   |;
1 KrabCore
 
18.06.15
14:13
Обязательно тащить во временную таблицу, если хочешь чтобы нормально сгруппировало
2 ultrannge89
 
18.06.15
14:13
Просто первый вариант как то плодит таблицы, бывает в запросе их более 20, не удобно...(
3 chelentano
 
18.06.15
14:26
"чтобы избавить от повторяющихся строк" достаточно написать РАЗЛИЧНЫЕ и ОБЪЕДИНИТЬ вместо ОБЪЕДИНИТЬ ВСЕ (если, конечно, нет ресурсов, которые нужно, например, просуммировать)
4 ultrannge89
 
18.06.15
14:45
Спасибо
Ошибка? Это не ошибка, это системная функция.