первый вариант

```1c
    ВЫБРАТЬ
    ДвижениеДС.ВидДвижения,
    ДвижениеДС.Регистратор.Дата,
    ДвижениеДС.Сумма,
    ДвижениеДС.Касса.Наименование,
    ДвижениеДС.Магазин.Наименование,
    ДвижениеДС.Регистратор.Номер,
    Заказы.Номер,
    ДвижениеДС.Регистратор.ДокументОснование.Номер,
    Заказы.ЗаказТЧ.(
    Товар.Наименование
    )
    ИЗ
    РегистрНакопления.ДвижениеДС КАК ДвижениеДС
    ПОЛНОЕ СОЕДИНЕНИЕ Документ.Заказы КАК Заказы
    ПО ДвижениеДС.Регистратор.Номер = Заказы.Номер
```

Второй вариант

```1c
    ВЫБРАТЬ
    ДвижениеДС.ВидДвижения,
    ДвижениеДС.Регистратор.Дата,
    ДвижениеДС.Сумма,
    ДвижениеДС.Касса.Наименование,
    ДвижениеДС.Магазин.Наименование,
    ДвижениеДС.Регистратор.Номер,
    Заказы.Номер,
    ДвижениеДС.Регистратор.ДокументОснование.Номер,
    Заказы.ЗаказТЧ.(
    Товар.Наименование
    )
    ИЗ
    РегистрНакопления.ДвижениеДС КАК ДвижениеДС
    ПОЛНОЕ СОЕДИНЕНИЕ Документ.Заказы КАК Заказы
    ПО (ДвижениеДС.Регистратор.ДокументОснование.Номер = Заказы.Номер)
```

В обоих вариантах я получаю номер заказа, далее по номеру заказа получаю Названия товаров.
Первый вариант это один регистратор, второй вариант другой регистратор.
Отличия в последней строчке кода.

Я пытаюсь объединить в одном коде эти две связи, но тогда в результате я не получаю Названия товаров в отчете вообще. Работает только либо первый вариант, либо второй вариант, т.е. по отдельности.

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

```1c
    ВЫБРАТЬ
    ДвижениеДС.ВидДвижения,
    ДвижениеДС.Регистратор.Дата,
    ДвижениеДС.Сумма,
    ДвижениеДС.Касса.Наименование,
    ДвижениеДС.Магазин.Наименование,
    ДвижениеДС.Регистратор.Номер,
    Заказы.Номер,
    ДвижениеДС.Регистратор.ДокументОснование.Номер,
    Заказы.ЗаказТЧ.(
    Товар.Наименование
    )
    ИЗ
    РегистрНакопления.ДвижениеДС КАК ДвижениеДС
    ПОЛНОЕ СОЕДИНЕНИЕ Документ.Заказы КАК Заказы
    ПО ДвижениеДС.Регистратор.Номер = Заказы.Номер

    ОбЪЕДИНИТЬ ВСЕ

    ВЫБРАТЬ
    ДвижениеДС.ВидДвижения,
    ДвижениеДС.Регистратор.Дата,
    ДвижениеДС.Сумма,
    ДвижениеДС.Касса.Наименование,
    ДвижениеДС.Магазин.Наименование,
    ДвижениеДС.Регистратор.Номер,
    Заказы.Номер,
    ДвижениеДС.Регистратор.ДокументОснование.Номер,
    Заказы.ЗаказТЧ.(
    Товар.Наименование
    )
    ИЗ
    РегистрНакопления.ДвижениеДС КАК ДвижениеДС
    ПОЛНОЕ СОЕДИНЕНИЕ Документ.Заказы КАК Заказы
    ПО (ДвижениеДС.Регистратор.ДокументОснование.Номер = Заказы.Номер)
```

И в каждом запросе указываешь условия.

А так, даже на первый взгляд над запросом нужно поработать. Заказы.ЗаказТЧ.(
        Товар.Наименование
    )
---
мне страшно копировать эти запросы даже в копию реальной базы для тестов - застрелиться 100%
---
По номеру можно попробовать так:
ПО Заказы.Номер В (ДвижениеДС.Регистратор.ДокументОснование.Номер, ДвижениеДС.Регистратор.Номер )

А по ссылке связывать не предлагать?
---
используй ВЫБОР
 КОГДА <Выражение> ТОГДА <Выражение>
 ИНАЧЕ <Выражение>
КОНЕЦ
---
Конфигуратора,к сожалению,нет под рукой(

```1c
    ВЫБРАТЬ
    ДвижениеДС.ВидДвижения,
    ДвижениеДС.Регистратор.Дата,
    ДвижениеДС.Сумма,
    ДвижениеДС.Касса.Наименование,
    ДвижениеДС.Магазин.Наименование,
    ДвижениеДС.Регистратор.Номер,
    Заказы.Номер,
    ДвижениеДС.Регистратор.ДокументОснование.Номер,
    Заказы.ЗаказТЧ.(
    Товар.Наименование
    )
    ИЗ
    РегистрНакопления.ДвижениеДС КАК ДвижениеДС
    ПОЛНОЕ СОЕДИНЕНИЕ Документ.Заказы КАК Заказы
    ПО ДвижениеДС.Регистратор.Номер = Заказы.Номер

    ОбЪЕДИНИТЬ ВСЕ

    ВЫБРАТЬ
    ДвижениеДС.ВидДвижения,
    ДвижениеДС.Регистратор.Дата,
    ДвижениеДС.Сумма,
    ДвижениеДС.Касса.Наименование,
    ДвижениеДС.Магазин.Наименование,
    ДвижениеДС.Регистратор.Номер,
    Заказы.Номер,
    ДвижениеДС.Регистратор.ДокументОснование.Номер,
    Заказы.ЗаказТЧ.(
    Товар.Наименование
    )
    ИЗ
    РегистрНакопления.ДвижениеДС КАК ДвижениеДС
    ПОЛНОЕ СОЕДИНЕНИЕ Документ.Заказы КАК Заказы
    ПО (ДвижениеДС.Регистратор.ДокументОснование.Номер = Заказы.Номер)
```

И в каждом запросе указываешь условия.

А так, даже на первый взгляд над запросом нужно поработать. Заказы.ЗаказТЧ.(
        Товар.Наименование
    )
---
Спасибо, вывелось в отчет. Правда дважды, мне нужно подумать над условиями.
---
страшный код, конечно
1. зачем нужно ПОЛНОЕ СОЕДИНЕНИЕ не особо ясно
2. чтобы не получать ТЗ с товарами на выходе, можно сразу обращаться к ТЧ, а к реквизитам документа уже через точку
3. связь по номеру - какая то сомнительная затея
4. если нужна на выходе именно строка, а не ссылка, логичнее пользовать представление()

но, тем не менее, как-то так, думается

```1c
    ВЫБРАТЬ
    ДвижениеДС.ВидДвижения,
    ДвижениеДС.Регистратор.Дата, // ДвижениеДС.Период ?
    ДвижениеДС.Сумма,
    ДвижениеДС.Касса.Наименование, // ПРЕДСТАВЛЕНИЕ(ДвижениеДС.Касса) ?
    ДвижениеДС.Магазин.Наименование, // ПРЕДСТАВЛЕНИЕ(ДвижениеДС.Магазин) ?
    ВЫБОР
    КОГДА ДвижениеДС.Регистратор.ДокументОснование.Номер ЕСТЬ NULL
    ТОГДА ДвижениеДС.Регистратор.Номер
    ИНАЧЕ ДвижениеДС.Регистратор.ДокументОснование.Номер
    КОНЕЦ КАК РегистраторНомер,
    ЗаказыТЧ.Ссылка.Номер,
    ЗаказыТЧ.Товар.Наименование
    ИЗ
    РегистрНакопления.ДвижениеДС КАК ДвижениеДС
    ПОЛНОЕ СОЕДИНЕНИЕ Документ.Заказы.ЗаказТЧ КАК ЗаказыТЧ
    ПО (ВЫБОР
    КОГДА ДвижениеДС.Регистратор.ДокументОснование.Номер ЕСТЬ NULL
    ТОГДА ДвижениеДС.Регистратор.Номер = ЗаказыТЧ.Ссылка.Номер
    ИНАЧЕ ДвижениеДС.Регистратор.ДокументОснование.Номер = ЗаказыТЧ.Ссылка.Номер
    КОНЕЦ)
```