|   |   | 
| 
 | Соединение с виртуальной таблицей - параметр + секция ПО | ☑ | ||
|---|---|---|---|---|
| 0
    
        PiotrLoginov 03.12.19✎ 13:50 | 
        Где-то читал.. то ли на ИТС, то ли еще где-то, в продолжительной статье по запросам, что в некоторых случаях мало наложить условие в параметрах виртуальной таблицы. Самый правильный запрос - в котором, дополнительно, накладываемый фильтр продублирован в секции ПО.
 То есть мало указать параметр ВидЦены: ВЫБРАТЬ ВременнаяТаблица.Номенклатура КАК Номенклатура, ВременнаяТаблица.Характеристика КАК Характеристика, ВременнаяТаблица.Витрина КАК Витрина, //отдел в магазине или интернет-сайт... в контексте моего вопроса это неважно ЦеныНоменклатурыСрезПоследних.Цена КАК Цена ИЗ ВременнаяТаблица КАК ВременнаяТаблица ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних( , (Номенклатура, Характеристика) В (ВЫБРАТЬ ВременнаяТаблица.Номенклатура КАК Номенклатура, ВременнаяТаблица.Характеристика КАК Характеристика ИЗ ВременнаяТаблица КАК ВременнаяТаблица) И ВидЦены = &ВидЦены) КАК ЦеныНоменклатурыСрезПоследних ПО ВременнаяТаблица.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура И ВременнаяТаблица.Характеристика = ЦеныНоменклатурыСрезПоследних.Характеристика .. желательно добавить еще одно соединение с виртуальной таблицей: И ВременнаяТаблица.ВидЦены = ЦеныНоменклатурыСрезПоследних.ВидЦены В той статье об этом кратко, но доходчиво сказано.. не могу найти ту статью. Может, кто-то видел ее, или имеет мнение по данному вопросу? | |||
| 2
    
        PiotrLoginov 03.12.19✎ 13:55 | 
        На самом деле далеко не факт, что там говорилось о таблице СрезПоследних. Вероятно, речь была про другие виртуальные таблицы.     | |||
| 3
    
        Mort 03.12.19✎ 13:59 | 
        "Самый правильный запрос - в котором, дополнительно, накладываемый фильтр продублирован в секции ПО"
 Самый правильный запрос получается когда его автор представляет когда и что применяется, а не пляшет вокруг него с бубном. | |||
| 4
    
        PiotrLoginov 03.12.19✎ 15:30 | 
        Жду мнений и ссылок. Ну и сам ищу...     | |||
| 5
    
        D_E_S_131 03.12.19✎ 15:40 | 
        "...не могу найти ту статью." - видимо кто-то по глупости написал, а потом стер, но "в умах людей" осталось.     | |||
| 6
    
        PiotrLoginov 03.12.19✎ 16:19 | 
        (5) дык если бы там только про это было. Там, ЕМНИП, обычные, адекватные вещи были написаны - про секцию ГДЕ, про подзапросы... И в том числе про это.
 Есть впечатление, что такая рекомендация - глупость? Ну ок. Ждем, кто еще выскажется. | |||
| 7
    
        dezss 03.12.19✎ 16:35 | 
        Ну дык если в ВременнаяТаблица есть ВидЦены и там могут быть разные виды цен, то такое соединение обязательно, иначе пойдут дубли строк.     | |||
| 8
    
        dezss 03.12.19✎ 16:36 | 
        И вообще с внутрениим надо быть очень осторожным.     | |||
| 9
    
        PiotrLoginov 03.12.19✎ 16:46 | 
        (7) Там могут быть разные виды цен. Но благодаря наложению параметра "И ВидЦены = &ВидЦены" мы получим только данные виртуальной таблицы только по одному виду цены.
 Внутреннее тут к вопросу отношения не имеет. Фильтрация Временной таблицы нам не нужна. Условимся, что во Временной таблице в поле ВидЦены всегда только тот вид, который нам нужен! | |||
| 10
    
        dezss 03.12.19✎ 17:13 | 
        (9) >> Там могут быть разные виды цен.
 Противоречит этому: >> Условимся, что во Временной таблице в поле ВидЦены всегда только тот вид, который нам нужен! Но если все же условимся о последнем, то это все монопенисуально. | |||
| 11
    
        PiotrLoginov 03.12.19✎ 17:41 | 
        (10) >> >> Там могут быть разные виды цен
 - это про содержимое регистра сведений >> >>в поле ВидЦены всегда только тот вид, который нам нужен - а это про Временную таблицу | |||
| 12
    
        PiotrLoginov 04.12.19✎ 12:58 | 
        Up     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |