Имя: Пароль:
1C
1С v8
Подскажите по запросу
0 brenli
 
14.07.17
15:24
Есть запрос, которым я проверяю количество КРС определенного вида на определенном месте учета.

ВЫБРАТЬ
         РеализацияКРСТабличнаяЧасть.ВидКРС КАК ВидКРС,
         СУММА(РеализацияКРСТабличнаяЧасть.Количество) КАК Количество,
         РеализацияКРСТабличнаяЧасть.НомерСтроки КАК НомерСтроки
     ПОМЕСТИТЬ ДокТЧ
     ИЗ
         Документ.РеализацияКРС.ТабличнаяЧасть КАК РеализацияКРСТабличнаяЧасть
     ГДЕ
         РеализацияКРСТабличнаяЧасть.Ссылка = &Ссылка
    
     СГРУППИРОВАТЬ ПО
         РеализацияКРСТабличнаяЧасть.ВидКРС,
         РеализацияКРСТабличнаяЧасть.НомерСтроки     ;
     ВЫБРАТЬ
         ДокТЧ.ВидКРС КАК ВидКРС,
         ДокТЧ.Количество КАК Количество,
         ЕСТЬNULL(УчетКРСОстатки.КоличествоОстаток, 0) КАК КоличествоОстаток,
         ЕСТЬNULL(УчетКРСОстатки.СтоимостьОстаток, 0) КАК СтоимостьОстаток,
        ЕСТЬNULL(УчетКРСОстатки.СуммаОстаток, 0) КАК СуммаОстаток,
         ВЫБОР
             КОГДА  УчетКРСОстатки.КоличествоОстаток > 0
                 ТОГДА ЕСТЬNULL((УчетКРСОстатки.СуммаОстаток / УчетКРСОстатки.КоличествоОстаток) * ДокТЧ.Количество , 0)
             ИНАЧЕ  0
         КОНЕЦ КАК СредняяСтоимостьЗакупа        
     ИЗ
         ДокТЧ КАК ДокТЧ
             ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.УчетКРС.Остатки(
                     &МоментВремени,
                     МестоРазмещения = &МестоРазмещения
                         И ВидКРС В
                             (ВЫБРАТЬ
                                 ДокТЧ.ВидКРС
                             ИЗ
                                 ДокТЧ КАК ДокТЧ)) КАК УчетКРСОстатки
             ПО ДокТЧ.ВидКРС = УчетКРСОстатки.ВидКРС
    
     СГРУППИРОВАТЬ ПО
         ДокТЧ.ВидКРС,
         ДокТЧ.Количество,
         ЕСТЬNULL(УчетКРСОстатки.КоличествоОстаток, 0),
         ЕСТЬNULL(УчетКРСОстатки.СтоимостьОстаток, 0),
         ЕСТЬNULL(УчетКРСОстатки.СуммаОстаток, 0),
         ВЫБОР
             КОГДА  УчетКРСОстатки.КоличествоОстаток > 0
                 ТОГДА ЕСТЬNULL((УчетКРСОстатки.СуммаОстаток / УчетКРСОстатки.КоличествоОстаток) * ДокТЧ.Количество , 0)
             ИНАЧЕ  0
         КОНЕЦ     

Так же мне нужно получать общее количество КРС в месте учета, как грамотнее поступить: через левое соединение приляпать еще один запрос который будет выдавать итоги без учета вида, либо написать новый отдельный запрос чтобы не дублировать значение результата, а выводить одной строкой?