Запрос и неправильные остатки

1. user5300 1017 01.08.19 13:54 Сейчас в теме
Добрый день , коллеги. Столкнулся с такой проблемой в запросе:

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

СГРУППИРОВАТЬ ПО
ТоварыНаСкладахОстаткиИОбороты.Номенклатура
АВТОУПОРЯДОЧИВАНИЕ
Показать


И всё считается правильно вроде:

_______________НачОстаток________Приход______Расход_____КонО­статок
Товар___________800________________24___________14 _______ 810



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

СГРУППИРОВАТЬ ПО
ТоварыНаСкладахОстаткиИОбороты.Номенклатура,
ТоварыНаСкладахОстаткиИОбороты.Регистратор
АВТОУПОРЯДОЧИВАНИЕ
Показать


Получается что то вроде таких цифр:

__________НачОстаток _______Приход _______Расход_______КонОстаток
Товар______ 24400 ____________ 24 _________ 14 ________ 24410


Никто не сталкивался с такой ситуацией ? может знает кто ?
По теме из базы знаний
Найденные решения
61. user1198928 02.08.19 18:47 Сейчас в теме
Я не могу понять для чего вы пишите сумму по полям количество остатки и обороты. ИТОГИ по суммам делаются в секции ИТОГИ ... ПО ОБЩИЕ. Это первое. А второе: сумма с регистратором меняется, потому что вы выбираете движения по всем регистраторам которые фиксируют это движение. Т.е. у вас в списке допустим один товар пришел на кол-во 100 шт. по 1-му регистратору, потом ушел этот же товар на кол-во 50 шт. по 2-му регистратору, а потом допустим еще было перемещение со склада на склад в количестве 10 шт. по 3-ему регистратору. Если вы хотите видеть движение по регистратору, то только конкретного регистратора. Для этого в условии ИЗ нужно написать:

ИЗ
	РегистрНакопления.ТоварыОрганизаций.ОстаткиИОбороты(&ДатаНач, &ДатаОконч, Запись, Движения, АналитикаУчетаНоменклатуры.Склад = &Склад) КАК ТоварыОрганизацийОстаткиИОбороты

Запись - это и есть ваш регистратор.

Выкладываю полный запрос:

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

СГРУППИРОВАТЬ ПО
	ТоварыОрганизацийОстаткиИОбороты.АналитикаУчетаНоменклатуры.Номенклатура,
	ТоварыОрганизацийОстаткиИОбороты.Регистратор,
	ТоварыОрганизацийОстаткиИОбороты.КоличествоНачальныйОстаток,
	ТоварыОрганизацийОстаткиИОбороты.КоличествоПриход,
	ТоварыОрганизацийОстаткиИОбороты.КоличествоРасход,
	ТоварыОрганизацийОстаткиИОбороты.КоличествоКонечныйОстаток

ИТОГИ

	СУММА(КоличествоНачальныйОстаток),
	СУММА(КоличествоПриход),
	СУММА(КоличествоРасход),
	СУММА(КоличествоКонечныйОстаток)
ПО
	ОБЩИЕ
Показать
АннаШ; user5300; +2 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. YannikAlx 43 01.08.19 14:03 Сейчас в теме
Лучше 2 картинки приведите, ибо непонятно, как после добавления Регистратора у вас не изменилось количнество строк...
И условия ГДЕ так не применяйте - долго выполняется, ОЧЕНЬ...
6. user5300 1017 01.08.19 14:09 Сейчас в теме
(3)
Прикрепленные файлы:
8. user5300 1017 01.08.19 14:10 Сейчас в теме
(3) Так а как еще условие добавить ?)
11. YannikAlx 43 01.08.19 14:13 Сейчас в теме
(8) в параметрах виртуальной таблицы, см пример (5)
12. user5300 1017 01.08.19 14:15 Сейчас в теме
(11) аа, учту , спасибо ) но тем не менее , вопрос в результате )
15. YannikAlx 43 01.08.19 14:21 Сейчас в теме
(12) Исправьте параметры виртуальной таблицы в соответствии с примером в (5) и будет вам ПОЛНОЕ счатье...
Вы некорретно их выставили
2. signum2009 1030 01.08.19 13:59 Сейчас в теме
Попробуйте пересчет итогов сделать, условие нужно в параметрах виртуальной таблицы ставить, ну это так...
4. rboy 01.08.19 14:04 Сейчас в теме
Добавьте строчку в запрос "ТоварыНаСкладахОстаткиИОбороты.ПериодСекунда; "
Об этом все методички 1с пишут
5. YannikAlx 43 01.08.19 14:08 Сейчас в теме
(4)
ТоварыНаСкладахОстаткиИОбороты.ПериодСекунда

А куда его добавить ?
Вы уж как-то пояснее...

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

СГРУППИРОВАТЬ ПО
	ТоварыНаСкладахОстаткиИОбороты.АналитикаУчетаНоменклатуры.Номенклатура,
	ТоварыНаСкладахОстаткиИОбороты.Регистратор
Показать
7. Vegner 26 01.08.19 14:09 Сейчас в теме
(5) в параметрах виртуальной таблицы, периодичность
9. YannikAlx 43 01.08.19 14:11 Сейчас в теме
(7) Тогда Регистратора не будет!
10. user5300 1017 01.08.19 14:13 Сейчас в теме
(7) там только параметры "Движения" и "ДвиженияИГраницыПериода" ... не один ни другой не меняют погоды )
13. YannikAlx 43 01.08.19 14:15 Сейчас в теме
(10) В условиях пишете...
Вам нужно срочно основы подтянуть...
Так использовать ГДЕ - грубейшее нарушений в 1С...
это 100% на любом экзамене...
Прикрепленные файлы:
14. user5300 1017 01.08.19 14:19 Сейчас в теме
(13) Исправил, учту на будущее , спасибо)
Выполняется быстрее , но результат такой же, с регистратором меняются начальные и конечные остатки ...
16. YannikAlx 43 01.08.19 14:22 Сейчас в теме
(14) ну вот и повторите эти настройки - будет правильно...
Достаточно поставить "Регистратор"
17. user5300 1017 01.08.19 14:23 Сейчас в теме
(16)
ВЫБРАТЬ
ТоварыНаСкладахОстаткиИОбороты.Номенклатура КАК Номенклатура,
СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоНачальныйОстаток) КАК КоличествоНачальныйОстаток,
СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток) КАК КоличествоКонечныйОстаток,
СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоПриход) КАК КоличествоПриход,
СУММА(ТоварыНаСкладахОстаткиИОбороты.КоличествоРасход) КАК КоличествоРасход,
ТоварыНаСкладахОстаткиИОбороты.Регистратор КАК Регистратор
ИЗ
РегистрНакопления.ТоварыОрганизаций.ОстаткиИОбороты(
&НачПериода,
&КонПериода,
Авто,
ДвиженияИГраницыПериода,
Склад = &Склад
И Организация = &Организация) КАК ТоварыНаСкладахОстаткиИОбороты
СГРУППИРОВАТЬ ПО
ТоварыНаСкладахОстаткиИОбороты.Номенклатура,
ТоварыНаСкладахОстаткиИОбороты.Регистратор
АВТОУПОРЯДОЧИВАНИЕ
Показать


Результат такой же
18. YannikAlx 43 01.08.19 14:24 Сейчас в теме
(17)
&НачПериода,
&КонПериода,
Авто, 

Вот это Измените!

На
&НачПериода,
&КонПериода,
Регистратор, 
19. Vegner 26 01.08.19 14:35 Сейчас в теме
Так все правильно, что начальный и конечный остаток умножается, вы посмотрите в консоле запросов, в каждой строке с регистратором будет начальный и конечный остаток по этому товару и вы его потом суммируете
20. user5300 1017 01.08.19 14:42 Сейчас в теме
(19) так я вижу что она умножается) мне не понятно почему без регистратора меняются цифры ...
21. Vegner 26 01.08.19 14:43 Сейчас в теме
(20) потому что без регистратора меньше строк, поэтому и сумма меньше
22. user5300 1017 01.08.19 14:44 Сейчас в теме
(21) так по факту же это не правильно получается, без регистратора потом не получится провести аналитику
25. Vegner 26 01.08.19 14:47 Сейчас в теме
(22) смотря что вы хотите увидеть, если остатки на начало периода и на конец + все движения товара, то либо соединять с таблицей остатки, либо использовать не виртуальную таблицу
37. user5300 1017 01.08.19 15:07 Сейчас в теме
(25)у меня запрос к одной таблице, РегистрНакомпления.ТоварыОрганизации , и смысл соединять его с Этим же регистром когда можно получить все данные отсюда ?
Прикрепленные файлы:
41. Vegner 26 01.08.19 15:10 Сейчас в теме
(37) получилось обращаясь к одной таблице получить все нужные данные с нужной аналитикой?
42. user5300 1017 01.08.19 15:14 Сейчас в теме
(41) меня смущает суммирование остатков ..
а всё остальное сходится ,

