Пример запроса к регистру, с группировкой по периодам, в которых не было движений

05.09.13

Разработка - Запросы

На практике часто встречал ситуацию, когда надо получить данные (показатели) из регистра накопления "Остатки и обороты" с разворотам по периодом. В основном по месяцам. И должны выходить и те месяца, в которых движений по этому регистру не было. Путем проб, ошибок и поиска в интернете такой запрос получить удалось.

Ограничения данного запроса: яно надо указать максимальное число месяцев, по которым делается разворот.

Предположим 12 месяцев. Тогда: (параметры датанач и датакон 2012 год)

ВЫБРАТЬ
	ДОБАВИТЬКДАТЕ(&ДатаНачала, МЕСЯЦ, ИтогЗапроса.Поле1) КАК Период
ПОМЕСТИТЬ врПериоды
ИЗ
	(ВЫБРАТЬ
		Календарь.Поле1 КАК Поле1
	ИЗ
		(ВЫБРАТЬ
			0 КАК Поле1
		
		ОБЪЕДИНИТЬ ВСЕ
		
		ВЫБРАТЬ
			1
		
		ОБЪЕДИНИТЬ ВСЕ
		
		ВЫБРАТЬ
			2
		
		ОБЪЕДИНИТЬ ВСЕ
		
		ВЫБРАТЬ
			3
		
		ОБЪЕДИНИТЬ ВСЕ
		
		ВЫБРАТЬ
			4
		
		ОБЪЕДИНИТЬ ВСЕ
		
		ВЫБРАТЬ
			5
		
		ОБЪЕДИНИТЬ ВСЕ
		
		ВЫБРАТЬ
			6
		
		ОБЪЕДИНИТЬ ВСЕ
		
		ВЫБРАТЬ
			7
		
		ОБЪЕДИНИТЬ ВСЕ
		
		ВЫБРАТЬ
			8
		
		ОБЪЕДИНИТЬ ВСЕ
		
		ВЫБРАТЬ
			9
		
		ОБЪЕДИНИТЬ ВСЕ
		
		ВЫБРАТЬ
			10
		
		ОБЪЕДИНИТЬ ВСЕ
		
		ВЫБРАТЬ
			11) КАК Календарь
	ГДЕ
		Календарь.Поле1 
результатом данного запроса будет:
 
Период Месяц
 
01.01.2012 0:00:00
 
01.02.2012 0:00:00
 
01.03.2012 0:00:00
 
01.04.2012 0:00:00
 
01.05.2012 0:00:00
 
01.06.2012 0:00:00
 
01.07.2012 0:00:00
 
01.08.2012 0:00:00
 
01.09.2012 0:00:00
 
01.10.2012 0:00:00
 
01.11.2012 0:00:00
 
01.12.2012 0:00:00
 
Итог
 

 

Итак, мы получили список месяцов. Осталось только привязать их к регистру накопления:

 

ВЫБРАТЬ
	ДОБАВИТЬКДАТЕ(&ДатаНачала, МЕСЯЦ, ИтогЗапроса.Поле1) КАК Период
ПОМЕСТИТЬ врПериоды
ИЗ
	(ВЫБРАТЬ
		Календарь.Поле1 КАК Поле1
	ИЗ
		(ВЫБРАТЬ
			0 КАК Поле1
		
		ОБЪЕДИНИТЬ ВСЕ
		
		ВЫБРАТЬ
			1
		
		ОБЪЕДИНИТЬ ВСЕ
		
		ВЫБРАТЬ
			2
		
		ОБЪЕДИНИТЬ ВСЕ
		
		ВЫБРАТЬ
			3
		
		ОБЪЕДИНИТЬ ВСЕ
		
		ВЫБРАТЬ
			4
		
		ОБЪЕДИНИТЬ ВСЕ
		
		ВЫБРАТЬ
			5
		
		ОБЪЕДИНИТЬ ВСЕ
		
		ВЫБРАТЬ
			6
		
		ОБЪЕДИНИТЬ ВСЕ
		
		ВЫБРАТЬ
			7
		
		ОБЪЕДИНИТЬ ВСЕ
		
		ВЫБРАТЬ
			8
		
		ОБЪЕДИНИТЬ ВСЕ
		
		ВЫБРАТЬ
			9
		
		ОБЪЕДИНИТЬ ВСЕ
		
		ВЫБРАТЬ
			10
		
		ОБЪЕДИНИТЬ ВСЕ
		
		ВЫБРАТЬ
			11
		
		ОБЪЕДИНИТЬ ВСЕ
		
		ВЫБРАТЬ
			12) КАК Календарь
	ГДЕ
		Календарь.Поле1 
Задача решена)

Вступайте в нашу телеграмм-группу Инфостарт

запрос периодами

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта 1С:Предприятие 8 Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

16500 руб.

02.09.2020    259240    1430    421    

1165

WEB-интеграция Запросы Программист 1С 8.3 Абонемент ($m)

Post1C - это внешняя обработка, которая превращает 1С в полноценный инструмент для тестирования REST API. Всё управление сосредоточено в одном окне: настройка запроса, выполнение, просмотр ответа и генерация кода - без переключения между формами. Аналог Postman, но работающий в привычной среде 1С.

1 стартмани

02.04.2026    2251    68    priem_nv    23    

65

Инструментарий разработчика Запросы Программист 1С 8.3 1С:Библиотека стандартных подсистем Абонемент ($m)

Представляю новую версию подсистемы работы со схемой запроса, которая завершает её эволюцию от библиотеки по работе со схемой запроса до объектной реализации модели запроса 2. Теперь есть выбор между классическим и текучим стилем написанию кода - оба варианта взаимозаменяемы. Ключевое улучшение - использование объектов в качестве источников данных, значений полей и параметров в условиях виртуальных таблиц, а также новые операторы позиционирования в схеме

1 стартмани

29.03.2026    1804    kalyaka    16    

24

Инструментарий разработчика Запросы Программист 1С:Предприятие 8 1С:Зарплата и кадры государственного учреждения 3 1С:Зарплата и Управление Персоналом 3.x Абонемент ($m)

QueryConsole1C — расширение, включающее консоль запросов с поддержкой исполняемых представлений — аналогов виртуальных таблиц, основанных на методах программного интерфейса ЗУП. Оно позволяет выполнять запросы с учётом встроенной бизнес-логики, отлаживать алгоритмы получения данных и автоматически генерировать код на встроенном языке 1С.

1 стартмани

16.05.2025    11269    148    zup_dev    30    

83

Инструментарий разработчика Запросы Программист 1С:Предприятие 8 1С:ERP Управление предприятием 2 Абонемент ($m)

В данной публикации рассказывается о решении, которое позволяет находить сразу все ошибки в тексте запроса за раз, а не только самую первую.

2 стартмани

05.03.2025    6539    21    XilDen    12    

29

Обновление 1С Запросы Программист 1С:Предприятие 8 1С:ERP Управление предприятием 2 Абонемент ($m)

Данный инструмент помогает анализировать доработанную конфигурацию после обновления на новый релиз и находить «битые» тексты запросов, в которых участвуют несуществующие в новом релизе метаданные.

3 стартмани

06.02.2025    5807    36    XilDen    26    

42

Запросы Программист 1С:Предприятие 8 1C:Бухгалтерия Бесплатно (free)

В статье приведена удобная возможность отладки исполняемого запроса динамического списка.

03.12.2024    13047    artemusII    11    

27
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. maxkisa 05.09.13 14:13 Сейчас в теме
Во многих конфигурациях есть "Регламентированный производственный календарь". Проще его использовать, особенно когда детализация нужна более чем до месяца.
2. WKBAPKA 216 05.09.13 16:16 Сейчас в теме
а что ПЕРИОДАМИ() уже не работает?
mikhailovaew; Spi1y; +2 Ответить
3. Diego_Iv 36 13.09.13 14:17 Сейчас в теме
(2) WKBAPKA,
Если в периоде движений не было, то не работает.
Этот период просто пропущен будет.
4. mptt 16 13.09.13 14:36 Сейчас в теме
Похожая ситуация http://forum.infostart.ru/forum26/topic90743/
с РС. Решается очень просто,
как написал maxkisa с помошьяю
Регламентированный производственный календарь,
решение здесь http://infostart.ru/public/198281/
5. alvabul 48 18.09.13 14:44 Сейчас в теме
maxkisa и mptt - согласен! Так проще.
Для отправки сообщения требуется регистрация/авторизация