Имя: Пароль:
1C
1С v8
получение остатков на складах УТ 10.3
0 LivingStar
 
13.08.13
06:48
Подскажите если не трудно, остатки товаров на складах в УТ 10.3 можно извлечь из регистра накопления ТоварыНаСкладах ? Это будет правильно в плане корректности получения остатков товаров?
1 floody
 
13.08.13
06:49
как нет-то?
2 LehhaK
 
13.08.13
06:50
Ну тока если тебе свободный остаток нужен, то надо еще вычесть ТоварыВРезервеНаСкладах и ТОварыКПередачеСоСклада
3 LivingStar
 
13.08.13
06:52
С качеством "Новый" да? Так как есть другие виды качества умножающие записи по номенклатуре.
4 LivingStar
 
13.08.13
06:53
(2) Из количества выборки ТовырыНаСкладах по номенклатуре вычитать количество по номенклатуре ТоварыВРезервеНаСкладах и ТоваровКПеречачеСоСклада?
5 zva
 
13.08.13
06:56
Типовые отчеты чем не угодили?
6 LivingStar
 
13.08.13
06:57
(2) ТоварыВРезервеНвСкладах брать тоже остатки?
7 LivingStar
 
13.08.13
06:58
(5) Подскажите какие на пример? Делаю форму поставщика, она не типовая..... Но если в типовом есть готовый адекватный запрос, пригодился бы, если длоступен для извлечения...
8 Cyberhawk
 
13.08.13
07:00
Анализ доступности товаров на складах
9 LehhaK
 
13.08.13
07:01
(4) (6) да
10 Мимохожий Однако
 
13.08.13
07:02
(7)Прикалываешься? Ведомость товаров на складе.
Ищи фразу Запрос.выполнить(). А в отладчике останови и напиши Запрос.Текст. Получишь исходный запрос.
11 LivingStar
 
13.08.13
08:36
(10) Ок! Спасибо!!!

Пока вот такой запрос написал, в итоговом почему то нет значений в КоличествеНарезерве, КоличествеКПередаче....

ВЫБРАТЬ
    ТоварыНаСкладахОстатки.Склад,
    ТоварыНаСкладахОстатки.Номенклатура,
    ТоварыНаСкладахОстатки.ХарактеристикаНоменклатуры,
    ТоварыНаСкладахОстатки.СерияНоменклатуры,
    ТоварыНаСкладахОстатки.Качество,
    ТоварыНаСкладахОстатки.КоличествоОстаток
ПОМЕСТИТЬ ВТ_ОстаткиТоваровНаСкладах
ИЗ
    РегистрНакопления.ТоварыНаСкладах.Остатки(&КонДата, Склад = &Склад) КАК ТоварыНаСкладахОстатки
ГДЕ
    ТоварыНаСкладахОстатки.Качество = ЗНАЧЕНИЕ(Справочник.Качество.Новый)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ТоварыВРезервеНаСкладахОстатки.Склад,
    ТоварыВРезервеНаСкладахОстатки.Номенклатура,
    ТоварыВРезервеНаСкладахОстатки.ДокументРезерва,
    ТоварыВРезервеНаСкладахОстатки.КоличествоОстаток
ПОМЕСТИТЬ ВТ_ТоварыВРезервеНаСкладахОстатки
ИЗ
    РегистрНакопления.ТоварыВРезервеНаСкладах.Остатки(&КонДата, Склад = &Склад) КАК ТоварыВРезервеНаСкладахОстатки
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ТоварыКПередачеСоСкладовОстатки.Склад,
    ТоварыКПередачеСоСкладовОстатки.Номенклатура,
    ТоварыКПередачеСоСкладовОстатки.Качество,
    ТоварыКПередачеСоСкладовОстатки.КоличествоОстаток
ПОМЕСТИТЬ ВТ_ТоварыКПередачеСоСкладовОстатки
ИЗ
    РегистрНакопления.ТоварыКПередачеСоСкладов.Остатки(&КонДата, Склад = &Склад) КАК ТоварыКПередачеСоСкладовОстатки
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВТ_ОстаткиТоваровНаСкладах.Склад,
    ВТ_ОстаткиТоваровНаСкладах.Номенклатура,
    ВТ_ОстаткиТоваровНаСкладах.Качество,
    ВТ_ОстаткиТоваровНаСкладах.КоличествоОстаток,
    ВТ_ТоварыВРезервеНаСкладахОстатки.КоличествоОстаток КАК КоличествоНаРезерве,
    ВТ_ТоварыКПередачеСоСкладовОстатки.КоличествоОстаток КАК КоличествоКПередаче,
    ВТ_ОстаткиТоваровНаСкладах.КоличествоОстаток - ВТ_ТоварыВРезервеНаСкладахОстатки.КоличествоОстаток - ВТ_ТоварыКПередачеСоСкладовОстатки.КоличествоОстаток КАК ОСТАТОК
ИЗ
    ВТ_ОстаткиТоваровНаСкладах КАК ВТ_ОстаткиТоваровНаСкладах
        ЛЕВОЕ СОЕДИНЕНИЕ ВТ_ТоварыВРезервеНаСкладахОстатки КАК ВТ_ТоварыВРезервеНаСкладахОстатки
        ПО ВТ_ОстаткиТоваровНаСкладах.Номенклатура = ВТ_ТоварыВРезервеНаСкладахОстатки.Номенклатура
        ЛЕВОЕ СОЕДИНЕНИЕ ВТ_ТоварыКПередачеСоСкладовОстатки КАК ВТ_ТоварыКПередачеСоСкладовОстатки
        ПО ВТ_ОстаткиТоваровНаСкладах.Номенклатура = ВТ_ТоварыКПередачеСоСкладовОстатки.Номенклатура
12 Чайник Рассела
 
13.08.13
08:49
(11) если товар лежит на розничных складах ты ничего не увидишь
13 LivingStar
 
14.08.13
07:38
(12) Ну а по сути запрос верный? Мне нужно выбрать остатки по складам в итоге и номенклатуре и свободные остатки. Подскажите кому не трудно как правильно это сделать в УТ 10.3 ?
14 Лодырь
 
14.08.13
07:41
Посмотри отчет "анализ доступности товаров на складах"
15 LivingStar
 
14.08.13
07:47
(14) Я стал смотреть как посоветовали ВедомостьТоваровНаСкладах, так там нет запроса ни ф модуле формы отчеты ни в моделе объекта. По коду в отладчике вывалился в модуль УниверсальныйОтчет, что ли и там было только Построитель.Выполнить(), как запрос посмотреть пока не разобрался ((( Не знаю можно ли это вообще там....
16 LivingStar
 
14.08.13
07:52
А что в условии на регистр накопления нельзя наложить
Склад = &Склад, Номенклатура В ИЕРАРХИИ(&Списокноменклатуры) ? Пишет, - "Не верные параметры РегистрНакопления.ТоварыНаСкладах.Остатки 1" !!!
17 LivingStar
 
14.08.13
07:55
вот этот запрос фигню выбирает??

ВЫБРАТЬ
    ТоварыНаСкладахОстатки.Склад,
    ТоварыНаСкладахОстатки.Номенклатура,
    ТоварыНаСкладахОстатки.ХарактеристикаНоменклатуры,
    ТоварыНаСкладахОстатки.СерияНоменклатуры,
    ТоварыНаСкладахОстатки.Качество,
    ТоварыНаСкладахОстатки.КоличествоОстаток
ИЗ
    РегистрНакопления.ТоварыНаСкладах.Остатки(&КонДата, Номенклатура В ИЕРАРХИИ (&СписокНоменклатуры)) КАК ТоварыНаСкладахОстатки
ГДЕ
    ТоварыНаСкладахОстатки.Склад = &Склад
18 Лодырь
 
14.08.13
08:00
У тебя ошибка в условиях. Условие на регистр оно одно. Может быть составным, но уж точно не представляет собой список условий разделенных запятыми как в (16). А в (17) в принципе все верно но лучше бы затащить условие на склад в условие на регистр.

Склад = &Склад и Номенклатура В ИЕРАРХИИ (&СписокНоменклатуры)
19 LivingStar
 
14.08.13
08:02
(18) а через И, понятно, спасибо!!!! протормозил.....
20 LivingStar
 
14.08.13
08:04
(18) Для получения остатков запрос (17) можно использовать?

Из модуля отчета "АнализдоступноститоваровНаСкладах" вытащил вот такой запрос.... с множеством полей, в принципе можно выгрузить в таблицу свернуть, незнаю корректные ли данные выдает...

ВЫБРАТЬ РАЗРЕШЕННЫЕ
    ВложенныйЗапрос.Склад КАК Склад,
    ВложенныйЗапрос.Номенклатура КАК Номенклатура,
    ВложенныйЗапрос.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    ВложенныйЗапрос.СерияНоменклатуры КАК СерияНоменклатуры,
    ВложенныйЗапрос.Качество КАК Качество,
    ВложенныйЗапрос.ДокументОснование КАК ДокументОснование,
    ПРЕДСТАВЛЕНИЕ(ВложенныйЗапрос.Склад) КАК СкладПредставление,
    ПРЕДСТАВЛЕНИЕ(ВложенныйЗапрос.Номенклатура) КАК НоменклатураПредставление,
    ПРЕДСТАВЛЕНИЕ(ВложенныйЗапрос.ХарактеристикаНоменклатуры) КАК ХарактеристикаНоменклатурыПредставление,
    ПРЕДСТАВЛЕНИЕ(ВложенныйЗапрос.СерияНоменклатуры) КАК СерияНоменклатурыПредставление,
    ПРЕДСТАВЛЕНИЕ(ВложенныйЗапрос.Качество) КАК КачествоПредставление,
    ПРЕДСТАВЛЕНИЕ(ВложенныйЗапрос.ДокументОснование) КАК ДокументОснованиеПредставление,
    ВложенныйЗапрос.КоличествоОстаток КАК КоличествоОстаток,
    ВложенныйЗапрос.КоличествоВРезерве КАК КоличествоВРезерве,
    ВложенныйЗапрос.КоличествоКПолучению КАК КоличествоКПолучению,
    ВложенныйЗапрос.КоличествоКПередаче КАК КоличествоКПередаче,
    ВложенныйЗапрос.КоличествоЗаказаноУПоставщиков КАК КоличествоЗаказаноУПоставщиков,
    ВложенныйЗапрос.КоличествоОстаток - ВложенныйЗапрос.КоличествоВРезерве - ВложенныйЗапрос.КоличествоКПередаче КАК СвободныйОстаток,
    ВложенныйЗапрос.КоличествоОстаток * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК КоличествоОстатокБазовыхЕдиниц,
    ВложенныйЗапрос.КоличествоВРезерве * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК КоличествоВРезервеБазовыхЕдиниц,
    ВложенныйЗапрос.КоличествоКПолучению * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК КоличествоКПолучениюБазовыхЕдиниц,
    ВложенныйЗапрос.КоличествоКПередаче * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК КоличествоКПередачеБазовыхЕдиниц,
    ВложенныйЗапрос.КоличествоЗаказаноУПоставщиков * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК КоличествоЗаказаноУПоставщиковБазовыхЕдиниц,
    (ВложенныйЗапрос.КоличествоОстаток - ВложенныйЗапрос.КоличествоВРезерве - ВложенныйЗапрос.КоличествоКПередаче) * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК СвободныйОстатокБазовыхЕдиниц,
    ВложенныйЗапрос.КоличествоОстаток * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ВложенныйЗапрос.Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК КоличествоОстатокЕдиницОтчетов,
    ВложенныйЗапрос.КоличествоВРезерве * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ВложенныйЗапрос.Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК КоличествоВРезервеЕдиницОтчетов,
    ВложенныйЗапрос.КоличествоКПолучению * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ВложенныйЗапрос.Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК КоличествоКПолучениюЕдиницОтчетов,
    ВложенныйЗапрос.КоличествоКПередаче * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ВложенныйЗапрос.Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК КоличествоКПередачеЕдиницОтчетов,
    ВложенныйЗапрос.КоличествоЗаказаноУПоставщиков * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ВложенныйЗапрос.Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК КоличествоЗаказаноУПоставщиковЕдиницОтчетов,
    (ВложенныйЗапрос.КоличествоОстаток - ВложенныйЗапрос.КоличествоВРезерве - ВложенныйЗапрос.КоличествоКПередаче) * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ВложенныйЗапрос.Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК СвободныйОстатокЕдиницОтчетов
{ВЫБРАТЬ
    Склад.*,
    Номенклатура.*,
    ХарактеристикаНоменклатуры.*,
    СерияНоменклатуры.*,
    Качество.*,
    ДокументОснование.*,
    КоличествоОстаток,
    КоличествоВРезерве,
    КоличествоКПолучению,
    КоличествоКПередаче,
    КоличествоЗаказаноУПоставщиков,
    СвободныйОстаток,
    КоличествоОстатокБазовыхЕдиниц,
    КоличествоВРезервеБазовыхЕдиниц,
    КоличествоКПолучениюБазовыхЕдиниц,
    КоличествоКПередачеБазовыхЕдиниц,
    КоличествоЗаказаноУПоставщиковБазовыхЕдиниц,
    СвободныйОстатокБазовыхЕдиниц,
    КоличествоОстатокЕдиницОтчетов,
    КоличествоВРезервеЕдиницОтчетов,
    КоличествоКПолучениюЕдиницОтчетов,
    КоличествоКПередачеЕдиницОтчетов,
    КоличествоЗаказаноУПоставщиковЕдиницОтчетов,
    СвободныйОстатокЕдиницОтчетов}
ИЗ
    (ВЫБРАТЬ
        ВложенныйЗапрос.Склад КАК Склад,
        ВложенныйЗапрос.Номенклатура КАК Номенклатура,
        ВложенныйЗапрос.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
        ВложенныйЗапрос.СерияНоменклатуры КАК СерияНоменклатуры,
        ВложенныйЗапрос.Качество КАК Качество,
        ВложенныйЗапрос.ДокументОснование КАК ДокументОснование,
        СУММА(ВложенныйЗапрос.КоличествоОстаток) КАК КоличествоОстаток,
        СУММА(ВложенныйЗапрос.КоличествоВРезерве) КАК КоличествоВРезерве,
        СУММА(ВложенныйЗапрос.КоличествоКПолучению) КАК КоличествоКПолучению,
        СУММА(ВложенныйЗапрос.КоличествоКПередаче) КАК КоличествоКПередаче,
        СУММА(ВложенныйЗапрос.КоличествоЗаказаноУПоставщиков) КАК КоличествоЗаказаноУПоставщиков
    {ВЫБРАТЬ
        Склад,
        Номенклатура,
        ХарактеристикаНоменклатуры,
        СерияНоменклатуры,
        Качество,
        ДокументОснование}
    ИЗ
        (ВЫБРАТЬ
            ТоварыНаСкладахОстатки.Склад КАК Склад,
            ТоварыНаСкладахОстатки.Номенклатура КАК Номенклатура,
            ТоварыНаСкладахОстатки.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
            ТоварыНаСкладахОстатки.СерияНоменклатуры КАК СерияНоменклатуры,
            ТоварыНаСкладахОстатки.Качество КАК Качество,
            НЕОПРЕДЕЛЕНО КАК ДокументОснование,
            ТоварыНаСкладахОстатки.КоличествоОстаток КАК КоличествоОстаток,
            0 КАК КоличествоВРезерве,
            0 КАК КоличествоКПолучению,
            0 КАК КоличествоКПередаче,
            0 КАК КоличествоЗаказаноУПоставщиков
        ИЗ
            РегистрНакопления.ТоварыНаСкладах.Остатки(&ДатаКон, {(Склад).* КАК Склад, (Качество).* КАК Качество, (Номенклатура).* КАК Номенклатура, (ХарактеристикаНоменклатуры).* КАК ХарактеристикаНоменклатуры, (СерияНоменклатуры).* КАК СерияНоменклатуры}) КАК ТоварыНаСкладахОстатки
        
        ОБЪЕДИНИТЬ ВСЕ
        
        ВЫБРАТЬ
            ТоварыВРозницеОстатки.Склад,
            ТоварыВРозницеОстатки.Номенклатура,
            ТоварыВРозницеОстатки.ХарактеристикаНоменклатуры,
            ТоварыВРозницеОстатки.СерияНоменклатуры,
            ТоварыВРозницеОстатки.Качество,
            НЕОПРЕДЕЛЕНО,
            ТоварыВРозницеОстатки.КоличествоОстаток,
            0,
            0,
            0,
            0
        ИЗ
            РегистрНакопления.ТоварыВРознице.Остатки(&ДатаКон, {(Склад).* КАК Склад, (Номенклатура).* КАК Номенклатура, (ХарактеристикаНоменклатуры).* КАК ХарактеристикаНоменклатуры, (СерияНоменклатуры).* КАК СерияНоменклатуры, (Качество).* КАК Качество}) КАК ТоварыВРозницеОстатки
        
        ОБЪЕДИНИТЬ ВСЕ
        
        ВЫБРАТЬ
            ТоварыВРезервеНаСкладахОстатки.Склад,
            ТоварыВРезервеНаСкладахОстатки.Номенклатура,
            ТоварыВРезервеНаСкладахОстатки.ХарактеристикаНоменклатуры,
            ТоварыВРезервеНаСкладахОстатки.СерияНоменклатуры,
            ЗНАЧЕНИЕ(Справочник.Качество.Новый),
            ТоварыВРезервеНаСкладахОстатки.ДокументРезерва,
            0,
            ТоварыВРезервеНаСкладахОстатки.КоличествоОстаток,
            0,
            0,
            0
        ИЗ
            РегистрНакопления.ТоварыВРезервеНаСкладах.Остатки(&ДатаКон, {(Склад).* КАК Склад, (Номенклатура).* КАК Номенклатура, (ХарактеристикаНоменклатуры).* КАК ХарактеристикаНоменклатуры, (СерияНоменклатуры).* КАК СерияНоменклатуры, (ДокументРезерва).* КАК ДокументОснование}) КАК ТоварыВРезервеНаСкладахОстатки
        {ГДЕ
            (ЗНАЧЕНИЕ(Справочник.Качество.Новый)) КАК Качество}
        
        ОБЪЕДИНИТЬ ВСЕ
        
        ВЫБРАТЬ
            ТоварыКПолучениюНаСкладыОстатки.Склад,
            ТоварыКПолучениюНаСкладыОстатки.Номенклатура,
            ТоварыКПолучениюНаСкладыОстатки.ХарактеристикаНоменклатуры,
            ТоварыКПолучениюНаСкладыОстатки.СерияНоменклатуры,
            ТоварыКПолучениюНаСкладыОстатки.Качество,
            ТоварыКПолучениюНаСкладыОстатки.ДокументПолучения,
            0,
            0,
            ТоварыКПолучениюНаСкладыОстатки.КоличествоОстаток,
            0,
            0
        ИЗ
            РегистрНакопления.ТоварыКПолучениюНаСклады.Остатки(&ДатаКон, {(Склад).* КАК Склад, (Номенклатура).* КАК Номенклатура, (ХарактеристикаНоменклатуры).* КАК ХарактеристикаНоменклатуры, (СерияНоменклатуры).* КАК СерияНоменклатуры, (Качество).* КАК Качество, (ДокументПолучения).* КАК ДокументОснование}) КАК ТоварыКПолучениюНаСкладыОстатки
        
        ОБЪЕДИНИТЬ ВСЕ
        
        ВЫБРАТЬ
            ТоварыКПередачеСоСкладовОстатки.Склад,
            ТоварыКПередачеСоСкладовОстатки.Номенклатура,
            ТоварыКПередачеСоСкладовОстатки.ХарактеристикаНоменклатуры,
            ТоварыКПередачеСоСкладовОстатки.СерияНоменклатуры,
            ТоварыКПередачеСоСкладовОстатки.Качество,
            ТоварыКПередачеСоСкладовОстатки.ДокументПередачи,
            0,
            0,
            0,
            ТоварыКПередачеСоСкладовОстатки.КоличествоОстаток,
            0
        ИЗ
            РегистрНакопления.ТоварыКПередачеСоСкладов.Остатки(&ДатаКон, {(Склад).* КАК Склад, (Номенклатура).* КАК Номенклатура, (ХарактеристикаНоменклатуры).* КАК ХарактеристикаНоменклатуры, (СерияНоменклатуры).* КАК СерияНоменклатуры, (Качество).* КАК Качество, (ДокументПередачи).* КАК ДокументОснование}) КАК ТоварыКПередачеСоСкладовОстатки
        
        ОБЪЕДИНИТЬ ВСЕ
        
        ВЫБРАТЬ
            ЗаказыПоставщикамОстатки.ЗаказПоставщику.Склад,
            ЗаказыПоставщикамОстатки.Номенклатура,
            ЗаказыПоставщикамОстатки.ХарактеристикаНоменклатуры,
            ЗНАЧЕНИЕ(Справочник.СерииНоменклатуры.ПустаяСсылка),
            ЗНАЧЕНИЕ(Справочник.Качество.Новый),
            ЗаказыПоставщикамОстатки.ЗаказПоставщику,
            0,
            0,
            0,
            0,
            ЗаказыПоставщикамОстатки.КоличествоОстаток
        ИЗ
            РегистрНакопления.ЗаказыПоставщикам.Остатки(&ДатаКон, {(ЗаказПоставщику.Склад).* КАК Склад, (Номенклатура).* КАК Номенклатура, (ХарактеристикаНоменклатуры).* КАК ХарактеристикаНоменклатуры, (ЗаказПоставщику).* КАК ДокументОснование}) КАК ЗаказыПоставщикамОстатки
        {ГДЕ
            (ЗНАЧЕНИЕ(Справочник.Качество.Новый)) КАК Качество}) КАК ВложенныйЗапрос
    
    СГРУППИРОВАТЬ ПО
        ВложенныйЗапрос.Склад,
        ВложенныйЗапрос.Номенклатура,
        ВложенныйЗапрос.ХарактеристикаНоменклатуры,
        ВложенныйЗапрос.СерияНоменклатуры,
        ВложенныйЗапрос.Качество,
        ВложенныйЗапрос.ДокументОснование) КАК ВложенныйЗапрос
{ГДЕ
    ВложенныйЗапрос.Качество.* КАК Качество,
    ВложенныйЗапрос.КоличествоОстаток КАК КоличествоОстаток,
    ВложенныйЗапрос.КоличествоВРезерве КАК КоличествоВРезерве,
    ВложенныйЗапрос.КоличествоКПолучению КАК КоличествоКПолучению,
    ВложенныйЗапрос.КоличествоКПередаче КАК КоличествоКПередаче,
    ВложенныйЗапрос.КоличествоЗаказаноУПоставщиков КАК КоличествоЗаказаноУПоставщиков,
    (ВложенныйЗапрос.КоличествоОстаток - ВложенныйЗапрос.КоличествоВРезерве - ВложенныйЗапрос.КоличествоКПередаче) КАК СвободныйОстаток,
    (ВложенныйЗапрос.КоличествоОстаток * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент) КАК КоличествоОстатокБазовыхЕдиниц,
    (ВложенныйЗапрос.КоличествоВРезерве * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент) КАК КоличествоВРезервеБазовыхЕдиниц,
    (ВложенныйЗапрос.КоличествоКПолучению * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент) КАК КоличествоКПолучениюБазовыхЕдиниц,
    (ВложенныйЗапрос.КоличествоКПередаче * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент) КАК КоличествоКПередачеБазовыхЕдиниц,
    (ВложенныйЗапрос.КоличествоЗаказаноУПоставщиков * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент) КАК КоличествоЗаказаноУПоставщиковБазовыхЕдиниц,
    ((ВложенныйЗапрос.КоличествоОстаток - ВложенныйЗапрос.КоличествоВРезерве - ВложенныйЗапрос.КоличествоКПередаче) * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент) КАК СвободныйОстатокБазовыхЕдиниц,
    (ВложенныйЗапрос.КоличествоОстаток * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ВложенныйЗапрос.Номенклатура.ЕдиницаДляОтчетов.Коэффициент) КАК КоличествоОстатокЕдиницОтчетов,
    (ВложенныйЗапрос.КоличествоВРезерве * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ВложенныйЗапрос.Номенклатура.ЕдиницаДляОтчетов.Коэффициент) КАК КоличествоВРезервеЕдиницОтчетов,
    (ВложенныйЗапрос.КоличествоКПолучению * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ВложенныйЗапрос.Номенклатура.ЕдиницаДляОтчетов.Коэффициент) КАК КоличествоКПолучениюЕдиницОтчетов,
    (ВложенныйЗапрос.КоличествоКПередаче * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ВложенныйЗапрос.Номенклатура.ЕдиницаДляОтчетов.Коэффициент) КАК КоличествоКПередачеЕдиницОтчетов,
    (ВложенныйЗапрос.КоличествоЗаказаноУПоставщиков * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ВложенныйЗапрос.Номенклатура.ЕдиницаДляОтчетов.Коэффициент) КАК КоличествоЗаказаноУПоставщиковЕдиницОтчетов,
    ((ВложенныйЗапрос.КоличествоОстаток - ВложенныйЗапрос.КоличествоВРезерве - ВложенныйЗапрос.КоличествоКПередаче) * ВложенныйЗапрос.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент / ВложенныйЗапрос.Номенклатура.ЕдиницаДляОтчетов.Коэффициент) КАК СвободныйОстатокЕдиницОтчетов}
{УПОРЯДОЧИТЬ ПО
    Склад.*,
    Номенклатура.*,
    ХарактеристикаНоменклатуры.*,
    СерияНоменклатуры.*,
    Качество.*,
    ДокументОснование.*,
    КоличествоОстаток,
    КоличествоВРезерве,
    КоличествоКПолучению,
    КоличествоКПередаче,
    КоличествоЗаказаноУПоставщиков,
    СвободныйОстаток,
    КоличествоОстатокБазовыхЕдиниц,
    КоличествоВРезервеБазовыхЕдиниц,
    КоличествоКПолучениюБазовыхЕдиниц,
    КоличествоКПередачеБазовыхЕдиниц,
    КоличествоЗаказаноУПоставщиковБазовыхЕдиниц,
    СвободныйОстатокБазовыхЕдиниц,
    КоличествоОстатокЕдиницОтчетов,
    КоличествоВРезервеЕдиницОтчетов,
    КоличествоКПолучениюЕдиницОтчетов,
    КоличествоКПередачеЕдиницОтчетов,
    КоличествоЗаказаноУПоставщиковЕдиницОтчетов,
    СвободныйОстатокЕдиницОтчетов}
ИТОГИ
    СУММА(КоличествоОстаток),
    СУММА(КоличествоВРезерве),
    СУММА(КоличествоКПолучению),
    СУММА(КоличествоКПередаче),
    СУММА(КоличествоЗаказаноУПоставщиков),
    СУММА(СвободныйОстаток),
    СУММА(КоличествоОстатокБазовыхЕдиниц),
    СУММА(КоличествоВРезервеБазовыхЕдиниц),
    СУММА(КоличествоКПолучениюБазовыхЕдиниц),
    СУММА(КоличествоКПередачеБазовыхЕдиниц),
    СУММА(КоличествоЗаказаноУПоставщиковБазовыхЕдиниц),
    СУММА(СвободныйОстатокБазовыхЕдиниц),
    СУММА(КоличествоОстатокЕдиницОтчетов),
    СУММА(КоличествоВРезервеЕдиницОтчетов),
    СУММА(КоличествоКПолучениюЕдиницОтчетов),
    СУММА(КоличествоКПередачеЕдиницОтчетов),
    СУММА(КоличествоЗаказаноУПоставщиковЕдиницОтчетов),
    СУММА(СвободныйОстатокЕдиницОтчетов)
ПО
    ОБЩИЕ
{ИТОГИ ПО
    Склад.*,
    Номенклатура.*,
    ХарактеристикаНоменклатуры.*,
    СерияНоменклатуры.*,
    Качество.*,
    ДокументОснование.*}
21 Zerg80
 
14.08.13
08:16
(20) Тут многие представляют себе, что в запросе этого отчета, незачем портянку вывешивать и людям глаза ломать.
Вообщем-то тебе осталось в (11) "ТоварыВРознице" учесть, обернуть Количество в ЕСТЬNULL. И почему Характеристики и Серии в запросе не участвуют?
22 Zerg80
 
14.08.13
08:18
(21) + ну и по НТТ 2 регистра, если они используются
23 LivingStar
 
14.08.13
08:33
(22) О чем вы про НТТ ? Что это?
(21) а как учесть товары в рознице в запросе (11) ?

Количество в ЕстьNULL оберну, выведу характеристики, серии...
Не знаю используются ли характеристики, серии....
24 LivingStar
 
14.08.13
08:37
(21) Серии, характеристики не используются, на сколько я вижу....
25 SnarkHunter
 
14.08.13
08:38
Шоу продолжается...
26 LivingStar
 
14.08.13
08:47
вот выбрал, записи все уникальны
только хотел вопрос задать как убрать все эти дубли, сделав записи уникальными, стер в конце запроса все оставив

ПО
    Склад

сработало, в конструкторе так и не мог этого добиться, только текст запроса если править...

ВЫБРАТЬ РАЗЛИЧНЫЕ
    ТоварыНаСкладахОстатки.Склад,
    ТоварыНаСкладахОстатки.Номенклатура,
    ТоварыНаСкладахОстатки.ХарактеристикаНоменклатуры,
    ТоварыНаСкладахОстатки.СерияНоменклатуры,
    ТоварыНаСкладахОстатки.Качество,
    ЕСТЬNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0) КАК КоличествоОстаток
ПОМЕСТИТЬ ВТ_ОстаткиТоваровНаСкладах
ИЗ
    РегистрНакопления.ТоварыНаСкладах.Остатки(&КонДата, Склад = &Склад) КАК ТоварыНаСкладахОстатки
ГДЕ
    ТоварыНаСкладахОстатки.Качество = ЗНАЧЕНИЕ(Справочник.Качество.Новый)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ТоварыВРезервеНаСкладахОстатки.Склад,
    ТоварыВРезервеНаСкладахОстатки.Номенклатура,
    ТоварыВРезервеНаСкладахОстатки.ДокументРезерва,
    ЕСТЬNULL(ТоварыВРезервеНаСкладахОстатки.КоличествоОстаток, 0) КАК Поле1
ПОМЕСТИТЬ ВТ_ТоварыВРезервеНаСкладахОстатки
ИЗ
    РегистрНакопления.ТоварыВРезервеНаСкладах.Остатки(&КонДата, Склад = &Склад) КАК ТоварыВРезервеНаСкладахОстатки
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ТоварыКПередачеСоСкладовОстатки.Склад,
    ТоварыКПередачеСоСкладовОстатки.Номенклатура,
    ТоварыКПередачеСоСкладовОстатки.Качество,
    ЕСТЬNULL(ТоварыКПередачеСоСкладовОстатки.КоличествоОстаток, 0) КАК Поле1
ПОМЕСТИТЬ ВТ_ТоварыКПередачеСоСкладовОстатки
ИЗ
    РегистрНакопления.ТоварыКПередачеСоСкладов.Остатки(&КонДата, Склад = &Склад) КАК ТоварыКПередачеСоСкладовОстатки
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВТ_ОстаткиТоваровНаСкладах.Склад КАК Склад,
    ВТ_ОстаткиТоваровНаСкладах.Номенклатура КАК Номенклатура,
    ВТ_ОстаткиТоваровНаСкладах.СерияНоменклатуры КАК СерияНоменклатуры,
    ВТ_ОстаткиТоваровНаСкладах.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    ВТ_ОстаткиТоваровНаСкладах.Качество КАК Качество,
    ВТ_ОстаткиТоваровНаСкладах.КоличествоОстаток КАК КоличествоОстаток
ИЗ
    ВТ_ОстаткиТоваровНаСкладах КАК ВТ_ОстаткиТоваровНаСкладах
        ЛЕВОЕ СОЕДИНЕНИЕ ВТ_ТоварыВРезервеНаСкладахОстатки КАК ВТ_ТоварыВРезервеНаСкладахОстатки
        ПО ВТ_ОстаткиТоваровНаСкладах.Номенклатура = ВТ_ТоварыВРезервеНаСкладахОстатки.Номенклатура
        ЛЕВОЕ СОЕДИНЕНИЕ ВТ_ТоварыКПередачеСоСкладовОстатки КАК ВТ_ТоварыКПередачеСоСкладовОстатки
        ПО ВТ_ОстаткиТоваровНаСкладах.Номенклатура = ВТ_ТоварыКПередачеСоСкладовОстатки.Номенклатура
ИТОГИ
    СУММА(КоличествоОстаток)
ПО
    Склад
27 LivingStar
 
14.08.13
08:48
(25) Это вы про то что серии и характеристики не используются?
28 LivingStar
 
14.08.13
11:19
Подскажите кому не трудно почему в итоговом запросе Свободный остаток не отображается? В нем значение null, я же в пакетных запросах выражаю через ЕстьNULL?

Считаю что Свободный остаток должен быть равен значению КоличествоОстаток!!

ВТ_ОстаткиТоваровНаСкладах.КоличествоОстаток - ВТ_ТоварыВРезервеНаСкладахОстатки.КоличествоВРезерве - ВТ_ТоварыКПередачеСоСкладовОстатки.КоличествоКПередаче КАК СвободныйОстаток

Почему там null ???


ВЫБРАТЬ РАЗЛИЧНЫЕ
    ТоварыНаСкладахОстатки.Склад,
    ТоварыНаСкладахОстатки.Номенклатура,
    ТоварыНаСкладахОстатки.ХарактеристикаНоменклатуры,
    ТоварыНаСкладахОстатки.СерияНоменклатуры,
    ТоварыНаСкладахОстатки.Качество,
    ЕСТЬNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0) КАК КоличествоОстаток
ПОМЕСТИТЬ ВТ_ОстаткиТоваровНаСкладах
ИЗ
    РегистрНакопления.ТоварыНаСкладах.Остатки(
            &КонДата,
            Склад = &Склад
                И Номенклатура В ИЕРАРХИИ (&СписокНоменклатуры)
                И Качество = ЗНАЧЕНИЕ(Справочник.Качество.Новый)) КАК ТоварыНаСкладахОстатки
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ТоварыВРезервеНаСкладахОстатки.Склад,
    ТоварыВРезервеНаСкладахОстатки.Номенклатура,
    ТоварыВРезервеНаСкладахОстатки.ДокументРезерва,
    ЕСТЬNULL(ТоварыВРезервеНаСкладахОстатки.КоличествоОстаток, 0) КАК КоличествоВРезерве
ПОМЕСТИТЬ ВТ_ТоварыВРезервеНаСкладахОстатки
ИЗ
    РегистрНакопления.ТоварыВРезервеНаСкладах.Остатки(
            &КонДата,
            Склад = &Склад
                И Номенклатура В ИЕРАРХИИ (&СписокНоменклатуры)) КАК ТоварыВРезервеНаСкладахОстатки
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ТоварыКПередачеСоСкладовОстатки.Склад,
    ТоварыКПередачеСоСкладовОстатки.Номенклатура,
    ТоварыКПередачеСоСкладовОстатки.Качество,
    ЕСТЬNULL(ТоварыКПередачеСоСкладовОстатки.КоличествоОстаток, 0) КАК КоличествоКПередаче
ПОМЕСТИТЬ ВТ_ТоварыКПередачеСоСкладовОстатки
ИЗ
    РегистрНакопления.ТоварыКПередачеСоСкладов.Остатки(
            &КонДата,
            Склад = &Склад
                И Номенклатура В ИЕРАРХИИ (&СписокНоменклатуры)) КАК ТоварыКПередачеСоСкладовОстатки
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВТ_ОстаткиТоваровНаСкладах.Склад КАК Склад,
    ВТ_ОстаткиТоваровНаСкладах.Номенклатура КАК Номенклатура,
    ВТ_ОстаткиТоваровНаСкладах.СерияНоменклатуры КАК СерияНоменклатуры,
    ВТ_ОстаткиТоваровНаСкладах.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    ВТ_ОстаткиТоваровНаСкладах.Качество КАК Качество,
    ВТ_ОстаткиТоваровНаСкладах.КоличествоОстаток КАК КоличествоОстаток,
    ВТ_ТоварыВРезервеНаСкладахОстатки.КоличествоВРезерве,
    ВТ_ТоварыКПередачеСоСкладовОстатки.КоличествоКПередаче,
    ВТ_ОстаткиТоваровНаСкладах.КоличествоОстаток - ВТ_ТоварыВРезервеНаСкладахОстатки.КоличествоВРезерве - ВТ_ТоварыКПередачеСоСкладовОстатки.КоличествоКПередаче КАК СвободныйОстаток
ИЗ
    ВТ_ОстаткиТоваровНаСкладах КАК ВТ_ОстаткиТоваровНаСкладах
        ЛЕВОЕ СОЕДИНЕНИЕ ВТ_ТоварыВРезервеНаСкладахОстатки КАК ВТ_ТоварыВРезервеНаСкладахОстатки
        ПО ВТ_ОстаткиТоваровНаСкладах.Номенклатура = ВТ_ТоварыВРезервеНаСкладахОстатки.Номенклатура
        ЛЕВОЕ СОЕДИНЕНИЕ ВТ_ТоварыКПередачеСоСкладовОстатки КАК ВТ_ТоварыКПередачеСоСкладовОстатки
        ПО ВТ_ОстаткиТоваровНаСкладах.Номенклатура = ВТ_ТоварыКПередачеСоСкладовОстатки.Номенклатура
ИТОГИ
    СУММА(КоличествоОстаток)
ПО
    Склад
29 hhhh
 
14.08.13
11:27
ты опять юморишь с утра

  ВТ_ОстаткиТоваровНаСкладах.КоличествоОстаток - ЕСТЬNULL(ВТ_ТоварыВРезервеНаСкладахОстатки.КоличествоВРезерве, 0) - ЕСТЬNULL(ВТ_ТоварыКПередачеСоСкладовОстатки.КоличествоКПередаче КАК СвободныйОстаток, 0)
30 hhhh
 
14.08.13
11:28
блин

ВТ_ОстаткиТоваровНаСкладах.КоличествоОстаток - ЕСТЬNULL(ВТ_ТоварыВРезервеНаСкладахОстатки.КоличествоВРезерве, 0) - ЕСТЬNULL(ВТ_ТоварыКПередачеСоСкладовОстатки.КоличествоКПередаче, 0) КАК СвободныйОстаток
31 LivingStar
 
14.08.13
11:49
(30) Спасибо! Понятно! Думал в пакетном запросе достаточно выразить....