СКД. Остатки и обороты. Странное поведение системы

Нужен совет по отчету в СКД.

Конфигурация – Комплексная на 8.2.

Есть отчет на СКД по регистру “Товары организаций” и бух регистру хозрасчетный.

В отчет должны выводится по “Товары организаций”: остатки на начало и конец периода, приход и расход за период

По бухгалтерии должны выводится себестоимость номенклатуры на начало и конец периода. И себестоимость списываемая или приходуемая документами движения по регистру “Товары организаций”.

Плюс должны считаться групповые итоги по иерархии номенклатуры.

Отчет выглядит так:
<изображение утеряно :(>

С определенного момента перестали отображаться остатки на конец периода по одной конкретной номенклатуре.

1.Все считается нормально.
<изображение утеряно :(>

2.Переставляем дату в документе на 1 секунду, и отрицательные остатки по номенклатуре перестают отображаться и считаться навсегда. Т.е. все новые документы (с более поздней датой) видны в движениях, но не отображается отрицательный остаток
<изображение утеряно :(>

Выявлено опытным путем. С остальной номенклатурой все нормально. Отрицательные остатки есть и видны в отчете.

Последние 2 документа на скринах полностью идентичны по всем реквизитам в ТЧ и в шапке.

Убил день чтобы дойти до этого момента, а просветленье не настало.

Если поможет могу выложить сам отчет. На демке комплексной должен заработать, но не факт что проявится ошибка.

Текст запроса из СКД:

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

&ВидСубконто – “ВидыСубконтоХозрасчетные: Номенклатура, Склады”

&Счета –08.04, 10, 10.01, 10.02, 10.03, 10.04, 10.05, 10.06, 10.07, 10.08, 10.09, 10.10, 10.11, 41, 41.01, 41.02, 41.03, 41.04, 43

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

Подписаться
Уведомить о
guest
2 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
Anton Dmitriev
Anton Dmitriev
12 лет назад

Когда делаешь выборку из регистра накопления всегда нужно выбирать ПериодСекунда. Если этого не сделать как раз и получается такая фигня.

Dmitry_K
Dmitry_K
12 лет назад

C ПериодСекунда разобрался. Другая проблема вылезла.
Добавил в устовие соединения строку ” ТоварыОрганизацийОстаткиИОбороты.ПериодСекунда = ХозрасчетныйОстаткиИОбороты.ПериодСекунда”.
Но это все равно мертворожденный вариант. В правой таблице есть документы которых может не быть в левой. Например “Расчет себестоимости”, который влияет на бух регистр, но не влияет на остатки.
Переписал запрос в консоли запросов. В консоли все отлично.
Но в этом виде он в СКД не работает (ИТОГИ естественно убирал).
С какого боку это делать в СКД? Подайте идею пожалуйста.
з.ы. что-то подобное описывалось [URL=http://forum.mista.ru/topic.php?id=573090]тут[/URL], но ссылка на пример отчета не работает и с автором не связаться.
// Текст запроса
// при переносе в СКД “ИТОГИ” естественно убирал.
[CODE]ВЫБРАТЬ
ТабДвижения.Номенклатура КАК Номенклатура,
ТабДвижения.Регистратор,
СУММА(ТабДвижения.КоличествоНачальныйОстаток) КАК КоличествоНачальныйОстаток,
СУММА(ТабДвижения.СуммаНачальныйОстаток) КАК СуммаНачальныйОстаток,
СУММА(ТабДвижения.КоличествоПриход) КАК КоличествоПриход,
СУММА(ТабДвижения.СуммаОборотДт) КАК СуммаОборотДт,
СУММА(ТабДвижения.КоличествоРасход) КАК КоличествоРасход,
СУММА(ТабДвижения.СуммаОборотКт) КАК СуммаОборотКт,
СУММА(ТабДвижения.КоличествоКонечныйОстаток) КАК КоличествоКонечныйОстаток,
СУММА(ТабДвижения.СуммаКонечныйОстаток) КАК СуммаКонечныйОстаток,
ТабДвижения.Номенклатура.ЕдиницаХраненияОстатков
ИЗ
(ВЫБРАТЬ
ТоварыОрганизацийОстаткиИОбороты.Номенклатура КАК Номенклатура,
ТоварыОрганизацийОстаткиИОбороты.Регистратор КАК Регистратор,
ТоварыОрганизацийОстаткиИОбороты.КоличествоНачальныйОстаток КАК КоличествоНачальныйОстаток,
0 КАК СуммаНачальныйОстаток,
ТоварыОрганизацийОстаткиИОбороты.КоличествоПриход КАК КоличествоПриход,
0 КАК СуммаОборотДт,
ТоварыОрганизацийОстаткиИОбороты.КоличествоРасход КАК КоличествоРасход,
0 КАК СуммаОборотКт,
ТоварыОрганизацийОстаткиИОбороты.КоличествоКонечныйОстаток КАК КоличествоКонечныйОстаток,
0 КАК СуммаКонечныйОстаток
ИЗ
РегистрНакопления.ТоварыОрганизаций.ОстаткиИОбороты(
НАЧАЛОПЕРИОДА(&НачалоПериода, ДЕНЬ),
КОНЕЦПЕРИОДА(&КонецПериода, ДЕНЬ),
Регистратор,
Движения,
Склад = &Склад
И ВЫБОР
КОГДА &Организация = НЕОПРЕДЕЛЕНО
ТОГДА ИСТИНА
ИНАЧЕ Организация = &Организация
КОНЕЦ
И ВЫБОР
КОГДА &Номенклатура = НЕОПРЕДЕЛЕНО
ТОГДА ИСТИНА
ИНАЧЕ Номенклатура В ИЕРАРХИИ (&Номенклатура)
КОНЕЦ) КАК ТоварыОрганизацийОстаткиИОбороты
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
ХозрасчетныйОстаткиИОбороты.Субконто1,
ХозрасчетныйОстаткиИОбороты.Регистратор,
0,
ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстаток,
0,
ХозрасчетныйОстаткиИОбороты.СуммаОборотДт,
0,
ХозрасчетныйОстаткиИОбороты.СуммаОборотКт,
0,
ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстаток
ИЗ
РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(
НАЧАЛОПЕРИОДА(&НачалоПериода, ДЕНЬ),
КОНЕЦПЕРИОДА(&КонецПериода, ДЕНЬ),
Регистратор,
Движения,
Счет В (&Счета),
&ВидСубконто,
ВЫБОР
КОГДА &Организация = НЕОПРЕДЕЛЕНО
ТОГДА ИСТИНА
ИНАЧЕ Организация = &Организация
КОНЕЦ
И ВЫБОР
КОГДА &Склад = НЕОПРЕДЕЛЕНО
ТОГДА ИСТИНА
ИНАЧЕ Субконто2 = &Склад
КОНЕЦ
И ВЫБОР
КОГДА &Номенклатура = НЕОПРЕДЕЛЕНО
ТОГДА ИСТИНА
ИНАЧЕ Субконто1 В ИЕРАРХИИ (&Номенклатура)
КОНЕЦ) КАК ХозрасчетныйОстаткиИОбороты) КАК ТабДвижения
СГРУППИРОВАТЬ ПО
ТабДвижения.Номенклатура,
ТабДвижения.Регистратор,
ТабДвижения.Номенклатура.ЕдиницаХраненияОстатков
ИТОГИ
СУММА(КоличествоНачальныйОстаток),
СУММА(СуммаНачальныйОстаток),
СУММА(КоличествоПриход),
СУММА(КоличествоРасход),
СУММА(КоличествоКонечныйОстаток),
СУММА(СуммаКонечныйОстаток)
ПО
Номенклатура ИЕРАРХИЯ[/CODE]
тема на is: http://bit.ly/yOJiG6