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


1С:Предприятие ::

Метки: 

СКД. Параметры виртуальной таблицы. Ошибка: глобальные элементы отбора обязательно должны

Я
   realevgenius
 
13.07.18 - 10:43
Всем  - привет!

Изучаю СКД

Хочу сделать отчетик по номенклатуре, которая есть на остатках

Текст запроса:

ВЫБРАТЬ РАЗРЕШЕННЫЕ
    Номенклатура.Ссылка КАК Номенклатура
{ВЫБРАТЬ
    Номенклатура}
ИЗ
    Справочник.Номенклатура КАК Номенклатура
ГДЕ
    Номенклатура.Ссылка В
            (ВЫБРАТЬ
                ТоварыНаСкладахОстатки.Номенклатура КАК Номенклатура
            ИЗ
                РегистрНакопления.ТоварыНаСкладах.Остатки(, Склад В (&Склады)) КАК ТоварыНаСкладахОстатки
            ГДЕ
                ТоварыНаСкладахОстатки.ВНаличииОстаток >= 0)
{ГДЕ
    Номенклатура.Ссылка.* КАК Номенклатура}

При попытке задать параметр "Склады" ошибка

глобальные элементы отбора обязательно должны использовать поля

Что не так и куда включить?

ПС: левое соединение и проч, не предлагать... Это запросик для примера просто. Номенклатуру надо получить именно с таким условием, чтобы она входила в таблицу остатков

Возможно такое условие использовать вообще в СКД? Просто запросом получается без проблем.

Спасибо!
 
  Рекламное место пустует
   realevgenius
 
1 - 13.07.18 - 10:45
   DrWatson
 
2 - 13.07.18 - 10:51
Замени условие с параметром на фигурные скобки:
{(Склад).*}
Тогда их можно будет задавать в отборах. А так как сейчас - только в параметрах, не очень удобно.
   Timon1405
 
3 - 13.07.18 - 10:54
(1) на второй вкладке галка "доступен список значений"
   realevgenius
 
4 - 13.07.18 - 10:57
(3) Да, пробовал... Такаяж ошибка
   DrWatson
 
5 - 13.07.18 - 10:58
Если всё же параметры. То 2 способа:
1. Задать значения в конфигураторе. Что вряд ли, т.к. склады скорее всего не предопределенные.
2. Убери галку "Ограничение доступности" и задавай параметр (не отбор) в режиме предприятия.
   realevgenius
 
6 - 13.07.18 - 10:59
(2) {(Склад).*}  - не совсем понял, что и где прописать..

РегистрНакопления.ТоварыНаСкладах.Остатки(, {(Склад).*} В (&Склады)) КАК ТоварыНаСкладахОстатки - так ошибка

РегистрНакопления.ТоварыНаСкладах.Остатки(, {Склад.*} В (&Склады)) - ошибка
   DrWatson
 
7 - 13.07.18 - 11:00
(6) Всё условия заменить на {}
Остатки(, {(Склад).*})
   realevgenius
 
8 - 13.07.18 - 11:04
(7) Сделал... В отборе выбрать склады не возможно... НЕту...
видимо, что-то еще требуется
   Tonik992
 
9 - 13.07.18 - 11:05
Устанавливать значение параметра нельзя во вкладке "Отбор" в настройках отчет. Удаляйте его оттуда
   realevgenius
 
10 - 13.07.18 - 11:05
 
 
   realevgenius
 
11 - 13.07.18 - 11:06
(9) А как задать склады? Или такое условие для формирование списка номенклатуры - в принципе не приемлемо?
   Tonik992
 
12 - 13.07.18 - 11:08
Так у вас же вкладка "Параметры" есть. Там и устанавливайте. 
В свойствах пользовательских настроек укажите "Быстрый доступ"
   DrWatson
 
13 - 13.07.18 - 11:11
(10) покажи первую закладку схемы компоновки
   realevgenius
 
14 - 13.07.18 - 11:11
   DrWatson
 
15 - 13.07.18 - 11:13
(14) и где там Остатки(, {(Склад).*}) ?
   realevgenius
 
16 - 13.07.18 - 11:16
(15) Убрал...
От них толку не было... Вообще негде было выбирать склады...
   DrWatson
 
17 - 13.07.18 - 11:17
Что убрал? Ты поставил фигурные скобки как я написал? Отбор появился? Нет - давай скриншот первой закладки.
   realevgenius
 
18 - 13.07.18 - 11:19
(17)

Вот добавил
https://ibb.co/etfy7T

С параметров склады пропали
https://ibb.co/kRVbu8

В польз режиме тоже пусто
https://ibb.co/bVwc1o
   youalex
 
19 - 13.07.18 - 11:21
(0)  а не проще просто из регистра выбрать номенклатуру ?
   realevgenius
 
20 - 13.07.18 - 11:24
(19) Много чего проще...
Надо в запросе, который я показал

Есть СКД... Там много чего наворочено, я не хочу это все это переделывать, во все вникать... просто хочу добавить свое условие, чтобы попадала номенклатура, которая мне нужна, которая есть на складах. А в остальном, чтобы запрос работал как раньше
   DrWatson
 
21 - 13.07.18 - 11:32
(18) ага, понял. Внутри условия фигурные скобки оказывается не проходят. Тогда например такой вариант:
ВЫБРАТЬ
    ТоварыНаСкладахОстатки.Номенклатура КАК Номенклатура
ПОМЕСТИТЬ НоменклатураСОстатками
ИЗ
    РегистрНакопления.ТоварыНаСкладах.Остатки(, {(Склад).*}) КАК ТоварыНаСкладахОстатки
ГДЕ
    ТоварыНаСкладахОстатки.ВНаличииОстаток >= 0
;

////////////////////////////////////////////////////////////////////////////////

ВЫБРАТЬ РАЗРЕШЕННЫЕ
    Номенклатура.Ссылка КАК Номенклатура
{ВЫБРАТЬ
    Номенклатура}
ИЗ
    Справочник.Номенклатура КАК Номенклатура
ГДЕ
    Номенклатура.Ссылка В
            (ВЫБРАТЬ
                НоменклатураСОстатками.Номенклатура КАК Номенклатура
            ИЗ
                НоменклатураСОстатками)
{ГДЕ
    Номенклатура.Ссылка.* КАК Номенклатура}
   DrWatson
 
22 - 13.07.18 - 11:34
Хотя условие ГДЕ лучше заменить на ВНУТРЕННЕЕ СОЕДИНЕНИЕ:
ВЫБРАТЬ РАЗРЕШЕННЫЕ
    Номенклатура.Ссылка КАК Номенклатура
{ВЫБРАТЬ
    Номенклатура}
ИЗ
    НоменклатураСОстатками КАК НоменклатураСОстатками
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК Номенклатура
        ПО НоменклатураСОстатками.Номенклатура = Номенклатура.Ссылка
{ГДЕ
    Номенклатура.Ссылка.* КАК Номенклатура}
   realevgenius
 
23 - 13.07.18 - 11:36
(22) Еще раз повторю, что писал в (0)
ПС: левое соединение и проч, не предлагать... Это запросик для примера просто. Номенклатуру надо получить именно с таким условием, чтобы она входила в таблицу остатков

Тоесть, я понимаю, сделать, как в (0) не реально?
   DrWatson
 
24 - 13.07.18 - 11:42
(23) в (21) написал как в (0). В (22) улучшенный вариант, который так же хорошо встраивается в сложные запросы. Это имхо, не хочешь - бери (21).
   realevgenius
 
25 - 13.07.18 - 11:44
(24) Спасибо большое! Не вчитался, видимо...
Попробую...
   realevgenius
 
26 - 13.07.18 - 11:52
Да, с помощью (21) появились отборы... Но результата нет... ПУсто, отчет ничего не формирует
   realevgenius
 
27 - 13.07.18 - 11:54
Уважаемый   DrWatson. Можете вы мне сделать за плату это дело? Напишите zueval@mail.ru,если есть время
   realevgenius
 
28 - 13.07.18 - 12:04
В итоге все получилось... Я - просто криворукий... DrWatson - предлагаю вознаграждение... Денег на телефон или еще как, пишите в почту
   DrWatson
 
29 - 13.07.18 - 12:11
(26) Не знаю. Вставил в УТ - работает.
   DrWatson
 
30 - 13.07.18 - 12:12
(28) Не, не надо.



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