|
|
|
запрос на 2 списка номенклатуры | ☑ | ||
|---|---|---|---|---|
|
0
LivingStar
13.08.13
✎
14:07
|
Ребят прокомментируйте кому не сложно запрос. Задача в выборке по торговой точке итогов по одной номенклатуре и рядом по другой, делал через пакетный запрос. В первом задаю один список во втором другой, и вывожу в итоговом запросе, вот верно ли соединение???
ВЫБРАТЬ ВложенныйЗапрос.Номенклатура, ВложенныйЗапрос.Контрагент, ВложенныйЗапрос.ТорговаяТочка, ВложенныйЗапрос.КоличествоОборот КАК КоличествоОборот, ВложенныйЗапрос.ПериодМесяц, ВложенныйЗапрос.АдресТорговойТочки ПОМЕСТИТЬ ВТ_НОМ1 {ВЫБРАТЬ Номенклатура.*, Контрагент.*, ТорговаяТочка.*, КоличествоОборот, ПериодМесяц} ИЗ (ВЫБРАТЬ ПродажиОбороты.Номенклатура КАК Номенклатура, ПродажиОбороты.Контрагент КАК Контрагент, ПродажиОбороты.ДокументПродажи.ТорговаяТочка КАК ТорговаяТочка, ПродажиОбороты.КоличествоОборот / ПродажиОбороты.Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК КоличествоОборот, ПродажиОбороты.ПериодМесяц КАК ПериодМесяц, ВЫРАЗИТЬ(КонтактнаяИнформация.Представление КАК СТРОКА(100)) КАК АдресТорговойТочки ИЗ РегистрНакопления.Продажи.Обороты(&ДатаНач, &ДатаКон, Авто, Номенклатура В ИЕРАРХИИ (&СписокНОМ1)) КАК ПродажиОбороты ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация ПО ПродажиОбороты.Регистратор.ТорговаяТочка = КонтактнаяИнформация.Объект И (КонтактнаяИнформация.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес)) И (КонтактнаяИнформация.Вид.Код = "000000027")) КАК ВложенныйЗапрос {ГДЕ ВложенныйЗапрос.Номенклатура.*, ВложенныйЗапрос.ТорговаяТочка.*, ВложенныйЗапрос.Контрагент.*, ВложенныйЗапрос.КоличествоОборот, ВложенныйЗапрос.ПериодМесяц} ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВложенныйЗапрос.Номенклатура, ВложенныйЗапрос.Контрагент, ВложенныйЗапрос.ТорговаяТочка, ВложенныйЗапрос.КоличествоОборот КАК КоличествоОборот, ВложенныйЗапрос.ПериодМесяц, ВложенныйЗапрос.АдресТорговойТочки ПОМЕСТИТЬ ВТ_НОМ2 {ВЫБРАТЬ Номенклатура.*, Контрагент.*, ТорговаяТочка.*, КоличествоОборот, ПериодМесяц} ИЗ (ВЫБРАТЬ ПродажиОбороты.Номенклатура КАК Номенклатура, ПродажиОбороты.Контрагент КАК Контрагент, ПродажиОбороты.ДокументПродажи.ТорговаяТочка КАК ТорговаяТочка, ПродажиОбороты.КоличествоОборот / ПродажиОбороты.Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК КоличествоОборот, ПродажиОбороты.ПериодМесяц КАК ПериодМесяц, ВЫРАЗИТЬ(КонтактнаяИнформация.Представление КАК СТРОКА(100)) КАК АдресТорговойТочки ИЗ РегистрНакопления.Продажи.Обороты(&ДатаНач, &ДатаКон, Авто, Номенклатура В ИЕРАРХИИ (&СписокНОМ2)) КАК ПродажиОбороты ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация ПО ПродажиОбороты.Регистратор.ТорговаяТочка = КонтактнаяИнформация.Объект И (КонтактнаяИнформация.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес)) И (КонтактнаяИнформация.Вид.Код = "000000027")) КАК ВложенныйЗапрос {ГДЕ ВложенныйЗапрос.Номенклатура.*, ВложенныйЗапрос.ТорговаяТочка.*, ВложенныйЗапрос.Контрагент.*, ВложенныйЗапрос.КоличествоОборот, ВложенныйЗапрос.ПериодМесяц} ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТ_НОМ1.ТорговаяТочка, ВТ_НОМ1.АдресТорговойТочки, ВТ_НОМ1.КоличествоОборот, ВТ_НОМ2.КоличествоОборот КАК КоличествоОборот1 ИЗ ВТ_НОМ1 КАК ВТ_НОМ1 ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ_НОМ2 КАК ВТ_НОМ2 ПО ВТ_НОМ1.ТорговаяТочка = ВТ_НОМ2.ТорговаяТочка |
|||
|
1
butterbean
13.08.13
✎
14:10
|
нафига столько запросов и соединений??
|
|||
|
2
LivingStar
14.08.13
✎
05:23
|
(1) запрос взял из типового отчета им пользуюсь
|
|||
|
3
LivingStar
14.08.13
✎
05:24
|
как избавиться от повторяющихся записей в запросе (0)?
|
|||
|
4
LivingStar
14.08.13
✎
05:25
|
Три соединения!!!! два пакетных запроса с соединениями и их соединение!!! Сколько столько то???
|
|||
|
5
Godofsin
14.08.13
✎
06:26
|
РАЗЛИЧНЫЕ
|
|||
|
6
LivingStar
14.08.13
✎
06:29
|
Подскажите кому не трудно, почему не могу выбрать:
ТорговаяТочка, КоличествоНОМ1, КоличествоНОМ2 ? ВЫБРАТЬ ВложенныйЗапрос.ТорговаяТочка, СУММА(ВложенныйЗапрос.КоличествоОборотНОМ1) КАК КоличествоОборотНОМ1, СУММА(ВложенныйЗапрос.КоличествоОборотНОМ2) КАК КоличествоОборотНОМ2 ПОМЕСТИТЬ ВТ_НОМ1 {ВЫБРАТЬ ТорговаяТочка.*} ИЗ (ВЫБРАТЬ ПродажиОбороты.ДокументПродажи.ТорговаяТочка КАК ТорговаяТочка, ПродажиОбороты.КоличествоОборот / ПродажиОбороты.Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК КоличествоОборотНОМ1, 0 КАК КоличествоОборотНОМ2 ИЗ РегистрНакопления.Продажи.Обороты(&ДатаНач, &ДатаКон, Авто, Номенклатура В ИЕРАРХИИ (&СписокНОМ1)) КАК ПродажиОбороты ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ПродажиОбороты.ДокументПродажи.ТорговаяТочка, 0, ПродажиОбороты.КоличествоОборот / ПродажиОбороты.Номенклатура.ЕдиницаДляОтчетов.Коэффициент ИЗ РегистрНакопления.Продажи.Обороты(&ДатаНач, &ДатаКон, Авто, Номенклатура В ИЕРАРХИИ (&СписокНОМ2)) КАК ПродажиОбороты) КАК ВложенныйЗапрос ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация ПО ВложенныйЗапрос.ТорговаяТочка = КонтактнаяИнформация.Объект {ГДЕ ВложенныйЗапрос.ТорговаяТочка.*} СГРУППИРОВАТЬ ПО ВложенныйЗапрос.ТорговаяТочка |
|||
|
7
LivingStar
14.08.13
✎
06:29
|
(5) Мне кажется в (0) запрос вообще не корректный !!!
|
|||
|
8
LivingStar
14.08.13
✎
06:32
|
вот так выбрал, если не ошибаюсь правильно!!!
ВЫБРАТЬ ВложенныйЗапрос.ТорговаяТочка, СУММА(ВложенныйЗапрос.КоличествоОборотБАФ) КАК КоличествоОборотБАФ, СУММА(ВложенныйЗапрос.КоличествоОборотБОЛЬШАЯ_СОСИСКА) КАК КоличествоОборотБОЛЬШАЯ_СОСИСКА {ВЫБРАТЬ ТорговаяТочка.*} ИЗ (ВЫБРАТЬ ПродажиОбороты.ДокументПродажи.ТорговаяТочка КАК ТорговаяТочка, ПродажиОбороты.КоличествоОборот / ПродажиОбороты.Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК КоличествоОборотБАФ, 0 КАК КоличествоОборотБОЛЬШАЯ_СОСИСКА ИЗ РегистрНакопления.Продажи.Обороты(&ДатаНач, &ДатаКон, Авто, Номенклатура В ИЕРАРХИИ (&СписокБАФ)) КАК ПродажиОбороты ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ПродажиОбороты.ДокументПродажи.ТорговаяТочка, 0, ПродажиОбороты.КоличествоОборот / ПродажиОбороты.Номенклатура.ЕдиницаДляОтчетов.Коэффициент ИЗ РегистрНакопления.Продажи.Обороты(&ДатаНач, &ДатаКон, Авто, Номенклатура В ИЕРАРХИИ (&СписокБОЛЬШАЯ_СОСИСКА)) КАК ПродажиОбороты) КАК ВложенныйЗапрос ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация ПО ВложенныйЗапрос.ТорговаяТочка = КонтактнаяИнформация.Объект {ГДЕ ВложенныйЗапрос.ТорговаяТочка.*} СГРУППИРОВАТЬ ПО ВложенныйЗапрос.ТорговаяТочка |
|||
|
9
LivingStar
14.08.13
✎
06:39
|
связал с контактной информацией, выразил как строка(100), пишет "Недопустимое поле для группироски адрес", я же делаю ВЫРАЗИТЬ(КонтактнаяИнформация.Представление КАК Строка(100))
почему не выражает? |
|||
|
10
LivingStar
14.08.13
✎
06:42
|
ВЫБРАЛ!!! Только не переносил поле, а создал, добавил, в нем уже выразил....
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |