Получить данные в скд через запрос

1. user2026796 15.02.24 15:22 Сейчас в теме
Здравствуйте! Нужно получить через запрос в СКД данные из РегистраСведений.ЦеныНоменклатуры,есть разные базовые виды цен,мне нужно чтоб выдавал отбором два вида,один вид он выводит все окей,а второй вид:Нормативная,не хочет выводить через отбор
Какой запрос нужно написать чтобы вывести? У регистра тип ссылка на Справочник.ВидыЦен
По теме из базы знаний
Найденные решения
6. nomad_irk 76 15.02.24 16:04 Сейчас в теме
(5)
.........
Где
   ЦенНоменклатурыСрезПоследних.Вид В (&ВидыЦен)


Либо
.........
Где
   ЦенНоменклатурыСрезПоследних.Вид.Наименование В ("Наименование вида цены1, Наименование наименование вида цены2")


По такому же принципу можно другие отборы выполнить, если наименования, скажем, совпадают.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. nomad_irk 76 15.02.24 15:45 Сейчас в теме
(1)определить запросом вид цены по наименованию/коду/другому реквизиту справочника "ВидыЦен".
3. user2026796 15.02.24 15:53 Сейчас в теме
(2)можете пример такого запроса дать пожалуйста? Не соображаю пока в правильности запросов...
4. nomad_irk 76 15.02.24 15:54 Сейчас в теме
(3) а какой запрос у вас уже есть?
5. user2026796 15.02.24 15:59 Сейчас в теме
(4)сейчас пока только то,что скомпоновано конструктором
Выбрать
      ЦеныНоменклатурыСрезПоследних.Номенклатура КАК Номенклатура,
ЦеныНоменклатурыСрезПоследних.ВидЦены КАК ВидЦены,
ЦеныНоменклатурыСрезПоследних.Цена КАК Цена,
ЦеныНоменклатурыСрезПоследних.ВидЦены.БазовыйВидЦены КАК ВидЦеныБазовыйВидЦены
Из
РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦенНоменклатурыСрезПоследних
Показать

Стоит отбор по Номенклатуре и БазовыйВидЦены
Когда выбираю в отчете БазовыйВидЦены:База(как пример вот говорю),то все работает и выводится как надо
Когда выбираю там же Нормативная,то все пусто совсем..
6. nomad_irk 76 15.02.24 16:04 Сейчас в теме
(5)
.........
Где
   ЦенНоменклатурыСрезПоследних.Вид В (&ВидыЦен)


Либо
.........
Где
   ЦенНоменклатурыСрезПоследних.Вид.Наименование В ("Наименование вида цены1, Наименование наименование вида цены2")


По такому же принципу можно другие отборы выполнить, если наименования, скажем, совпадают.
7. user2026796 15.02.24 16:09 Сейчас в теме
(6)на оба варианта пишет что поле не найдено:
ЦеныНоменклатурыСрезПоследних.<<?>>Вид.Наименование В
8. nomad_irk 76 15.02.24 16:10 Сейчас в теме
(7)ну блин, ВидЦены должно быть же ж....
9. user2026796 15.02.24 16:11 Сейчас в теме
(8)епрст точно,извиняюсь,туплю уже сижу сам
10. nomad_irk 76 15.02.24 16:16 Сейчас в теме
(9)Условие в параметры виртуальной таблицы надо перетащить:

......
ИЗ
     РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ВидЦены.Наименование В ("Наименование вида цены1, Наименование наименование вида цены2")) КАК ЦенНоменклатурыСрезПоследних

или

......
ИЗ
     РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ВидЦены.Наименование В (&ВидыЦен)) КАК ЦенНоменклатурыСрезПоследних
11. user2026796 15.02.24 16:22 Сейчас в теме
(10)да,так и сделал,но теперь когда добавляю это в отбор,то ругается
Ошибка в элементе отбора:глобальные элементы отбора обязательно должны использовать поля "ПараметрыДанных.ВидыЦен В списке Нормативная
13. nomad_irk 76 15.02.24 16:26 Сейчас в теме
(11)Убрать вообще:

......
ЦеныНоменклатурыСрезПоследних.ВидЦены.БазовыйВидЦены КАК ВидЦеныБазовыйВидЦены
.....


и отбор на поле "ВидЦены" по списку наименований/значений
14. user2026796 15.02.24 16:35 Сейчас в теме
(13)заработало,спасибо большое!!!
15. user2026796 15.02.24 16:57 Сейчас в теме
(13)а не подскажете еще случаем,как сделать так,чтобы выводились только поля в которых нету значений цен вообще?
16. nomad_irk 76 16.02.24 06:45 Сейчас в теме
(15)отбор по цене = 0 или не заполнено
17. user2026796 16.02.24 11:31 Сейчас в теме
(16)сделал так да,но нужно через запрос либо параметр,и никак не могу понять что написать
18. nomad_irk 76 16.02.24 11:38 Сейчас в теме
(17)если цены получаются отдельным набором, то никак не сделать, потому что СКД соединяет наборы левым соединением.

Нужно использовать 1 набор и в нем, используя левое соединение, получать цены, тогда будет возможным сделать вывод "пустых" цен через параметр
19. user2026796 16.02.24 11:46 Сейчас в теме
(18)набор данных один всего
20. nomad_irk 76 16.02.24 11:50 Сейчас в теме
(19)в таком случае
.......
ГДЕ
     ЦенНоменклатурыСрезПоследних.Номенклатура Есть NULL
........


Если через параметр, то можно так:
.......
ГДЕ
     ВЫБОР
          КОГДА &НулевыеЦены
              Тогда ЦенНоменклатурыСрезПоследних.Номенклатура Есть NULL
          ИНАЧЕ ИСТИНА
     КОНЕЦ
........


Параметр "НулевыеЦены" типа "Булево".
21. user2026796 16.02.24 12:04 Сейчас в теме
(20)первый вариант ничего не выдал,второй все вообще выдал :(
22. nomad_irk 76 16.02.24 12:11 Сейчас в теме
(21)если первый вариант ничего не выдает, то значит можно простой отбор по цена = 0 делать, тогда это будут именно установленные 0 цены.
23. user2026796 16.02.24 12:13 Сейчас в теме
(22)а вот в том и проблема что когда поставил отбор по цене = 0,то руководитель сказал что нужно через параметр сделать либо в запросе))
24. nomad_irk 76 16.02.24 12:36 Сейчас в теме
(23)вот уже 24 сообщение, а полного запроса для формирования отчета так и не видно.
Все что было раньше - это фантазии на тему.....
12. user2026796 15.02.24 16:23 Сейчас в теме
(10)отбор добавляю в настройках отчёта и в параметрах изначально поставился тип строка,поменял на ссылку на справочникВидыЦен
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот