Вход | Регистрация


1С:Предприятие :: 1С:Предприятие 8 общая

Очень нужна помощь с запросом

Очень нужна помощь с запросом
Я
   Bober777
 
26.12.12 - 13:14
Всем привет, в запросах не силен. Помогите пож каким образом нужно построить запрос. Что бы увидеть на выходе иметь примерно следующие поля.
1 - Номенклатура
2 - Цена 1 (опт)
3 - цена 2 (розница)
4 - цена 3 (сайт розница)
5 - цена 4 (сайт опт)

<CODE>  
ВЫБРАТЬ РАЗРЕШЕННЫЕ
    ЦеныНоменклатурыСрезПоследних.Номенклатура КАК Номенклатура,
    ЦеныНоменклатурыСрезПоследних.Характеристика КАК Характеристика,
    ЦеныНоменклатурыСрезПоследних.ВидЦены КАК ВидЦены,
    ЦеныНоменклатурыСрезПоследних.Упаковка КАК Упаковка,
    ЦеныНоменклатурыСрезПоследних.Валюта КАК Валюта,
    ЦеныНоменклатурыСрезПоследних.Номенклатура.ЦеноваяГруппа КАК ЦеноваяГруппа,
    ЦеныНоменклатурыСрезПоследних.Цена КАК Цена
{ВЫБРАТЬ
    Номенклатура.*,
    Характеристика.*,
    ВидЦены.*,
    Цена,
    Упаковка.*,
    Валюта.*,
    ЦеноваяГруппа.*}
ИЗ
    РегистрСведений.ЦеныНоменклатуры.СрезПоследних(КОНЕЦПЕРИОДА(&Период, ДЕНЬ), ) КАК ЦеныНоменклатурыСрезПоследних
ГДЕ
    ЦеныНоменклатурыСрезПоследних.Цена > 0
{ГДЕ
    ЦеныНоменклатурыСрезПоследних.Номенклатура.*,
    ЦеныНоменклатурыСрезПоследних.Характеристика.*,
    ЦеныНоменклатурыСрезПоследних.ВидЦены.*,
    ЦеныНоменклатурыСрезПоследних.Цена,
    ЦеныНоменклатурыСрезПоследних.Упаковка.*,
    ЦеныНоменклатурыСрезПоследних.Валюта.*}
ИТОГИ ПО
    Номенклатура ИЕРАРХИЯ
</CODE>
 
 
   Bober777
 
1 - 26.12.12 - 13:15
содрал данный пример в отчете прайс лист.
   Bober777
 
2 - 26.12.12 - 13:16
кстати как тут определять код в теге? какой тег должен быть?
   DexterMorgan
 
3 - 26.12.12 - 13:17
СУММА(ВЫБОР КОГДА ЦеныНоменклатурыСрезПоследних.ВидЦены = &Опт ТОГДА
 ЦеныНоменклатурыСрезПоследних.Цена
Иначе 0
КОНЕЦ) КАК ЦенаОпт

ну и группировка по остальным полям
   pessok
 
4 - 26.12.12 - 13:18
(3) ужасы предлагаешь
(0) группировка колонок по типу цен
   DexterMorgan
 
5 - 26.12.12 - 13:19
(4) А я хз если скд то ты прав, а если просто запрос у него?
   DexterMorgan
 
6 - 26.12.12 - 13:21
(4) Про отчет ни слова, а фигурные скобки есть и у построителя есичо
   pessok
 
7 - 26.12.12 - 13:24
(6) да это понятно :) но нужно же уметь телепатировать :)
   MKZM
 
8 - 26.12.12 - 13:25
ВЫБРАТЬ
   ВложенныйЗапрос.Ссылка,
    ЦеныНоменклатурыСрезПоследних.Цена,
    ЦеныНоменклатурыСрезПоследних1.Цена КАК Цена1
ИЗ
    (ВЫБРАТЬ
        Номенклатура.Ссылка КАК Ссылка
    ИЗ
        Справочник.Номенклатура КАК Номенклатура
    ГДЕ
        Номенклатура.Ссылка В ИЕРАРХИИ(&Ссылка)) КАК ВложенныйЗапрос
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&Период, ТипЦен = &Тип1) КАК ЦеныНоменклатурыСрезПоследних
        ПО ВложенныйЗапрос.Ссылка = ЦеныНоменклатурыСрезПоследних.Номенклатура
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ТипЦен = &Тип1) КАК ЦеныНоменклатурыСрезПоследних1
        ПО ВложенныйЗапрос.Ссылка = ЦеныНоменклатурыСрезПоследних1.Номенклатура
   DexterMorgan
 
9 - 26.12.12 - 13:28
(8) С чего это будет быстрее работать чем ВЫБОР КОГДА? В этом случае вообще левых соединений не будет, все выбирается из одной таблицы с последующей группировкой
   DexterMorgan
 
10 - 26.12.12 - 13:29
У него кстати четыре вида цены, 4 раза соединять будешь?
 
 Рекламное место пустует
   MKZM
 
11 - 26.12.12 - 13:32
при возврате 20000 номенклатуры во вложенном запросе, все другое выбирается за несколько минут.
   MKZM
 
12 - 26.12.12 - 13:34
Хоть 5
   DexterMorgan
 
13 - 26.12.12 - 13:35
(11) Да ну нафиг, чета я не верю что 4 левых соединения работают быстрее группировки
   DexterMorgan
 
14 - 26.12.12 - 13:36
И зачем вообще вложенный запрос
   MKZM
 
15 - 26.12.12 - 13:36
Убеждать не буду
   DexterMorgan
 
16 - 26.12.12 - 13:37
(15) Ты замер делал?
   Всеяд
 
17 - 26.12.12 - 13:40
За левое соединение с виртуальной таблицей должен быть расстрел на месте.
   DexterMorgan
 
18 - 26.12.12 - 13:42
(17) расстрел на мисте*?
   pessok
 
19 - 26.12.12 - 13:44
(17) а как получить остатки, включая нулевые?
   DexterMorgan
 
20 - 26.12.12 - 13:47
(19) Ну тут же можно обойтись
   sapphire
 
21 - 26.12.12 - 13:47
(17) Ату его, ату! Линчевать немедля
   pessok
 
22 - 26.12.12 - 13:49
(20) через гланды доставать, когда можно к справочника слева прицепить ТоварыНаСкладахОстатки? :)
   Всеяд
 
23 - 26.12.12 - 13:52
Хинт: никто не запрещает соединяться с данными из виртуальной таблицы. А вот с самой виртуальной таблицей - нинада.
   MKZM
 
24 - 26.12.12 - 13:54
"За левое соединение с виртуальной таблицей должен быть расстрел на месте."

Тогда надо расстрелять всех кто участвовал в разработках стандартных и не очень конфигураций.
   pessok
 
25 - 26.12.12 - 13:54
(23) выдыхай
   Bober777
 
26 - 26.12.12 - 16:02
проверю и группировки и левые соединения специально замерю))) а так спасибо за участие в ветке всем обсолютно)).
   Bober777
 
27 - 26.12.12 - 16:03
я долго молчал потому что уходил и еще у меня инета не было))).
   sapphire
 
28 - 26.12.12 - 16:06
(24)Да, Да, да. Их в первую очередь!
   Axel2009
 
29 - 26.12.12 - 16:07
(17) чета я не понял, за что расстрел то? что замедляет?
   DexterMorgan
 
30 - 26.12.12 - 16:07
(26) Отпишись, пжста, и где левое соединение добавь индекс по номенклатуре
   sapphire
 
31 - 26.12.12 - 16:09
(29)
за это:
ЦеныНоменклатурыСрезПоследних.Номенклатура.ЦеноваяГруппа
   Axel2009
 
32 - 26.12.12 - 16:12
(31) а в чем проблема то?
   Bober777
 
33 - 26.12.12 - 16:12
(8) как код вставлять в тег?
 
 
   pessok
 
34 - 26.12.12 - 16:14
 это код

   pessok
 
35 - 26.12.12 - 16:14
мля :) [ 1C ] [ /1С ] без пробелов
   Bober777
 
36 - 26.12.12 - 16:16
[ 1C ] мля :)  спасибо[ /1С ]
   Bober777
 
37 - 26.12.12 - 16:17
[ 1C ]мля :)  спасибо[ /1С ]
   Bober777
 
38 - 26.12.12 - 16:17
[1C] мля :)  спасибо[/1С]
   Bober777
 
39 - 26.12.12 - 16:17
да че за фигня
   Bober777
 
40 - 26.12.12 - 16:18
[1C]мля :)  спасибо[/1С]
   Axel2009
 
41 - 26.12.12 - 16:18
(39) буквы нерусские
 тест

   Bober777
 
42 - 26.12.12 - 16:19
мля :)  спасибо

   Bober777
 
43 - 26.12.12 - 16:19
есть коннект))
   Bober777
 
44 - 26.12.12 - 16:22
(3) а для чего Функция СУММА нужна?

СУММА(ВЫБОР КОГДА ЦеныНоменклатурыСрезПоследних.ВидЦены = &Опт ТОГДА 
 ЦеныНоменклатурыСрезПоследних.Цена
Иначе 0
КОНЕЦ) КАК ЦенаОпт

   Axel2009
 
45 - 26.12.12 - 16:28
(44) чтобы агрегат отработал
   Bober777
 
46 - 26.12.12 - 16:31
(45) поясни тугорогому), Для меня допустим в табличной части могут участвовать несколько одинаковых позиций номенклатуры... и у них количество разное, так что бы его суммировать в запросе применяют эту функцию. Перед тем как записи в регистре накопления сделать. А тута она зачем?
   Axel2009
 
47 - 26.12.12 - 16:32
(46) затем что у тебя получается таблица вида
Н ТП1
Н ТП2
Н ТП3
вот чтобы их разделить на разные колонки и придумывают подобные выборки чтобы у тебя получилось.
Н ТП1 ТП2 ТП3
   Bober777
 
48 - 26.12.12 - 16:35
(47) Крутяк, спасибо друг)


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует