|
Выбрать Различные поля по условию в Запросе | ☑ | ||
---|---|---|---|---|
0
myr4ik07
29.01.15
✎
17:22
|
Делаю отчет в Консоли запросов
ВЫБРАТЬ ТоварыНаСкладахОстатки.Склад КАК Склад, МАКСИМУМ(ТоварыНаСкладахОстатки.Номенклатура) КАК Номенклатура, ТоварыНаСкладахОстатки.КоличествоОстаток КАК Осталось, ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, "нет цены") КАК Цена, ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.ТипЦен, "нет цены") КАК ТипЦен, ЕСТЬNULL(1.00000000001 / 1.00000000001 * ТоварыНаСкладахОстатки.КоличествоОстаток * ЦеныНоменклатурыСрезПоследних.Цена, "нет ценв") КАК Сумма ИЗ РегистрНакопления.ТоварыНаСкладах.Остатки(, Склад.Подразделение В ИЕРАРХИИ (&Подразделение)) КАК ТоварыНаСкладахОстатки ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ТипЦен В (&ТипЦен1, &ТипЦен)) КАК ЦеныНоменклатурыСрезПоследних ПО ТоварыНаСкладахОстатки.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура ГДЕ ТоварыНаСкладахОстатки.КоличествоОстаток > 0 СГРУППИРОВАТЬ ПО ЦеныНоменклатурыСрезПоследних.Цена, ЦеныНоменклатурыСрезПоследних.ТипЦен, ТоварыНаСкладахОстатки.Склад, ТоварыНаСкладахОстатки.КоличествоОстаток УПОРЯДОЧИТЬ ПО Склад, ТипЦен, Осталось УБЫВ ЗакупкаГривна и ЗакупкаДоллар это Справочник.ТипЦен которые отлично выбирает данные типа Склад Номенклатура Остаток Цена ТипЦен Сумма №1 Лук 10 1 ЗакупкаГривна 100 №1 Лук 10 0.10 ЗакупкаДоллар 1 №1 Слива 1 20 ЗакупкаДоллар 20 и т.д. как мне вывести отчет что бы, если в Товара "Лук" есть цены закупки Доллар и Гривна выводилась одна цена, не важно Доллар или Гривна?! |
|||
1
Ёпрст
29.01.15
✎
17:24
|
(0) максимум
|
|||
2
Ёпрст
29.01.15
✎
17:24
|
или минимум, по вкусу
|
|||
3
FIXXXL
29.01.15
✎
17:26
|
(0) отличный отчет с учетом курса :)
|
|||
4
myr4ik07
29.01.15
✎
17:28
|
(1) где Максимум или Минимум?
|
|||
5
myr4ik07
29.01.15
✎
17:30
|
(1) у меня и так Сгруппировано все что надо и не надо
|
|||
6
Один С
29.01.15
✎
17:31
|
ВЫБОР КОГДА
спасет отца русской демократии |
|||
7
myr4ik07
29.01.15
✎
17:33
|
(6) тоже думал об этом, приведите пример будьте добры, не могу представить как это выглнядит?!
|
|||
8
myr4ik07
29.01.15
✎
17:35
|
(6) на какое условие ВЫБОР КОГДА? На Равенство что ли?
|
|||
9
Крошка Ру
29.01.15
✎
17:38
|
(5) Тип цены убери из группировки и бери по нему максимум или минимум
|
|||
10
Один С
29.01.15
✎
17:40
|
чето я запутался кто на ком стоял...
можно я пойду? |
|||
11
myr4ik07
29.01.15
✎
17:40
|
(9) в суммированное поле типцены не перемещается
|
|||
12
Ёпрст
29.01.15
✎
17:40
|
(4)
Выбрать Максимум(ЦеныНоменклатурыСрезПоследних.Цена) КАК Цена, ЦеныНоменклатурыСрезПоследних.Номенклатура Поместить ТабличкаСЦенами ИЗ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ТипЦен В (&ТипЦен1, &ТипЦен)) КАК ЦеныНоменклатурыСрезПоследних Сгруппировать ПО ЦеныНоменклатурыСрезПоследних.Номенклатура потом в основном запросе левое соединение с этой табличкой заместо регистра и привет |
|||
13
Крошка Ру
29.01.15
✎
17:40
|
Ээээ... а что-то я не понял,а ты что пытаешься сделать-то?
группировка по количеству и Максимум(Номенклатура) - это типа выбрать одну номенклатуру на каждое найденное количество? |
|||
14
myr4ik07
29.01.15
✎
17:43
|
хух, я уже запутался, сколько советов...
|
|||
15
myr4ik07
29.01.15
✎
17:45
|
А почему если я строю запрос конструктором запроса если я в группировку хоть одно поле переношу и нажимаю Ок автоматически переносяться все поля в СГРУППИРОВАТЬ ПО
? |
|||
16
Крошка Ру
29.01.15
✎
17:49
|
(15) А что, по-твоему, такое ГРУППИРОВКА?
(На самом деле так происходит в результате заговора разработчиков.У них не получается представить группировку не охватывающую всю таблицу, вот из-за их бедной фантазии мы и страдаем. Но ты - тссс, никому) |
|||
17
myr4ik07
29.01.15
✎
17:53
|
(12) ну, что делаю не так
ВЫБРАТЬ ЦеныНоменклатурыСрезПоследних.Номенклатура, ЦеныНоменклатурыСрезПоследних.ТипЦен, МИНИМУМ(ЦеныНоменклатурыСрезПоследних.Цена) КАК Цена ПОМЕСТИТЬ ВТ ИЗ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ТипЦен В (&ТипЦен, &ТипЦен2)) КАК ЦеныНоменклатурыСрезПоследних СГРУППИРОВАТЬ ПО ЦеныНоменклатурыСрезПоследних.Номенклатура, ЦеныНоменклатурыСрезПоследних.ТипЦен все ровно есть две однаковых номенклатуры с ценами ЗакупкаДоллар ЗакупкаГривна |
|||
18
Один С
29.01.15
✎
17:54
|
да ужж... весело.
На самом деле я бы посоветовал автору абстрагироваться на некоторое время от запроса и русскими буквами, четко, без ошибок написать на листочке что нужно получить на выходе. Это будет уже половина решения. |
|||
19
Крошка Ру
29.01.15
✎
17:55
|
(17)Потому что ты ГРУППИРУЕШЬ по ТипуЦен. Убери его из группировки и возьми по нему максимум.
|
|||
20
myr4ik07
29.01.15
✎
17:55
|
(18) Условие по двух значениях листочок готовые
|
|||
21
myr4ik07
29.01.15
✎
17:55
|
(19) ага ) убрал, вроде то )
|
|||
22
Крошка Ру
29.01.15
✎
17:56
|
(17)
ВЫБРАТЬ ЦеныНоменклатурыСрезПоследних.Номенклатура, МАКСИМУМ(ЦеныНоменклатурыСрезПоследних.ТипЦен) КАК ТипЦен, МИНИМУМ(ЦеныНоменклатурыСрезПоследних.Цена) КАК Цена ПОМЕСТИТЬ ВТ ИЗ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ТипЦен В (&ТипЦен, &ТипЦен2)) КАК ЦеныНоменклатурыСрезПоследних СГРУППИРОВАТЬ ПО ЦеныНоменклатурыСрезПоследних.Номенклатура |
|||
23
myr4ik07
29.01.15
✎
17:56
|
(19) взял минимум потому как скорей всего меньше цена это будет Доллар, а мне как бы доллар нужен в выводе
|
|||
24
myr4ik07
29.01.15
✎
17:59
|
(22) короче когда убрал Поле с выборки ЦеныНоменклатурыСрезПоследних.ТипЦен) КАК ТипЦен то вроде удачно, нет повторов, ну как бы на глаз и на поиск элемента который точно есть две цены, а если МАКСИМУМ(ЦеныНоменклатурыСрезПоследних.ТипЦен) КАК ТипЦен то есть два экземпляра
|
|||
25
myr4ik07
29.01.15
✎
18:00
|
(22) от капец, стоп ) это две однаковых номенклатуры )наверное правильно
|
|||
26
myr4ik07
29.01.15
✎
20:22
|
в итоге, вышло вот (может кому то будет полезно)
ВЫБРАТЬ ЦеныНоменклатурыСрезПоследних.Номенклатура, МИНИМУМ(ЦеныНоменклатурыСрезПоследних.ТипЦен) КАК ТипЦен, МИНИМУМ(ЦеныНоменклатурыСрезПоследних.Цена) КАК Цена ПОМЕСТИТЬ ВТ ИЗ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ТипЦен В (&ТипЦен1, &ТипЦен2)) КАК ЦеныНоменклатурыСрезПоследних СГРУППИРОВАТЬ ПО ЦеныНоменклатурыСрезПоследних.Номенклатура ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ТоварыНаСкладахОстатки.Склад КАК Склад, ВТ.Номенклатура, ТоварыНаСкладахОстатки.КоличествоОстаток КАК Количество, ВТ.Цена КАК Цена, 1.0000000001 / 1.0000000001 * ТоварыНаСкладахОстатки.КоличествоОстаток * ВТ.Цена КАК Сумма, ВТ.ТипЦен КАК ТипЦен ИЗ РегистрНакопления.ТоварыНаСкладах.Остатки(, Склад.Подразделение В ИЕРАРХИИ (&Подразделение)) КАК ТоварыНаСкладахОстатки ЛЕВОЕ СОЕДИНЕНИЕ ВТ КАК ВТ ПО ТоварыНаСкладахОстатки.Номенклатура = ВТ.Номенклатура ГДЕ ТоварыНаСкладахОстатки.КоличествоОстаток > 1 И НЕ ВТ.Номенклатура ЕСТЬ NULL УПОРЯДОЧИТЬ ПО Склад, Количество УБЫВ |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |