Запрос+Пример отчета: Количество дней с остатком товара. Доработанный запрос

18.12.14

Учетные задачи - Логистика, склад и ТМЦ

После долгих поисков необходимых запросов, наткнулся на статью местного ресурса http://infostart.ru/public/17023/. Только вот была беда небольшая: по условию моей задачи, днем с остатками должен был считаться даже тот день, когда товар пришел и ушел за один день. Т.е. использование значения КонечныйОстаток не представляется возможным, потому что значение будет 0. За основу взят запрос из вышеуказанной статьи, только малость доработан. Проверял на КА, ред. 1.1

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Пример отчета "Количество дней с остатками"
.epf 9,70Kb
2
2 Скачать (1 SM) Купить за 1 850 руб.
ВЫБРАТЬ
	ТоварыНаСкладахОстаткиИОбороты.Номенклатура КАК Номенклатура,
	ТоварыНаСкладахОстаткиИОбороты.Склад КАК Склад,
	СУММА(ВЫБОР
			КОГДА ТоварыНаСкладахОстаткиИОбороты.Период = НАЧАЛОПЕРИОДА(&КонПериода, ДЕНЬ)
				ТОГДА ВЫБОР
						КОГДА ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстатокПредыдущий > 0
							ТОГДА ВЫБОР
									КОГДА ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток <= 0
										ТОГДА РАЗНОСТЬДАТ(ТоварыНаСкладахОстаткиИОбороты.ПредыдущийПериод, ТоварыНаСкладахОстаткиИОбороты.Период, ДЕНЬ)
									ИНАЧЕ РАЗНОСТЬДАТ(ТоварыНаСкладахОстаткиИОбороты.ПредыдущийПериод, &КонПериода, ДЕНЬ)
								КОНЕЦ
						ИНАЧЕ ВЫБОР
								КОГДА ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток > 0
									ТОГДА РАЗНОСТЬДАТ(ТоварыНаСкладахОстаткиИОбороты.Период, &КонПериода, ДЕНЬ)
								ИНАЧЕ ВЫБОР
										КОГДА ТоварыНаСкладахОстаткиИОбороты.КоличествоРасход = ТоварыНаСкладахОстаткиИОбороты.КоличествоРасходПредыдущий
											ТОГДА 1
										ИНАЧЕ 0
									КОНЕЦ
							КОНЕЦ
					КОНЕЦ
			ИНАЧЕ ВЫБОР
					КОГДА ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстатокПредыдущий > 0
						ТОГДА ВЫБОР
								КОГДА ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток <= 0
									ТОГДА РАЗНОСТЬДАТ(ТоварыНаСкладахОстаткиИОбороты.ПредыдущийПериод, ТоварыНаСкладахОстаткиИОбороты.Период, ДЕНЬ)
								ИНАЧЕ РАЗНОСТЬДАТ(ТоварыНаСкладахОстаткиИОбороты.ПредыдущийПериод, ТоварыНаСкладахОстаткиИОбороты.Период, ДЕНЬ)
							КОНЕЦ
					ИНАЧЕ ВЫБОР
							КОГДА ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток > 0
								ТОГДА 1
							ИНАЧЕ ВЫБОР
									КОГДА ТоварыНаСкладахОстаткиИОбороты.КоличествоРасход = ТоварыНаСкладахОстаткиИОбороты.КоличествоРасходПредыдущий
										ТОГДА 1
									ИНАЧЕ 0
								КОНЕЦ
						КОНЕЦ
				КОНЕЦ
		КОНЕЦ) КАК КоличествоДнейСОстатком
ИЗ
	(ВЫБРАТЬ
		ТаблицаПредыдущиеПериоды.Номенклатура КАК Номенклатура,
		ТаблицаПредыдущиеПериоды.Склад КАК Склад,
		ТаблицаПредыдущиеПериоды.Период КАК Период,
		ТаблицаПредыдущиеПериоды.КоличествоКонечныйОстаток КАК КоличествоКонечныйОстаток,
		ТаблицаПредыдущиеПериоды.КоличествоРасход КАК КоличествоРасход,
		ТаблицаПредыдущиеПериоды.ПредыдущийПериод КАК ПредыдущийПериод,
		ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток КАК КоличествоКонечныйОстатокПредыдущий,
		ТоварыНаСкладахОстаткиИОбороты.КоличествоРасход КАК КоличествоРасходПредыдущий
	ИЗ
		(ВЫБРАТЬ
			ТоварыНаСкладахОстаткиИОбороты.Номенклатура КАК Номенклатура,
			ТоварыНаСкладахОстаткиИОбороты.Склад КАК Склад,
			ТоварыНаСкладахОстаткиИОбороты.Период КАК Период,
			ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток КАК КоличествоКонечныйОстаток,
			ТоварыНаСкладахОстаткиИОбороты.КоличествоРасход КАК КоличествоРасход,
			МАКСИМУМ(ТоварыНаСкладахОстаткиИОбороты1.Период) КАК ПредыдущийПериод
		ИЗ
			РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(
					&НачПериода,
					&КонПериода,
					День,
					,
					Номенклатура = &Номенклатура
						И Склад = &Склад) КАК ТоварыНаСкладахОстаткиИОбороты
				ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(
						&НачПериода,
						&КонПериода,
						День,
						,
						Номенклатура = &Номенклатура
							И Склад = &Склад) КАК ТоварыНаСкладахОстаткиИОбороты1
				ПО (ИСТИНА)
					И ТоварыНаСкладахОстаткиИОбороты.Номенклатура = ТоварыНаСкладахОстаткиИОбороты1.Номенклатура
					И ТоварыНаСкладахОстаткиИОбороты.Склад = ТоварыНаСкладахОстаткиИОбороты1.Склад
					И ТоварыНаСкладахОстаткиИОбороты.Период > ТоварыНаСкладахОстаткиИОбороты1.Период
		
		СГРУППИРОВАТЬ ПО
			ТоварыНаСкладахОстаткиИОбороты.Номенклатура,
			ТоварыНаСкладахОстаткиИОбороты.Склад,
			ТоварыНаСкладахОстаткиИОбороты.Период,
			ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток,
			ТоварыНаСкладахОстаткиИОбороты.КоличествоРасход) КАК ТаблицаПредыдущиеПериоды
			ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(
					&НачПериода,
					&КонПериода,
					День,
					,
					Номенклатура = &Номенклатура
						И Склад = &Склад) КАК ТоварыНаСкладахОстаткиИОбороты
			ПО (ИСТИНА)
				И ТаблицаПредыдущиеПериоды.Номенклатура = ТоварыНаСкладахОстаткиИОбороты.Номенклатура
				И ТаблицаПредыдущиеПериоды.Склад = ТоварыНаСкладахОстаткиИОбороты.Склад
				И ТаблицаПредыдущиеПериоды.ПредыдущийПериод = ТоварыНаСкладахОстаткиИОбороты.Период) КАК ТоварыНаСкладахОстаткиИОбороты

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

Возможно, запрос где-то не оптимизирован, но я постараюсь его еще доработать. Запрос ограничен выборкой по Номенклатуре и Складу, что можно легко отключить и наложить другие условия. Это было сделано просто для проверки самого запроса.

остатки по дням

См. также

Логистика, склад и ТМЦ Бухгалтер Пользователь Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия Оптовая торговля, дистрибуция, логистика Управленческий учет Платные (руб)

Программа позволяет организовать учет ответственного хранения товаров с весовыми характеристиками, в том числе со сроком годности и личным кабинетом Поклажедателя. Модуль реализован в виде расширения конфигурации, устанавливается в режиме 1С:Предприятие 8 за 5 минут по инструкции, что позволяет оставить конфигурацию 1С на стандартной поддержке и продолжать получать стандартные обновления от фирмы "1С".

89900 руб.

09.06.2020    41848    34    59    

69

Загрузка и выгрузка в Excel Логистика, склад и ТМЦ Ценообразование, анализ цен Файловый обмен (TXT, XML, DBF), FTP Бухгалтер Пользователь Платформа 1С v8.3 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Эволюция не стоит на месте - новая удобная версия функциональной обработки для Вашего бизнеса! Что же Вы получаете? Удобный и интуитивно понятный интерфейс с 3-мя этапами работы. 2 режима - автоматический и ручной. Чтение XLSX, XLSM, CSV, XML/YML форматов без офиса, на любом сервере! Визуальное связывание колонок файла и реквизитов простым перетаскиванием колонок. Создание или обновление номенклатуры с иерархией, характеристик, доп. реквизитов, упаковок, загрузка практически неограниченного количества картинок на одну номенклатуру (с возможностью загрузки в несколько потоков одновременно), с хранением в томах или в базе. Загрузка номенклатуры поставщиков или поиск по их данным номенклатуры. Загрузка доп. реквизитов в характеристики. Загрузка штрихкодов с генерацией новых. Создание элементов справочников и ПВХ "на лету" для выбранных реквизитов. (Обновление от 22.04.2025, версия 9.10 - 10.0)

18000 руб.

20.11.2015    160954    398    386    

525

SALE! 10%

Перенос данных 1C Взаиморасчеты Оптовая торговля Логистика, склад и ТМЦ Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Управление торговлей 10 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Управленческий учет Платные (руб)

Можно проверить до покупки, оставьте заявку! Воспользовались более 268 компаний! Перенос данных из УТ 10.3 в УТ 11 | из УТ 10.3 в КА 2 | из УТ 10.3 в ERP. Решение для перехода с УТ 10.3. Можно перенести начальные остатки, нормативно-справочную информацию и все возможные документы. При выгрузке можно установить отбор по периоду, организациям и складам.

55778 50200 руб.

24.04.2015    198238    158    245    

287

Загрузка и выгрузка в Excel Розничная торговля Логистика, склад и ТМЦ Ценообразование, анализ цен Прайсы Системный администратор Программист Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Розница 2 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

Загрузка номенклатуры из файлов Excel (xls, xlsx, ods, csv, mxl) в УТ11, КА 2, ERP 2, Розница 2. Задействованы все возможности конфигурации - заполнение реквизитов номенклатуры, дополнительных реквизитов и сведений, характеристики, доп.реквизиты и сведения характеристик. Дополнительные обработки для расширения возможностей.

11100 руб.

29.10.2014    219475    674    529    

462

Операции по ВЭД Оптовая торговля Розничная торговля Логистика, склад и ТМЦ Мастера заполнения Бухгалтер Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

СКАЧАЙТЕ И ПОПРОБУЙТЕ БЕСПЛАТНО! Данная обработка расширяет функционал типовой конфигурации «1С:Бухгалтерия предприятия» и позволяет осуществлять автоматическое заполнение ГТД в документах «Реализация товаров и услуг», «Списание товаров», «Отчет о розничных продажах», «Отчет комиссионера (агента) о продажах», «Требование-накладная», «Возврат товаров от покупателя», «Комплектация номенклатуры», «Безвозмездная передача», «Отчет производства за смену». Обработка предназначена для работы в конфигурации «1С:Бухгалтерия предприятия 8, редакция 3.0» Есть версия обработки оптимизированная для работы в 1CFresh

9600 руб.

19.06.2012    140683    276    81    

235
Оставьте свое сообщение