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

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

Запрос по ценам номенклатуры

Запрос по ценам номенклатуры
Я
   polkin
 
12.10.16 - 14:52
Ранее в таблицу через запрос выводил "Оптовую цену".
ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0)

Цена была одна и все было нормально.
Но сейчас цен несколько и соответственно выводит несколько списков номенклатуры в таблице. Но выводить нужно только одну "Оптовую цену"

Можно после запроса перебрать всю таблицу и удалить по виду цен лишние строки. Но должно же быть решение и через запрос....

ВЫБОР 
    КОГДА ЦеныНоменклатурыСрезПоследних.ВидЦен="Оптовая цена" 
    ТОГДА ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0)
    ИНАЧЕ 0
КОНЕЦ    

через выбор не работает...
 
 
   DrShad
 
1 - 12.10.16 - 14:57
давай весь запрос
   DrShad
 
2 - 12.10.16 - 14:57
да и ВидЦен врядли строка
   Radkt
 
3 - 12.10.16 - 14:59
параметром никак выбрать нужную цену?
   1sanekmaloi1
 
4 - 12.10.16 - 14:59
установить параметр "ВидЦены" вирт таблицы срезапоследних и будет счастие
   polkin
 
5 - 12.10.16 - 15:20
Запрос.Текст =
    "ВЫБРАТЬ
    |    Номенклатура1.Ссылка КАК Номенклатура,
    |    ЕСТЬNULL(ХарактеристикиНоменклатуры.Ссылка, НЕОПРЕДЕЛЕНО) КАК Характеристика,
    |    ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК Цена,
    |    ЕСТЬNULL(ЗапасыНаСкладахОстатки.КоличествоОстаток, 0) КАК Количество,
    |    ЕСТЬNULL(ЗаказыПоставщикамОстатки.КоличествоОстаток, 0) КАК Заказано,
    |    Номенклатура1.ЕдиницаИзмерения,
    |    Номенклатура1.СсылкаWEB,
    |    Номенклатура1.СтавкаНДС,
    |    Номенклатура1.НаименованиеПолное КАК Содержание,
    |    НоменклатураПрисоединенныеФайлы.Ссылка КАК ФайлКартинки,
    |    ЦеныНоменклатурыСрезПоследних.ВидЦен КАК ВидЦен
    |ИЗ
    |    Справочник.Номенклатура КАК Номенклатура1
    |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних
    |            ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ЗапасыНаСкладах.Остатки КАК ЗапасыНаСкладахОстатки
    |            ПО ЦеныНоменклатурыСрезПоследних.Номенклатура = ЗапасыНаСкладахОстатки.Номенклатура
    |                И ЦеныНоменклатурыСрезПоследних.Характеристика = ЗапасыНаСкладахОстатки.Характеристика
    |            ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ХарактеристикиНоменклатуры КАК ХарактеристикиНоменклатуры
    |            ПО (ХарактеристикиНоменклатуры.Ссылка = ЦеныНоменклатурыСрезПоследних.Характеристика)
    |            ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ЗаказыПоставщикам.Остатки КАК ЗаказыПоставщикамОстатки
    |            ПО ЦеныНоменклатурыСрезПоследних.Номенклатура = ЗаказыПоставщикамОстатки.Номенклатура
    |                И ЦеныНоменклатурыСрезПоследних.Характеристика = ЗаказыПоставщикамОстатки.Характеристика
    |        ПО Номенклатура1.Ссылка = ЦеныНоменклатурыСрезПоследних.Номенклатура
    |        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.НоменклатураПрисоединенныеФайлы КАК НоменклатураПрисоединенныеФайлы
    |        ПО Номенклатура1.ФайлКартинки = НоменклатураПрисоединенныеФайлы.Ссылка
    |ГДЕ
    |    Номенклатура1.Родитель = &Родитель
    |
    |УПОРЯДОЧИТЬ ПО
    |    ВидЦен УБЫВ,
    |    Номенклатура,
    |    Характеристика
    |АВТОУПОРЯДОЧИВАНИЕ";
   DrShad
 
6 - 12.10.16 - 15:25
   1sanekmaloi1
 
7 - 12.10.16 - 15:33
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних
Заменить на 
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(,&ВидЦены) КАК ЦеныНоменклатурыСрезПоследних
   1sanekmaloi1
 