По сути при добавлении регистратора - эти остатки должны распределиться между регистраторами а не наоборот приумножаться ...
44. Vegner 26 01.08.19 15:17 Сейчас в теме
(42) что значит "распределиться"?
49. user5300 1017 01.08.19 15:24 Сейчас в теме
(44)

С регистратором:
__________НачОстаток____Приход____Расход_____КонОстаток
Тоавр_____200___________100__________0 ________300__________Документ1
Товар_____300___________100__________50_______350__________Д­окумент1
Товар_____350___________200__________50_______500__________Д­окумент2

БЕЗ
__________НачОстаток____Приход____Расход_____КонОстаток
Тоавр_____750___________400__________100 ________1150____


Показать
51. Vegner 26 01.08.19 15:28 Сейчас в теме
(49) но товара же не 750 на остатках? его на начало периода было 200 а на конец периода 500
53. user5300 1017 01.08.19 15:44 Сейчас в теме
(51) аа, ну да, 200 и 500 должно быть, но суть такая же)
Вот у меня и суммируется как 750 и 1150 в запросе - что не правильно
38. user5300 1017 01.08.19 15:07 Сейчас в теме
(25)у меня запрос к одной таблице, РегистрНакомпления.ТоварыОрганизации , и смысл соединять его с Этим же регистром когда можно получить все данные отсюда ?
Прикрепленные файлы:
27. YannikAlx 43 01.08.19 14:48 Сейчас в теме
(22) Приведите еще раз свой запрос, посмотрим что в нем не так сейчас...
28. user5300 1017 01.08.19 14:50 Сейчас в теме
ВЫБРАТЬ
ТоварыОрганизацийОстаткиИОбороты.Номенклатура КАК Номенклатура,
СУММА(ТоварыОрганизацийОстаткиИОбороты.КоличествоНачальныйОстаток) КАК КоличествоНачальныйОстаток,
СУММА(ТоварыОрганизацийОстаткиИОбороты.КоличествоКонечныйОстаток) КАК КоличествоКонечныйОстаток,
СУММА(ТоварыОрганизацийОстаткиИОбороты.КоличествоПриход) КАК КоличествоПриход,
СУММА(ТоварыОрганизацийОстаткиИОбороты.КоличествоРасход) КАК КоличествоРасход,
ТоварыОрганизацийОстаткиИОбороты.Регистратор КАК Регистратор
ИЗ
РегистрНакопления.ТоварыОрганизаций.ОстаткиИОбороты(
&НачПериода,
&КонПериода,
Регистратор,
ДвиженияИГраницыПериода,
Склад = &Склад
И Организация = &Организация) КАК ТоварыОрганизацийОстаткиИОбороты

СГРУППИРОВАТЬ ПО
ТоварыОрганизацийОстаткиИОбороты.Номенклатура,
ТоварыОрганизацийОстаткиИОбороты.Регистратор
АВТОУПОРЯДОЧИВАНИЕ
Показать

вот
30. YannikAlx 43 01.08.19 14:59 Сейчас в теме
(28) Ясно...
Вы чем выполняете запрос?
У вас как итоги считаются?

ИТОГИ ПО
ОБЩИЕ

Нет Итогов в тексте запроса, то есть ваш инструмент выполнения горбатый (Консоль запросов?)
33. user5300 1017 01.08.19 15:02 Сейчас в теме
23. Vegner 26 01.08.19 14:44 Сейчас в теме
(20) сформируйте две таблицы, с регистратором и без, и по конкретной номенклатуре сложите все "начальный" и "конечный" остатки.
26. YannikAlx 43 01.08.19 14:47 Сейчас в теме
(23) Почему у меня не перемножаются можете сказать?
29. Vegner 26 01.08.19 14:51 Сейчас в теме
(26) не могу сказать почему у вас не переумножается, но по логике, группировка по регистратору, суммируемые поля конечный остаток и начальный , в каждой строке итоговой таблицы, будет остаток на начало и конец (до движения регистратора и после)
24. YannikAlx 43 01.08.19 14:46 Сейчас в теме
(19) ваша фраза не понятно кому и в связи с чем ...
Ничего там не перемножается...
Хоть с регистратором , хоть без него все красиво!
Прикрепленные файлы:
35. user5300 1017 01.08.19 15:04 Сейчас в теме
(24)
Прикрепленные файлы:
39. YannikAlx 43 01.08.19 15:07 Сейчас в теме
(35) В конце добавьте

ИТОГИ ПО
ОБЩИЕ

СГРУППИРОВАТЬ ПО
	ТоварыНаСкладахОстаткиИОбороты.АналитикаУчетаНоменклатуры.Номенклатура,
	ТоварыНаСкладахОстаткиИОбороты.Регистратор
ИТОГИ ПО
	ОБЩИЕ
40. user5300 1017 01.08.19 15:08 Сейчас в теме
36. user5300 1017 01.08.19 15:04 Сейчас в теме
31. Vegner 26 01.08.19 14:59 Сейчас в теме
(24) у вас одно движение по одному товару, попробуйте добавить движение по товару в этом же периоде, что бы в табличке было две строки с одним твоаром.
32. VZyryanov 01.08.19 15:00 Сейчас в теме
Думаю остатки размножаются по регистратору и суммируются. Следовательно нужно разбить на 2 запроса: остатки без регистратора в ВТ, обороты с регистратором соединить с ВТ. Для остатков не СУММА, а МАКСИМУМ.
alex-l19041; +1 Ответить
34. user5300 1017 01.08.19 15:03 Сейчас в теме
(32) я так и сделал , но путаница получается потом, если 3 регистратора то и 3 номенклатуры с одинаковыми цифрами
43. rboy 01.08.19 15:16 Сейчас в теме
ООО У вас тут уже дискуссия
Вместо
| ТоварыНаСкладахОстаткиИОбороты.Регистратор КАК Регистратор,

напиши

| ТоварыНаСкладахОстаткиИОбороты.Регистратор КАК Регистратор,
| ТоварыНаСкладахОстаткиИОбороты.ПериодСекунда КАК ПериодСекунда,

и все
46. user5300 1017 01.08.19 15:18 Сейчас в теме
(43) написал. Появилась колонка с периодом "секунда", остатки такие же
45. rboy 01.08.19 15:18 Сейчас в теме
и еще в виртуальной таблице ОстаткиИОбороты(&НачалоПериода, &КонецПериода, Авто, ДвиженияИГраницыПериода, )
обрати внимание на ДвиженияИГраницыПериода
47. user5300 1017 01.08.19 15:19 Сейчас в теме
48. rboy 01.08.19 15:20 Сейчас в теме
50. user5300 1017 01.08.19 15:27 Сейчас в теме
(48) ничего не изменилось
52. user5300 1017 01.08.19 15:42 Сейчас в теме
Хотя, я посмотрел по одной позиции и у меня такая картина получилось ... Что это за Null и если брать без регистратора берутся эти цифры
Прикрепленные файлы:
57. rboy 01.08.19 16:05 Сейчас в теме
(52) че то не вижу куда делся ПериодСекунда
54. rboy 01.08.19 16:00 Сейчас в теме
Типичные проблемы при расчете остатков
В данной статье описывается, по какой причине отчет, созданный при помощи системы компоновки данных, может выдавать неправильные остатки.

Отсутствие родительских полей - периодов в запросе
Данная проблема возникает например, если в запросе получают поле Регистратор, но не получают поле ПериодСекунда.

Пример неправильного запроса:

ВЫБРАТЬ
 УчетНоменклатурыОстаткиИОбороты.Регистратор,
 УчетНоменклатурыОстаткиИОбороты.Номенклатура,
 УчетНоменклатурыОстаткиИОбороты.Склад,
 УчетНоменклатурыОстаткиИОбороты.КоличествоНачальныйОстаток,
 УчетНоменклатурыОстаткиИОбороты.КоличествоКонечныйОстаток,
 УчетНоменклатурыОстаткиИОбороты.КоличествоОборот
ИЗ
 РегистрНакопления.УчетНоменклатуры.ОстаткиИОбороты(, , Авто, , ) КАК УчетНоменклатурыОстаткиИОбороты
Для такого запроса система рассчитать правильные остатки не может.

Для устранения проблемы нужно обеспечить, чтобы в запросе присутствовало поле Период.

Пример правильного запроса:

ВЫБРАТЬ
 УчетНоменклатурыОстаткиИОбороты.Регистратор,
 УчетНоменклатурыОстаткиИОбороты.ПериодСекунда,
 УчетНоменклатурыОстаткиИОбороты.Номенклатура,
 УчетНоменклатурыОстаткиИОбороты.Склад,
 УчетНоменклатурыОстаткиИОбороты.КоличествоНачальныйОстаток,
 УчетНоменклатурыОстаткиИОбороты.КоличествоКонечныйОстаток,
 УчетНоменклатурыОстаткиИОбороты.КоличествоОборот
ИЗ
 РегистрНакопления.УчетНоменклатуры.ОстаткиИОбороты(, , Авто, , ) КАК УчетНоменклатурыОстаткиИОбороты
Отсутствие в запросе парного поля - остатка
Данная проблема возникает когда в запросе получают только поле начального остатка или только поле конечного остатка.

Пример неправильного запроса:

ВЫБРАТЬ
 УчетНоменклатурыОстаткиИОбороты.Регистратор,
 УчетНоменклатурыОстаткиИОбороты.ПериодСекунда,
 УчетНоменклатурыОстаткиИОбороты.Номенклатура,
 УчетНоменклатурыОстаткиИОбороты.Склад,
 УчетНоменклатурыОстаткиИОбороты.КоличествоКонечныйОстаток
ИЗ
 РегистрНакопления.УчетНоменклатуры.ОстаткиИОбороты(, , Авто, , ) КАК УчетНоменклатурыОстаткиИОбороты
Для устранения проблемы нужно обеспечить, чтобы в запросе присутствовал как начальный, так и конечный остатки.
Показать

Пример правильного запроса:

ВЫБРАТЬ
 УчетНоменклатурыОстаткиИОбороты.Регистратор,
 УчетНоменклатурыОстаткиИОбороты.ПериодСекунда,
 УчетНоменклатурыОстаткиИОбороты.Номенклатура,
 УчетНоменклатурыОстаткиИОбороты.Склад,
 УчетНоменклатурыОстаткиИОбороты.КоличествоНачальныйОстаток,
 УчетНоменклатурыОстаткиИОбороты.КоличествоКонечныйОстаток
ИЗ
 РегистрНакопления.УчетНоменклатуры.ОстаткиИОбороты(, , Авто, , ) КАК УчетНоменклатурыОстаткиИОбороты
Показать
55. rboy 01.08.19 16:02 Сейчас в теме
Не использование периодичности Авто
Данная проблема возникает, когда данные получаются из виртуальной таблицы ОстаткиИОбороты с указанием периодичности, отличной от Авто, если при этом в отчет выводятся не все поля - периоды. Эта проблема родственна проблеме "Отсутствие родительских полей - периодов в запросе", описанной в начале данной статьи.

Пример запроса, который может привести к получению неправильных остатков:

ВЫБРАТЬ
 УчетНоменклатурыОстаткиИОбороты.Регистратор,
 УчетНоменклатурыОстаткиИОбороты.Период,
 УчетНоменклатурыОстаткиИОбороты.Номенклатура,
 УчетНоменклатурыОстаткиИОбороты.Склад,
 УчетНоменклатурыОстаткиИОбороты.КоличествоНачальныйОстаток,
 УчетНоменклатурыОстаткиИОбороты.КоличествоКонечныйОстаток,
 УчетНоменклатурыОстаткиИОбороты.КоличествоОборот
ИЗ
 РегистрНакопления.УчетНоменклатуры.ОстаткиИОбороты(, , Регистратор, , ) КАК УчетНоменклатурыОстаткиИОбороты 
Показать

Для решения проблемы лучше в запросах для настраиваемых отчетов системы компоновки данных, в виртуальных таблицах ОстаткиИОбороты, использовать периодичность Авто. Или обеспечить обязательных вывод всех полей - периодов в результат отчета.

Пример запроса:

ВЫБРАТЬ
 УчетНоменклатурыОстаткиИОбороты.Регистратор,
 УчетНоменклатурыОстаткиИОбороты.ПериодСекунда,
 УчетНоменклатурыОстаткиИОбороты.Номенклатура,
 УчетНоменклатурыОстаткиИОбороты.Склад,
 УчетНоменклатурыОстаткиИОбороты.КоличествоНачальныйОстаток,
 УчетНоменклатурыОстаткиИОбороты.КоличествоКонечныйОстаток,
 УчетНоменклатурыОстаткиИОбороты.КоличествоОборот
ИЗ
 РегистрНакопления.УчетНоменклатуры.ОстаткиИОбороты(, , Авто, , ) КАК УчетНоменклатурыОстаткиИОбороты
Показать
56. rboy 01.08.19 16:03 Сейчас в теме
Да простит меня фирма 1С за репост их статьи
58. user5300 1017 01.08.19 16:06 Сейчас в теме
(56) так я добавил же и период и регистратор и авто, остатки такие же
59. VZyryanov 01.08.19 17:27 Сейчас в теме
Соберите данные программно. Пример

Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
	ТЗ=ПолучитьДанные();
	СтандартнаяОбработка=Ложь;
	Если ТЗ=Неопределено Тогда
		Возврат;
	КонецЕсли;	
	ВнешниеНаборыДанных=Новый Структура;
	ВнешниеНаборыДанных.Вставить("Затраты",ТЗ);
	КомпоновщикМакета=Новый КомпоновщикМакетаКомпоновкиДанных;
	Настройки=ЭтотОбъект.КомпоновщикНастроек.ПолучитьНастройки();	
		
	МакетКомпоновки=КомпоновщикМакета.Выполнить(ЭтотОбъект.СхемаКомпоновкиДанных,Настройки,ДанныеРасшифровки);
	ПроцессорКомпоновки=Новый ПроцессорКомпоновкиДанных;
	ПроцессорКомпоновки.Инициализировать(МакетКомпоновки,ВнешниеНаборыДанных,ДанныеРасшифровки);
	ДокументРезультат.Очистить();
	ПроцессорВывода=Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
	ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
	ПроцессорВывода.Вывести(ПроцессорКомпоновки);
	
	ДокументРезультат.ФиксацияСлева=2;
КонецПроцедуры
Показать


В ОсновнаяСхемаКомпоновкиДанных необходимо добавить набор данных "Затраты" (так в примере), задать имя объекта, содержащего данные "Затраты". Добавить все поля из ТЗ.
60. user5300 1017 02.08.19 09:20 Сейчас в теме
(59) Я так и сделал ) но данные в таблице я из запроса же беру , и возвращаюсь к этому
62. VZyryanov 02.08.19 19:22 Сейчас в теме
(60) В функции в цикле можно собрать в ТЗ все, что нужно. Получили остатки на начало. Записали в ТЗ - номенклатура, остаток на начало. Потом делаете запрос по оборотам по регистраторам. В цикле проходите. Заполняете существующую строку, добавляете новые.
user5300; +1 Ответить
61. user1198928 02.08.19 18:47 Сейчас в теме
Я не могу понять для чего вы пишите сумму по полям количество остатки и обороты. ИТОГИ по суммам делаются в секции ИТОГИ ... ПО ОБЩИЕ. Это первое. А второе: сумма с регистратором меняется, потому что вы выбираете движения по всем регистраторам которые фиксируют это движение. Т.е. у вас в списке допустим один товар пришел на кол-во 100 шт. по 1-му регистратору, потом ушел этот же товар на кол-во 50 шт. по 2-му регистратору, а потом допустим еще было перемещение со склада на склад в количестве 10 шт. по 3-ему регистратору. Если вы хотите видеть движение по регистратору, то только конкретного регистратора. Для этого в условии ИЗ нужно написать:

ИЗ
	РегистрНакопления.ТоварыОрганизаций.ОстаткиИОбороты(&ДатаНач, &ДатаОконч, Запись, Движения, АналитикаУчетаНоменклатуры.Склад = &Склад) КАК ТоварыОрганизацийОстаткиИОбороты

Запись - это и есть ваш регистратор.

Выкладываю полный запрос:

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

СГРУППИРОВАТЬ ПО
	ТоварыОрганизацийОстаткиИОбороты.АналитикаУчетаНоменклатуры.Номенклатура,
	ТоварыОрганизацийОстаткиИОбороты.Регистратор,
	ТоварыОрганизацийОстаткиИОбороты.КоличествоНачальныйОстаток,
	ТоварыОрганизацийОстаткиИОбороты.КоличествоПриход,
	ТоварыОрганизацийОстаткиИОбороты.КоличествоРасход,
	ТоварыОрганизацийОстаткиИОбороты.КоличествоКонечныйОстаток

ИТОГИ

	СУММА(КоличествоНачальныйОстаток),
	СУММА(КоличествоПриход),
	СУММА(КоличествоРасход),
	СУММА(КоличествоКонечныйОстаток)
ПО
	ОБЩИЕ
Показать
АннаШ; user5300; +2 Ответить
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот