|
Динамический список в карточке товара
| ☑ |
0
Roma1314704
24.05.18
✎
00:39
|
Задача вывести в карточку товара значения цен с РегистраСведений
Добавляю в карточку товара Реквизит динамический список в него
добавляю запрос
ВЫБРАТЬ
Товар.Ссылка КАК Ссылка,
Цены.ЦенаЗакупочнаяДоллар,
Цены.ЦенаОптовая,
Цены.ЦенаПродажи
ИЗ
Справочник.Номенклатура КАК Товар
ЛЕВОЕ СОЕДИНЕНИЕ
РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК Цены
ПО (Товар.Ссылка = Цены.Номенклатура)
ГДЕ
Ссылка = Цены.Номенклатура
В итоге получаю список всех товаров со справочника
Как получить значения цен только 1 товара (текущего)?
Что не так?
|
|
1
Злопчинский
24.05.18
✎
00:40
|
(0) где фильтр по текущей номенклатуре на список цен?
|
|
2
Roma1314704
24.05.18
✎
00:41
|
Не могу понять что не так?
|
|
3
Roma1314704
24.05.18
✎
00:44
|
С таблице получаю весь список товаров со справочника номенклатура , а нужно получить значения только текущей карточки
|
|
4
Злопчинский
24.05.18
✎
00:49
|
я не спец по запросам но нафига здесь вообще ВЕСЬ СПРАВОЧНИК номенклатуры левым соединением коннектится с ценами?
почему нельзя просто список цен отфильтровать по условию типа
Выбрать Цены
где Цены.Номенклатура = ТекущаяСсылкаОбъектаКарточкиТовара
???
|
|
5
Roma1314704
24.05.18
✎
00:57
|
ТекущаяСсылкаОбъектаКарточкиТовара
как все таки правильно ссылка на объект?
|
|
6
Злопчинский
24.05.18
✎
00:58
|
(5) а я откуда знаю как правильно? ты восьмерчоник - ты и должен знать.
я - мохнатый клюшечник
|
|
7
Roma1314704
24.05.18
✎
01:20
|
ВЫБРАТЬ
ЦеныНоменклатурыСрезПоследних.Номенклатура КАК Номенклатура,
ЦеныНоменклатурыСрезПоследних.ЦенаЗакупочная КАК ЦенаЗакупочная,
ЦеныНоменклатурыСрезПоследних.ЦенаПродажи КАК ЦенаПродажи
ИЗ
РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних
ГДЕ
ЦеныНоменклатурыСрезПоследних.Номенклатура = &Номенклатура
+ ПриСозданииНаСервере еще нужно прописать
Цены.Параметры.УстановитьЗначениеПараметра("Номенклатура",Объект.Ссылка);
Иначе не работает
|
|
8
Roma1314704
24.05.18
✎
01:21
|
если это не правильный вариант - поправьте пож.
|
|
9
Eiffil123
24.05.18
✎
01:54
|
(7) Почти всё верно, но нужно фильтр по номенклатуре устанавливать в параметрах виртуальной таблицы, а не в условии ГДЕ:
ИЗ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, Номенклатура = &Номенклатура) КАК ЦеныНоменклатурыСрезПоследних
При этом срез последних сформируется только по номенклатуре. А если делать фильтр в условии "ГДЕ", тогда сначала будет получена таблица среза последних по всей номенклатуре, потом на нее наложится условие (хотя может sql это как-то и оптимизирует, но полагаться на это не надо).
|
|
10
Сияющий в темноте
24.05.18
✎
09:42
|
У вас так часто цены меняются что нужно базу динамическим списком теребить?простой запрос и кнопка обновить не спасают?особенно,если хочется цены на дату,а динамику цен лучше отчетом и графически
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший