Имя: Пароль:
1C
1С v8
Остатки по не проведенным документам
0 cry_san
 
25.01.12
15:14
Привет сообществу!
Есть предприятие и дочернее от него. Головное предприятие закупает для дочернего товар. На склады дочернего предприятия товар приходит без документов (однако они уже все забиты в номенклатуре)! Бухгалтер дочернего делает накладные на выдачу товара, печатает, но не проводит их. Через некоторое время (может достигать 8 мес.) головное предприятие в базе делает продажу (оприходование товара) дочернему. Появляются остатки и только после этого бухгалтер дочернего проводит записанные ранее накладные.
Вопрос в следующем: как не дожидаясь оприходования товара узнать остатки  по складам по не проведенным документам дочернего предприятия?
В интернете нашел пример кода, но он вытаскивает остатки по проведенным документам, а как быть с не проведенными?
Запрос.Текст = "
       |ВЫБРАТЬ
       |    ТоварыНаСкладахОстатки.Номенклатура КАК Номенклатура,
       |    ТоварыНаСкладахОстатки.Номенклатура.Артикул КАК Артикул,
       |    ТоварыНаСкладахОстатки.КоличествоОстаток КАК КоличествоОстаток
       |ИЗ
       |    РегистрНакопления.ТоварыНаСкладах.Остатки(&Дата, Склад = &Склад) КАК ТоварыНаСкладахОстатки
       |Упорядочить по    
       |    ТоварыНаСкладахОстатки.Номенклатура";
1 Джинн
 
25.01.12
15:17
С такими вопросами лучше в Управление по налоговым преступлениям МВД РФ.

PS - остатков по непроведенным документам быть не может. Максимум можно их перебрать с посчитать необходимое количество.
2 cry_san
 
25.01.12
15:21
А если проводить сразу в дочернем? Остатки будут идти в минус, а после оприходования, по идее, они должны выровняться.
Такое возможно?
3 Reaper_1c
 
25.01.12
15:23
(2) Так и нужно было делать... вот только ваши 8 месяцев очень понравятся господам инспекторам.
4 cry_san
 
25.01.12
16:11
Это все ясно. "Максимум можно их перебрать с посчитать необходимое количество." - пример запроса можно?
5 Джинн
 
25.01.12
16:32
(4) Конструктор запроса и вперед
6 comp2006
 
25.01.12
16:43
Соединяй две таблицы:
1)       |ВЫБРАТЬ
       |    ТоварыНаСкладахОстатки.Номенклатура КАК Номенклатура,
       |    ТоварыНаСкладахОстатки.Номенклатура.Артикул КАК Артикул,
       |    ТоварыНаСкладахОстатки.КоличествоОстаток КАК КоличествоОстаток
       |ИЗ
       |    РегистрНакопления.ТоварыНаСкладах.Остатки(&Дата, Склад = &Склад) КАК ТоварыНаСкладахОстатки
       |Упорядочить по    
       |    ТоварыНаСкладахОстатки.Номенклатура";




2) ВЫБРАТЬ
   РеализацияТоваровУслугТовары.Номенклатура,
   РеализацияТоваровУслугТовары.Количество
ИЗ
   Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
ГДЕ
   (НЕ РеализацияТоваровУслугТовары.Ссылка.ПометкаУдаления)
   И (НЕ РеализацияТоваровУслугТовары.Ссылка.Проведен)
7 DrShad
 
25.01.12
16:45
(6) и что ему даст соединение?
8 Buster007
 
25.01.12
16:49
сделать 2 статуса у документа, 1 статус двигает по одному регистру (промежуточный тип), потом поменяют и подвигает по ТоварыНАСкладах...
9 comp2006
 
25.01.12
17:06
(7)"...как не дожидаясь оприходования товара узнать остатки  по складам по не проведенным документам дочернего предприятия?"

Как я понял, нужно узнать, как изменятся остатки на складе после проведения расходных накладных.
10 DrShad
 
25.01.12
17:17
(9) соединением ты не остатки по непроведенным докам получишь, а остатки по номенклатуре входящей в непроведенные доки, причем по каждой столько раз, сколько она встречсается в доках
11 cry_san
 
25.01.12
17:19
Да. Нужно каждый день знать реальные остатки на складах.
12 cry_san
 
25.01.12
17:21
попробую
13 comp2006
 
25.01.12
17:57
(10)Не придирайся)))
2) ВЫБРАТЬ
   РеализацияТоваровУслугТовары.Номенклатура,
   СУММА(РеализацияТоваровУслугТовары.Количество) КАК Количество
ИЗ
   Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
ГДЕ
   (НЕ РеализацияТоваровУслугТовары.Ссылка.ПометкаУдаления)
   И (НЕ РеализацияТоваровУслугТовары.Ссылка.Проведен)

СГРУППИРОВАТЬ ПО
   РеализацияТоваровУслугТовары.Номенклатура