Тестовая задача на вакансию «Ведущий разработчик 1С»
Требуется вычислить количество дней присутствия товаров на складах в разрезе склад/номенклатура за период с 01.01.2021 по 10.01.2021 (сколько дней каждый товар, присутствовавший за заданный интервал на складах, находился на них). Днем присутствия считается любой день из периода, в который товар находился на складе, без ограничения полный день или часть дня.
Выходные данные должны содержать склад, номенклатуру, количество дней присутствия на складе.
- Описание
- Подробнее
Описание
Существует регистр накопления "Остатки Номенклатуры" (структура ниже).
Наполнение регистра:
Период | Регистратор | Номенклатура | Склад | Количество |
31.01.2020 01:00:00 | Приходная накладная ПН-0001 | Лаваш | Сочи | 100,000 |
01.01.2021 00:00:01 | Приходная накладная ПН-0001 | Хлеб | Радужный | 100,000 |
03.01.2021 15:00:00 | Расходная накладная РН-0001 | Хлеб | Радужный | 10,000 |
03.01.2021 16:00:00 | Приходная накладная ПН-0002 | Лаваш | Радужный | 3,000 |
04.01.2021 17:00:00 | Расходная накладная РН-0002 | Хлеб | Радужный | 90,000 |
06.01.2021 01:00:00 | Приходная накладная ПН-0003 | Хлеб | Сочи | 50,000 |
07.01.2021 14:00:00 | Приходная накладная ПН-0004 | Хлеб | Радужный | 90,000 |
07.01.2021 14:30:00 | Расходная накладная РН-0003 | Лаваш | Радужный | 1,000 |
08.01.2021 17:00:00 | Расходная накладная РН-0004 | Хлеб | Радужный | 90,000 |
10.01.2021 01:00:00 | Расходная накладная РН-0005 | Хлеб | Сочи | 50,000 |
11.01.2021 14:00:00 | Приходная накладная ПН-0005 | Хлеб | Радужный | 150,000 |
Суть задачи:
Требуется вычислить количество дней присутствия товаров на складах в разрезе склад/номенклатура за период с 01.01.2021 по 10.01.2021 (сколько дней каждый товар, присутствовавший за заданный интервал на складах, находился на них). Днем присутствия считается любой день из периода, в который товар находился на складе, без ограничения полный день или часть дня.
Выходные данные должны содержать склад, номенклатуру, количество дней присутствия на складе.
Ограничения:
1. Использование платформы 1С:Предприятие 8.3 любого релиза
2. Решение должно быть выполнено одним запросом, без циклов в коде. Допускается и приветствуется использование временных таблиц. Допускается использование дополнительных источников данных, указать в решении каких.
3. СКД в решении использоваться не должен
4. Оценка решения производится с точки зрения производительности на больших объемах данных.
Структура регистра «Остатки Номенклатуры»:
Регистраторы: Приходная накладная (вид движения приход), Расходная накладная (вид движения расход)
Измерения: Номенклатура (Справочник.Номенклатура), Склад (Справочник.Склады).
Ресурсы: Количество (Число(15,3)).
* варианты со срезом (детализацией) регистра по периоду менее 1 дня рассматриваться в качестве решения не будут, как нерабочие на больших объемах данных.