8 - 12.10.16 - 15:36
+(7) Чутка поторопился, так точнее ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(,ВидЦен = &ВидЦены) КАК ЦеныНоменклатурыСрезПоследних
   DrShad
 
9 - 12.10.16 - 15:39
(8) т.е. остальное пусть остается? в частности Остатки без параметров ВТ и т.п.?

ой спешишь
   1sanekmaloi1
 
10 - 12.10.16 - 15:46
(9) а в ТЗ было указано: ..."Но выводить нужно только одну "Оптовую цену"", остальное как говорится за отдельную плату.
 
 Рекламное место пустует
   polkin
 
11 - 12.10.16 - 16:04
(8) программу закрывает
   polkin
 
12 - 12.10.16 - 16:11
"ВЫБРАТЬ
    |    Номенклатура1.Ссылка КАК Номенклатура,
    |    ЕСТЬNULL(ХарактеристикиНоменклатуры.Ссылка, НЕОПРЕДЕЛЕНО) КАК Характеристика,
    |    ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК Цена,
    |    ЕСТЬNULL(ЗапасыНаСкладахОстатки.КоличествоОстаток, 0) КАК Количество,
    |    ЕСТЬNULL(ЗаказыПоставщикамОстатки.КоличествоОстаток, 0) КАК Заказано,
    |    Номенклатура1.ЕдиницаИзмерения,
    |    Номенклатура1.СсылкаWEB,
    |    Номенклатура1.СтавкаНДС,
    |    Номенклатура1.НаименованиеПолное КАК Содержание,
    |    НоменклатураПрисоединенныеФайлы.Ссылка КАК ФайлКартинки,
    |    ЦеныНоменклатурыСрезПоследних.ВидЦен КАК ВидЦен
    |ИЗ
    |    Справочник.Номенклатура КАК Номенклатура1
    |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ВидЦен = &ВидЦены) КАК ЦеныНоменклатурыСрезПоследних
    |            ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ЗапасыНаСкладах.Остатки КАК ЗапасыНаСкладахОстатки
    |            ПО ЦеныНоменклатурыСрезПоследних.Номенклатура = ЗапасыНаСкладахОстатки.Номенклатура
    |                И ЦеныНоменклатурыСрезПоследних.Характеристика = ЗапасыНаСкладахОстатки.Характеристика
    |            ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ХарактеристикиНоменклатуры КАК ХарактеристикиНоменклатуры
    |            ПО (ХарактеристикиНоменклатуры.Ссылка = ЦеныНоменклатурыСрезПоследних.Характеристика)
    |            ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ЗаказыПоставщикам.Остатки КАК ЗаказыПоставщикамОстатки
    |            ПО ЦеныНоменклатурыСрезПоследних.Номенклатура = ЗаказыПоставщикамОстатки.Номенклатура
    |                И ЦеныНоменклатурыСрезПоследних.Характеристика = ЗаказыПоставщикамОстатки.Характеристика
    |        ПО Номенклатура1.Ссылка = ЦеныНоменклатурыСрезПоследних.Номенклатура
    |        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.НоменклатураПрисоединенныеФайлы КАК НоменклатураПрисоединенныеФайлы
    |        ПО Номенклатура1.ФайлКартинки = НоменклатураПрисоединенныеФайлы.Ссылка
    |ГДЕ
    |    Номенклатура1.Родитель = &Родитель
    |
    |УПОРЯДОЧИТЬ ПО
    |    ВидЦен УБЫВ,
    |    Номенклатура,
    |    Характеристика
    |АВТОУПОРЯДОЧИВАНИЕ";


выкидывает из программы, какая то ошибка.
   xXeNoNx
 
13 - 12.10.16 - 16:13
- Напильник!
- Что напильник?
- А что запрос?
   Дарлок
 
14 - 12.10.16 - 16:14
(12) для начала переделай все левые соединения к справочнику номенклатуры, потом параметры ВТ начни юзать
   1sanekmaloi1
 
15 - 12.10.16 - 16:16
Надеюсь Запрос.УстановитьПараметр("ВидЦены", тут ссылка на вид цены); сам дописал?
   1sanekmaloi1
 
16 - 12.10.16 - 16:18
+(15)Если нет, тогда забудь все что я писал,закрой конфигуратор и объясни людям что отныне так и должно работать, имхо это проще доказать чем объяснять тут азы программирования на 1с.

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