Всем привет!

У меня проблема, не могу сделать отчет.

Отчет отражает не внесенные данные за выбранный период.

Есть 3 регистра сведений, в каждом хранится "Дата" и "Название". Мне необходимо на каждую дату из периода вывести название из справочников (которых тоже 3), если они были проведены в регистре.

Должно выглядеть примерно так:

Допустим промежуток от 06.06.2020 до 09.06.2020

/ Дата / Название регистра 1 / Название регистра 2 / Название регистра 3 /
/ 06.06.2020 / Название 1.1 / Название 2.1 / Название 3.1 /
/ 07.06.2020 / Название 1.2 /__________________/ Название 3.1 /
/ 08.06.2020 /__________________ / Название 2.3 /__________________/
/ 09.06.2020 / Название 1.4 / Название 2.4 /__________________/

То есть дата выводится на весь период, а названия если есть, то выводятся, если нет, то пустое место.

У меня получается выводить все даты и названия только для одного, а когда объединяю и пробую с двумя, то выводится непонятно что...

Пыталась сделать с наборами данных, не получается

Буду рада любой помощи!!! Спасибо!

Вот код:

```1c
    ВЫБРАТЬ
    ДОБАВИТЬКДАТЕ(&ДатаНачала, ДЕНЬ, Числа.Число) КАК ДатаДень,
    Справочник1.Ссылка КАК Ссылка
    ИЗ
    (ВЫБРАТЬ
    Разряд0.Цифра + Разряд1.Цифра * 10 + Разряд2.Цифра * 100 + Разряд3.Цифра * 1000 КАК Число
    ИЗ
    (ВЫБРАТЬ
    0 КАК Цифра

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    1

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    2

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    3

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    4

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    5

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    6

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    7

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    8

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    9) КАК Разряд0
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
    0 КАК Цифра

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    1

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    2

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    3

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    4

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    5

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    6

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    7

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    8

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    9) КАК Разряд1
    ПО (ИСТИНА)
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
    0 КАК Цифра

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    1

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    2

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    3

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    4

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    5

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    6

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    7

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    8

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    9) КАК Разряд2
    ПО (ИСТИНА)
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
    0 КАК Цифра

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    1

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    2

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    3

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    4

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    5

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    6

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    7

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    8

    ОБЪЕДИНИТЬ

    ВЫБРАТЬ
    9) КАК Разряд3
    ПО (ИСТИНА)) КАК Числа,
    Справочник.Справочник1 КАК Справочник1
    ГДЕ
    ДОБАВИТЬКДАТЕ(&ДатаНачала, ДЕНЬ, Числа.Число) <= &ДатаКонца

    И НЕ Справочник1.Ссылка В
    (ВЫБРАТЬ
    РегистрСведений.Регистр1.Название
    ИЗ
    РегистрСведений.Регистр1
    ГДЕ
    РегистрСведений.Регистр1.Дата = ДОБАВИТЬКДАТЕ(&ДатаНачала, ДЕНЬ, Числа.Число))

    УПОРЯДОЧИТЬ ПО
    ДатаДень
```
---
Всем спасибо! Я сделала через Наборы данных. В каждом наборе данных делала выборку только по своему регистру, а потом выводила все данные на все даты.
---
Отчет разрабатывается с помощью СКД?
---
Да
---
Не мудрите с запросом, генерирующим все даты подряд. Берите даты из регистра. А если Вам нужны даже те даты, для которых в заданном периоде нет записей ни в одном регистре, используйте дополнение периода:
---
Всем спасибо! Я сделала через Наборы данных. В каждом наборе данных делала выборку только по своему регистру, а потом выводила все данные на все даты.