|   |   | 
| 
 | Какой из фрагментов кода более правильный? | ☑ | ||
|---|---|---|---|---|
| 0
    
        makfromkz 14.06.23✎ 08:38 | 
        ВЫБОР
 КОГДА ТоварыКПоступлениюОстаткиНаДату.ДокументПоступления ССЫЛКА Документ.ЗаказПоставщику ТОГДА ТоварыКПоступлениюОстаткиНаДату.ДокументПоступления.СуммаДокумента КОНЕЦ КАК СуммаЗаказа ////////////////////////////// //ИЛИ ВЫБОР КОГДА ТоварыКПоступлениюОстаткиНаДату.ДокументПоступления ССЫЛКА Документ.ЗаказПоставщику ТОГДА ВЫРАЗИТЬ(ТоварыКПоступлениюОстаткиНаДату.ДокументПоступления КАК Документ.ЗаказПоставщику).СуммаДокумента КОНЕЦ КАК СуммаЗаказа | |||
| 1
    
        2S 14.06.23✎ 08:39 | 
        хм, а зачем выражать если и так условие на вид документа?     | |||
| 2
    
        Мультук 14.06.23✎ 08:48 | 
        (0) 
 Не могу найти пруф, но второй вариант правильный. | |||
| 3
    
        vicof 14.06.23✎ 08:50 | 
        Второй вариант правильный, если документ поступления составного типа.     | |||
| 4
    
        SleepyHead 14.06.23✎ 08:52 | 
        Мне кажется, еще правильнее выбрать во временную таблицу документы заказа поставщикам, а потом выбирать сумму из этой временной таблицы.     | |||
| 5
    
        Donkey_hot 14.06.23✎ 09:03 | 
        (0) Можно в инструментах разработчика посмотреть план запроса к СУБД. Но интуитивно кажется, что в первом случае прицепит все возможные таблицы.     | |||
| 6
    
        Гипервизор 14.06.23✎ 09:08 | 
        (0) А если документ не Заказ? Зачем вам NULL?
 (2) https://its.1c.ru/db/v8std/content/654/hdoc https://its.1c.ru/db/metod8dev/content/2662/hdoc | |||
| 7
    
        НафНаф 14.06.23✎ 09:10 | 
        ВЫРАЗИТЬ(ТоварыКПоступлениюОстаткиНаДату.ДокументПоступления КАК Документ.ЗаказПоставщику).СуммаДокумента КАК СуммаЗаказа
 можно обернуть, если NULL критично: ЕСТЬNULL(ВЫРАЗИТЬ(ТоварыКПоступлениюОстаткиНаДату.ДокументПоступления КАК Документ.ЗаказПоставщику).СуммаДокумента,0) КАК СуммаЗаказа если видов документов больше одного, то второй вариант: ВЫБОР КОГДА ТоварыКПоступлениюОстаткиНаДату.ДокументПоступления ССЫЛКА Документ.ЗаказПоставщику ТОГДА ВЫРАЗИТЬ(ТоварыКПоступлениюОстаткиНаДату.ДокументПоступления КАК Документ.ЗаказПоставщику).СуммаДокумента КОГДА ТоварыКПоступлениюОстаткиНаДату.ДокументПоступления ССЫЛКА Документ.ЗаказКлиента ТОГДА ВЫРАЗИТЬ(ТоварыКПоступлениюОстаткиНаДату.ДокументПоступления КАК Документ.ЗаказКлиента).СуммаДокумента КОНЕЦ КАК СуммаЗаказа | |||
| 8
    
        makfromkz 15.06.23✎ 11:02 | 
        Всем СПАСИБО за ответы!     | |||
| 9
    
        Fragster 15.06.23✎ 11:20 | 
        можно ещё явное левое соединение вместо неявного сделать     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |