![]() |
![]() |
![]() |
|
Помогите разобраться с запросом | ☑ | ||
---|---|---|---|---|
0
fankiflat
21.10.13
✎
11:56
|
Конфигурация Альфа-авто 41
Отчет История по наряд-заказам, нужно добавить еще один реквизит в отчет "Пробег". Он находится в регистре сведений Автомобили. ВЫБРАТЬ РАЗРЕШЕННЫЕ СрезПоследнихВладельцев.ЗаказНаряд КАК ЗаказНаряд, СрезПоследнихВладельцев.Автомобиль КАК Автомобиль, ХарактеристикиАвтомобилей.Значение КАК Хозяин ПОМЕСТИТЬ СрезПоследнихВладельцев ИЗ (ВЫБРАТЬ ЗаказНарядРаботы.Ссылка КАК ЗаказНаряд, ЗаказНарядРаботы.Автомобиль КАК Автомобиль, МАКСИМУМ(ХарактеристикиАвтомобилей.Период) КАК Период ИЗ Документ.ЗаказНаряд КАК ЗаказНарядРаботы ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.Автомобили КАК ХарактеристикиАвтомобилей ПО ЗаказНарядРаботы.Дата >= ХарактеристикиАвтомобилей.Период И ЗаказНарядРаботы.Автомобиль = ХарактеристикиАвтомобилей.Автомобиль И ХарактеристикиАвтомобилей.ВидЗначения = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяИнформацияАвтомобилей.Хозяин) ГДЕ ЗаказНарядРаботы.Дата >= &ДатаНач И ЗаказНарядРаботы.Дата <= &ДатаКон {ГДЕ ЗаказНарядРаботы.Заказчик.* КАК Заказчик, ЗаказНарядРаботы.Автомобиль.* КАК Автомобиль, ЗаказНарядРаботы.Ссылка.* КАК ЗаказНаряд } СГРУППИРОВАТЬ ПО ЗаказНарядРаботы.Ссылка, ЗаказНарядРаботы.Автомобиль) КАК СрезПоследнихВладельцев ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.Автомобили КАК ХарактеристикиАвтомобилей ПО СрезПоследнихВладельцев.Период = ХарактеристикиАвтомобилей.Период И СрезПоследнихВладельцев.Автомобиль = ХарактеристикиАвтомобилей.Автомобиль И ХарактеристикиАвтомобилей.ВидЗначения = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяИнформацияАвтомобилей.Хозяин) ВЫБРАТЬ РАЗРЕШЕННЫЕ 0 КАК КоличествоЗаказНарядов, РезультирующийЗапрос.СуммаРаботы КАК СуммаРаботы, РезультирующийЗапрос.СуммаЗапчасти КАК СуммаЗапчасти, РезультирующийЗапрос.СуммаВсего КАК СуммаВсего, РезультирующийЗапрос.СуммаВсего КАК СуммаВсего, СрезПоследнихВладельцев.Хозяин КАК Хозяин, #Область ИзмеренияПостроителяДляСвойств РезультирующийЗапрос.Заказчик КАК Заказчик, РезультирующийЗапрос.Автомобиль КАК Автомобиль, РезультирующийЗапрос.ЗаказНаряд КАК ЗаказНаряд, РезультирующийЗапрос.Наименование КАК Наименование, #КонецОбласти РезультирующийЗапрос.АвтомобильДанные КАК АвтомобильДанные //СВОЙСТВА //КИ_ВЫБОРКА //КИ_ЗАКАЗЧИК_ВЫБОРКА {ВЫБРАТЬ КоличествоЗаказНарядов КАК КоличествоЗаказНарядов, СуммаРаботы КАК СуммаРаботы, СуммаЗапчасти КАК СуммаЗапчасти, СуммаВсего КАК СуммаВсего, Заказчик.* КАК Заказчик, Автомобиль.* КАК Автомобиль, АвтомобильДанные КАК АвтомобильДанные, ЗаказНаряд.* КАК ЗаказНаряд, Наименование.* КАК Наименование, Хозяин.* КАК Хозяин //СВОЙСТВА //КИ_ПСЕВДАНИМ //КИ_ЗАКАЗЧИК_ПСЕВДАНИМ } ИЗ( ВЫБРАТЬ ЗаказНарядРаботы.Ссылка.Заказчик КАК Заказчик, ЗаказНарядРаботы.Ссылка.Автомобиль КАК Автомобиль, "VIN: " + ЗаказНарядРаботы.Ссылка.Автомобиль.VIN + "; " + ЗаказНарядРаботы.Ссылка.Автомобиль.Модель.Наименование + "; №куз.: " + ЗаказНарядРаботы.Ссылка.Автомобиль.НомерКузова КАК АвтомобильДанные, ЗаказНарядРаботы.Ссылка КАК ЗаказНаряд, ЗаказНарядРаботы.Работа КАК Наименование, //ЗаказНарядРаботы.СуммаВсего КАК СуммаРаботы, ВЫБОР КОГДА ЗаказНарядРаботы.Ссылка.КурсДокумента = 0 ТОГДА 0 ИНАЧЕ ЗаказНарядРаботы.СуммаВсего * ЗаказНарядРаботы.Ссылка.КурсДокумента / &КурсВалютыОтчета КОНЕЦ КАК СуммаРаботы, 0 КАК СуммаЗапчасти, ВЫБОР КОГДА ЗаказНарядРаботы.Ссылка.КурсДокумента = 0 ТОГДА 0 ИНАЧЕ ЗаказНарядРаботы.СуммаВсего * ЗаказНарядРаботы.Ссылка.КурсДокумента / &КурсВалютыОтчета КОНЕЦ КАК СуммаВсего ИЗ Документ.ЗаказНаряд.Работы КАК ЗаказНарядРаботы ГДЕ ЗаказНарядРаботы.Ссылка.Дата >= &ДатаНач И ЗаказНарядРаботы.Ссылка.Дата <= &ДатаКон {ГДЕ ЗаказНарядРаботы.Ссылка.Заказчик.* КАК Заказчик, ЗаказНарядРаботы.Ссылка.Автомобиль.* КАК Автомобиль, ЗаказНарядРаботы.Ссылка.* КАК ЗаказНаряд } ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ЗаказНарядТовары.Ссылка.Заказчик, ЗаказНарядТовары.Ссылка.Автомобиль, "VIN: " + ЗаказНарядТовары.Ссылка.Автомобиль.VIN + "; " + ЗаказНарядТовары.Ссылка.Автомобиль.Модель.Наименование + "; №куз.: " + ЗаказНарядТовары.Ссылка.Автомобиль.НомерКузова, ЗаказНарядТовары.Ссылка, ЗаказНарядТовары.Номенклатура, 0, ВЫБОР КОГДА ЗаказНарядТовары.Ссылка.КурсДокумента = 0 ТОГДА 0 ИНАЧЕ ЗаказНарядТовары.СуммаВсего * ЗаказНарядТовары.Ссылка.КурсДокумента / &КурсВалютыОтчета КОНЕЦ, ВЫБОР КОГДА ЗаказНарядТовары.Ссылка.КурсДокумента = 0 ТОГДА 0 ИНАЧЕ ЗаказНарядТовары.СуммаВсего * ЗаказНарядТовары.Ссылка.КурсДокумента / &КурсВалютыОтчета КОНЕЦ ИЗ Документ.ЗаказНаряд.Товары КАК ЗаказНарядТовары ГДЕ ЗаказНарядТовары.Ссылка.Дата >= &ДатаНач И ЗаказНарядТовары.Ссылка.Дата <= &ДатаКон {ГДЕ ЗаказНарядТовары.Ссылка.Заказчик.* КАК Заказчик, ЗаказНарядТовары.Ссылка.Автомобиль.* КАК Автомобиль, ЗаказНарядТовары.Ссылка.* КАК ЗаказНаряд } ) КАК РезультирующийЗапрос {ЛЕВОЕ СОЕДИНЕНИЕ СрезПоследнихВладельцев КАК СрезПоследнихВладельцев ПО РезультирующийЗапрос.ЗаказНаряд = СрезПоследнихВладельцев.ЗаказНаряд И РезультирующийЗапрос.Автомобиль = СрезПоследнихВладельцев.Автомобиль} //СОЕДИНЕНИЯ //КИ_СОЕДИНЕНИЯ //КИ_ЗАКАЗЧИК_СОЕДИНЕНИЯ {ГДЕ РезультирующийЗапрос.Наименование.* КАК Наименование, СрезПоследнихВладельцев.Хозяин.* КАК Хозяин //СВОЙСТВА} {УПОРЯДОЧИТЬ ПО Заказчик.*, Автомобиль.*, АвтомобильДанные, ЗаказНаряд.*, Наименование.*, Хозяин.* КАК Хозяин //СВОЙСТВА} {ИТОГИ ПО Заказчик.*, Автомобиль.*, АвтомобильДанные, ЗаказНаряд.*, Наименование.*, Хозяин.* КАК Хозяин //СВОЙСТВА} ИТОГИ КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ЗаказНаряд) КАК КоличествоЗаказНарядов, СУММА(СуммаРаботы), СУММА(СуммаЗапчасти), СУММА(СуммаВсего) //ИТОГИСВОЙСТВА //КИ_ИТОГИ //КИ_ЗАКАЗЧИК_ИТОГИ ПО ОБЩИЕ АВТОУПОРЯДОЧИВАНИЕ |
|||
1
mikecool
21.10.13
✎
11:59
|
многа бук_афф, читай сам их
|
|||
2
Maxus43
21.10.13
✎
12:04
|
//КИ_ЗАКАЗЧИК_ПСЕВДАНИМ
это типовой в альфо авто? чо за ошибки тупые, читать противно |
|||
3
mikecool
21.10.13
✎
12:05
|
(2) ты это еще и читал ))))
|
|||
4
Godofsin
21.10.13
✎
12:07
|
(2) а чито тибя ниустраиваит?
|
|||
5
Maxus43
21.10.13
✎
12:08
|
Поидее надо в этот вложенный запрос:
ИЗ( ВЫБРАТЬ ЗаказНарядРаботы.Ссылка.Заказчик КАК Заказчик, ЗаказНарядРаботы.Ссылка.Автомобиль КАК Автомобиль, добавить новое поле, в обе части запроса с ОБЪЕДИНИТЬ, всё делать руками, забудьте о конструкторе (4) альфо-авто же, могли хоть написать правильно |
|||
6
hhhh
21.10.13
✎
12:12
|
(4) ПСЕВДёНИМ надо
|
|||
7
fankiflat
21.10.13
✎
12:22
|
Это типовой отчет. Такой вот странный запрос там и есть, он просто здесь так отобразился не читабельно.
Maxus43, а поподробнее можно? Я сюда строчку добавляла:ХарактеристикиАвтомобилей.ВидЗначения = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяИнформацияАвтомобилей.Пробег) Вложенный запрос: ВЫБРАТЬ ЗаказНарядРаботы.Ссылка КАК ЗаказНаряд, ЗаказНарядРаботы.Автомобиль КАК Автомобиль, МАКСИМУМ(ХарактеристикиАвтомобилей.Период) КАК Период ИЗ Документ.ЗаказНаряд КАК ЗаказНарядРаботы ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.Автомобили КАК ХарактеристикиАвтомобилей ПО ЗаказНарядРаботы.Дата >= ХарактеристикиАвтомобилей.Период И ЗаказНарядРаботы.Автомобиль = ХарактеристикиАвтомобилей.Автомобиль И ХарактеристикиАвтомобилей.ВидЗначения = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяИнформацияАвтомобилей.Хозяин) ГДЕ ЗаказНарядРаботы.Дата >= &ДатаНач И ЗаказНарядРаботы.Дата <= &ДатаКон {ГДЕ ЗаказНарядРаботы.Заказчик.* КАК Заказчик, ЗаказНарядРаботы.Автомобиль.* КАК Автомобиль, ЗаказНарядРаботы.Ссылка.* КАК ЗаказНаряд } СГРУППИРОВАТЬ ПО ЗаказНарядРаботы.Ссылка, ЗаказНарядРаботы.Автомобиль) КАК СрезПоследнихВладельцев ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.Автомобили КАК ХарактеристикиАвтомобилей ПО СрезПоследнихВладельцев.Период = ХарактеристикиАвтомобилей.Период И СрезПоследнихВладельцев.Автомобиль = ХарактеристикиАвтомобилей.Автомобиль И ХарактеристикиАвтомобилей.ВидЗначения = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяИнформацияАвтомобилей.Хозяин) ; |
|||
8
fankiflat
21.10.13
✎
12:33
|
Я еще новичок в этом! Что и как писать с ОБЪЕДИНИТЬ?
|
|||
9
Maxus43
21.10.13
✎
13:07
|
что такое пробег то? где хранится?
|
|||
10
fankiflat
21.10.13
✎
13:16
|
"Пробег" он ставится на форме "Заказ-Наряд" потом записывается в регистр сведений Автомобиль, а нам получается для отчета нужно брать этот Пробег из регистра сведений.
Структура регистра Автомобили: Измерения: Автомобиль, ВидЗначения Ресурсы: Значение. Обращаться к нему можно так: РегистрСведений.Автомобили.ВидЗначения = ЗНАЧЕНИЕ(Перечисление.ДополнительнаяИнформацияАвтомобилей.Пробег) |
|||
11
Maxus43
21.10.13
✎
13:22
|
Ну делай соединение по автомобилю и виду значения...
в консоли запросов попробуй сначала сделать запрос с выводом таблички автомобилей и пробегов, используя справочник и соединёние к регистру, не привязываясь к этому монструзному запросу |
|||
12
fankiflat
23.10.13
✎
12:19
|
Разобралась куда чего добавить. Всем спасибо за советы!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |