Имя: Пароль:
1C
1С v8
Запрос к опер. остаткам и остаткам на дату
0 Sasha_uu
 
26.08.12
06:41
Пишу запрос который получит остатки на дату документа и оперативные остатки. В результате запрос получает остатки на дату документа а оперативные не получает. При проведение документа у меня очищаются движения в самом коде. Может с этим связано?
1 Wobland
 
26.08.12
07:57
нет
2 shuhard
 
26.08.12
08:33
(0) бессмысленный набор букв:
в 8.Х нет понятия оперативные остатки
3 Sasha_uu
 
27.08.12
02:50
(2) если остатки получать без указании в запросе даты то получаются движения на самый последний документ.
4 Sasha_uu
 
27.08.12
03:15
Запрос
ВЫБРАТЬ
   Док.Номенклатура,
   Док.ХарактеристикаНоменклатуры,
   Док.СерияНоменклатуры,
   Док.Коэффициент,
   Док.Качество,
   Док.Склад,
   Док.Количество
ПОМЕСТИТЬ Док
ИЗ
   Документ.РеализацияТоваровУслуг.Товары КАК Док
ГДЕ
   Док.Ссылка = &ДокументСсылка
   И НЕ Док.Номенклатура.Комплект
   И НЕ Док.Номенклатура.Услуга

ИНДЕКСИРОВАТЬ ПО
   Док.Номенклатура,
   Док.ХарактеристикаНоменклатуры,
   Док.СерияНоменклатуры,
   Док.Склад,
   Док.Качество
;

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

ИНДЕКСИРОВАТЬ ПО
   ОстаткиКПередаче.Номенклатура,
   ОстаткиКПередаче.ХарактеристикаНоменклатуры,
   ОстаткиКПередаче.СерияНоменклатуры,
   ОстаткиКПередаче.Склад,
   ОстаткиКПередаче.Качество
;

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

ДЛЯ ИЗМЕНЕНИЯ
   РегистрНакопления.ТоварыОрганизаций.Остатки

ИНДЕКСИРОВАТЬ ПО
   Остатки.Номенклатура,
   Остатки.ХарактеристикаНоменклатуры,
   Остатки.СерияНоменклатуры,
   Остатки.Склад,
   Остатки.Качество
;

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

ИНДЕКСИРОВАТЬ ПО
   ОстаткиОперативные.Номенклатура,
   ОстаткиОперативные.ХарактеристикаНоменклатуры,
   ОстаткиОперативные.СерияНоменклатуры,
   ОстаткиОперативные.Склад,
   ОстаткиОперативные.Качество
;

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

ИНДЕКСИРОВАТЬ ПО
   ОстаткиБезСерий.Номенклатура,
   ОстаткиБезСерий.ХарактеристикаНоменклатуры,
   ОстаткиБезСерий.Склад,
   ОстаткиБезСерий.Качество
;

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

ИНДЕКСИРОВАТЬ ПО
   ОстаткиБезСерийОперативные.Номенклатура,
   ОстаткиБезСерийОперативные.ХарактеристикаНоменклатуры,
   ОстаткиБезСерийОперативные.Склад,
   ОстаткиБезСерийОперативные.Качество
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   Док.Номенклатура.Представление КАК НоменклатураПредставление,
   Док.Номенклатура.ЕдиницаХраненияОстатков.Представление КАК ЕдиницаХраненияОстатковПредставление,
   Док.Склад КАК Склад,
   Док.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
   Док.СерияНоменклатуры КАК СерияНоменклатуры,
   &Комиссионер КАК Комиссионер,
   СУММА(ВЫРАЗИТЬ(Док.Количество * Док.Коэффициент / Док.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК ЧИСЛО(15, 3))) КАК ДокументКоличество,
   ЕСТЬNULL(МАКСИМУМ(Остатки.КоличествоОстаток), 0) КАК ОстатокКоличество,
   ЕСТЬNULL(МАКСИМУМ(ОстаткиКПередаче.КоличествоОстаток), 0) КАК ОстатокКПередаче,
   0 КАК ОстатокКПередачеПоДокументу,
   ЕСТЬNULL(МАКСИМУМ(ОстаткиОперативные.КоличествоОстаток), 0) КАК ОстатокОперКоличество,
   ЕСТЬNULL(МАКСИМУМ(ОстаткиБезСерий.КоличествоОстаток), 0) КАК ОстатокБезСерийКоличество,
   ЕСТЬNULL(МАКСИМУМ(ОстаткиБезСерийОперативные.КоличествоОстаток), 0) КАК ОстатокОперБезСерийКоличество
ИЗ
   Док КАК Док
       ЛЕВОЕ СОЕДИНЕНИЕ Остатки КАК Остатки
       ПО Док.Номенклатура = Остатки.Номенклатура
           И Док.ХарактеристикаНоменклатуры = Остатки.ХарактеристикаНоменклатуры
           И Док.СерияНоменклатуры = Остатки.СерияНоменклатуры
           И Док.Склад = Остатки.Склад
           И Док.Качество = Остатки.Качество
       ЛЕВОЕ СОЕДИНЕНИЕ ОстаткиКПередаче КАК ОстаткиКПередаче
       ПО Док.Номенклатура = ОстаткиКПередаче.Номенклатура
           И Док.ХарактеристикаНоменклатуры = ОстаткиКПередаче.ХарактеристикаНоменклатуры
           И Док.СерияНоменклатуры = ОстаткиКПередаче.СерияНоменклатуры
           И Док.Склад = ОстаткиКПередаче.Склад
           И Док.Качество = ОстаткиКПередаче.Качество
       ЛЕВОЕ СОЕДИНЕНИЕ ОстаткиОперативные КАК ОстаткиОперативные
       ПО Док.Номенклатура = ОстаткиОперативные.Номенклатура
           И Док.ХарактеристикаНоменклатуры = ОстаткиОперативные.ХарактеристикаНоменклатуры
           И Док.СерияНоменклатуры = ОстаткиОперативные.СерияНоменклатуры
           И Док.Склад = ОстаткиОперативные.Склад
           И Док.Качество = ОстаткиОперативные.Качество
       ЛЕВОЕ СОЕДИНЕНИЕ ОстаткиБезСерий КАК ОстаткиБезСерий
       ПО Док.Номенклатура = ОстаткиБезСерий.Номенклатура
           И Док.ХарактеристикаНоменклатуры = ОстаткиБезСерий.ХарактеристикаНоменклатуры
           И Док.Склад = ОстаткиБезСерий.Склад
           И Док.Качество = ОстаткиБезСерий.Качество
       ЛЕВОЕ СОЕДИНЕНИЕ ОстаткиБезСерийОперативные КАК ОстаткиБезСерийОперативные
       ПО Док.Номенклатура = ОстаткиБезСерийОперативные.Номенклатура
           И Док.ХарактеристикаНоменклатуры = ОстаткиБезСерийОперативные.ХарактеристикаНоменклатуры
           И Док.Склад = ОстаткиБезСерийОперативные.Склад
           И Док.Качество = ОстаткиБезСерийОперативные.Качество

СГРУППИРОВАТЬ ПО
   Док.Номенклатура,
   Док.ХарактеристикаНоменклатуры,
   Док.СерияНоменклатуры,
   Док.Качество,
   Док.Склад,
   Док.Номенклатура.Представление,
   Док.Номенклатура.ЕдиницаХраненияОстатков.Представление

ИМЕЮЩИЕ
   (ЕСТЬNULL(МАКСИМУМ(Остатки.КоличествоОстаток), 0) - ЕСТЬNULL(МАКСИМУМ(ОстаткиКПередаче.КоличествоОстаток), 0) < СУММА(ВЫРАЗИТЬ(Док.Количество * Док.Коэффициент / Док.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК ЧИСЛО(15, 3)))
       ИЛИ ЕСТЬNULL(МАКСИМУМ(ОстаткиОперативные.КоличествоОстаток), 0) - ЕСТЬNULL(МАКСИМУМ(ОстаткиКПередаче.КоличествоОстаток), 0) < СУММА(ВЫРАЗИТЬ(Док.Количество * Док.Коэффициент / Док.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК ЧИСЛО(15, 3)))
       ИЛИ ЕСТЬNULL(МАКСИМУМ(ОстаткиБезСерий.КоличествоОстаток), 0) - ЕСТЬNULL(МАКСИМУМ(ОстаткиКПередаче.КоличествоОстаток), 0) < СУММА(ВЫРАЗИТЬ(Док.Количество * Док.Коэффициент / Док.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК ЧИСЛО(15, 3)))
       ИЛИ ЕСТЬNULL(МАКСИМУМ(ОстаткиБезСерийОперативные.КоличествоОстаток), 0) - ЕСТЬNULL(МАКСИМУМ(ОстаткиКПередаче.КоличествоОстаток), 0) < СУММА(ВЫРАЗИТЬ(Док.Количество * Док.Коэффициент / Док.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК ЧИСЛО(15, 3))))

выводить остаток только на документ а оперативные остатки не показывает
5 Godofsin
 
27.08.12
05:17
(4) да ладно... много букв....
6 iceman2112
 
27.08.12
05:56
что от нас хочешь? Таблицу ОстаткиОперативные проверь