Как получить документы,где нет связанных документов? Например нужно получить все проведенные документы Заказ покупателя, где нет связанных документов
---
А что тут сложного?
1. Выбрать все заказы.
2. Выбрать заказы, у которых есть РТУ (РТУ, у которых документ основания является заказом, или ест реквизит Заказ, или как он там называется - там где хранится ссылка на Заказ).
3. Сравнить.
---
Получил все заказы, у которых нет документа РТУ

Запрос:

```1c
    ВЫБРАТЬ
    РеализацияТоваровУслуг.Ссылка,
    РеализацияТоваровУслуг.Сделка
    ПОМЕСТИТЬ ВТ
    ИЗ
    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
    ГДЕ
    РеализацияТоваровУслуг.Сделка <> &Сделка
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    ЗаказПокупателя.Ссылка
    ПОМЕСТИТЬ ВТ2
    ИЗ
    Документ.ЗаказПокупателя КАК ЗаказПокупателя
    ГДЕ
    ЗаказПокупателя.Проведен = ИСТИНА
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    ВТ.Ссылка,
    ВТ.Сделка,
    ВТ2.Ссылка КАК Ссылка1
    ИЗ
    ВТ2 КАК ВТ2
    ЛЕВОЕ СОЕДИНЕНИЕ ВТ КАК ВТ
    ПО ВТ2.Ссылка = ВТ.Сделка
```
---
во первых ВЫРАЗИТЬ не даст никакого эффекта на составном типе, специально проверял, во вторых индексы не всегда хорошо, особенно на небольших таблицах. они только увеличат время выполнения
ну в третьих
Все намного проще и не нужно никаких временных таблиц

```1c
    ВЫБРАТЬ
    ЗаказПокупателя.Ссылка

    ИЗ
    Документ.ЗаказПокупателя КАК ЗаказПокупателя
    ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
    ПО ЗаказПокупателя.ССылка = РеализацияТоваровУслуг.Сделка
    ГДЕ
    ЗаказПокупателя.Проведен
    И РеализацияТоваровУслуг.Ссылка ЕСТЬ NULL
```

Не стал вчера это приводить :)
---
не понял вас
вы не одиноки в этом :-)

(6) документ-основание
Заказ и есть документ-основание как правило

(1) Как получить документы,где нет связанных документов?
Если программно, то копайте в сторону регистров накопления "РасчетыС...", там есть реквизит "СвязанныйДокумент"
---
да нет, просто у меня завис IQ

документ
вводится на основании
является основанием
------------------------------

автор спрашивал

например нужно получить все проведенные документы
 Заказ покупателя, где нет связанных документов
---
нет связанных документов

это просто шедевр
---
а что именно не понятно то итак?
---
вы хотите код написать или найти без связей ?
---
мне нужно найти документы Заказ покупателя, у которых нет связанных документов. В запросе найти или может через какой-то отчет можно получить такие документы
---
поставьте пометку на удаление
на копии базы

проведите удаление
и не удаленные покажут связи
---
у документа ест кнопка "Связанные документы" при нажатии на которой показываются связанные с этим документом другие документы. Если в документе Заказ покупателя нажать на кнопку Связанные документы, то будет показыать документ Реализация товаров и услуг(если конечно была создана накладная на основе документа заказа)
---
но и он ( заказ) является основанием

потому и вопрос, вы код хотите сами написать

или найти результат

------------
---
мне не документ основание нужно получить. Если мне нужно получить документ основание,то я могу получить документ основание в документе Реализация товаров и услуг.
В общем говоря, мне нужно получить все проведенные документы, у которых нет документа Реализация товаров и услуг
---
универсальный отчет
документ реализация товаров и услуг
отборы
заказ клиента
не заполнено
---
найти результат
---
с вами не скучно
---
Давайте разберемся в терминологии.
У документа нет такой кнопки "Связанные документы".
Просто на форме документа есть кнопка формирования отчета под названием "Связанные документы".
Отчет этот в разных решениях формируется по разному. Но последнее веяние - это его формирование на основании объекта "Критерий отбора".
В этом объекте вы можете увидеть связь реквизитов между документами. Для каждого вида документа - она разная (простого универсального решения нет и не ждите). После чего вы сможете написать запрос, который выберет вам проведенные документы, ссылки на который отсутствуют в "потенциальных связях".
---
это на русском языке ?

получить все проведенные документы

так получайте.

--------------------------------------------
---
не понял вас
---
сформировать универсальный отчет

делайте отборы да и получайте результат
---
не понимаю как через универсальный отчет получить документы Заказ покупателя, где нет связанных ддокументов
---
отбор
документ-основание
заполнено ( значение )
---
это ветка просто что-то :)
---
это вынос мозга с вопросом не связанные документы :)

хорошо, хоть не прикрученные :)
---
мы не понимаем друг друга). Мне не нужны РТУ и которых нет, Заказов. Это через запрос легко получить. Мне нужны Заказы, у которых нет документов РТУ. Вот это не понимаю как получить
---
А что тут сложного?
1. Выбрать все заказы.
2. Выбрать заказы, у которых есть РТУ (РТУ, у которых документ основания является заказом, или ест реквизит Заказ, или как он там называется - там где хранится ссылка на Заказ).
3. Сравнить.
---
что с чем сравнить и зачем?
---
Первые два пункта не прочитал, значит.
---
сравнить каким образом?
---
Левым, например.
---
получить список заказов *проведенных
получить список РТУ, у которых есть документ основание -заказ
и в списке номера этих заказов

дальше сравнить два списка и радоваться :)
---
Спасибо, получилось
---
И что получилось?
---
Получил все заказы, у которых нет документа РТУ

Запрос:

```1c
    ВЫБРАТЬ
    РеализацияТоваровУслуг.Ссылка,
    РеализацияТоваровУслуг.Сделка
    ПОМЕСТИТЬ ВТ
    ИЗ
    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
    ГДЕ
    РеализацияТоваровУслуг.Сделка <> &Сделка
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    ЗаказПокупателя.Ссылка
    ПОМЕСТИТЬ ВТ2
    ИЗ
    Документ.ЗаказПокупателя КАК ЗаказПокупателя
    ГДЕ
    ЗаказПокупателя.Проведен = ИСТИНА
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    ВТ.Ссылка,
    ВТ.Сделка,
    ВТ2.Ссылка КАК Ссылка1
    ИЗ
    ВТ2 КАК ВТ2
    ЛЕВОЕ СОЕДИНЕНИЕ ВТ КАК ВТ
    ПО ВТ2.Ссылка = ВТ.Сделка
```
---
А теперь избавься от второй временной таблицы. Можно сразу работать с физической таблицей Заказы.
---
так?

```1c
    ВЫБРАТЬ
    РеализацияТоваровУслуг.Ссылка,
    РеализацияТоваровУслуг.Сделка
    ПОМЕСТИТЬ ВТ
    ИЗ
    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    ЗаказПокупателя.Ссылка
    ИЗ
    Документ.ЗаказПокупателя КАК ЗаказПокупателя
    ЛЕВОЕ СОЕДИНЕНИЕ ВТ КАК ВТ
    ПО ЗаказПокупателя.Ссылка = ВТ.Сделка
    ГДЕ
    ЗаказПокупателя.Проведен = ИСТИНА
    И ВТ.Ссылка ЕСТЬ NULL
```
---
А в РТУ реквизит "Сделка" имеет тип "ЗаказПокупателя"? И индекс все-таки надо добавить.
---
А в РТУ реквизит "Сделка" имеет тип "ЗаказПокупателя"?
Да.
На построение индексов тратится же время еще.Если даже 1000 строк будет,то с индексами медленнее будет работать
---
Тип Сделка составной? Тогда надо использовать ВЫРАЗИТЬ(), чтобы исключить лишние неявные соединения с другими таблицами.
Индексы. Повторялся и повторюсь: работу сразу надо делать правильно, ибо не знаешь, где это потом тебе выйдет боком.
Да, в данный момент тебе индексы не нужны: в базе работает один человек, запрос выполняется два раза в день, в базе 10 документов. Ок. Но в этом случае ты и не заметишь времени, затраченного на построение индексов. Поэтому нечего жалеть времени.
Теперь представь, что компания разрослась - в базе 200 пользователей, этот запрос каждый пользователь выполняет по 1-2 раза в минуту, и таких запросов в базе развелось более тысячи (в каждом из них когда-то разработчики просто забивали на индексы, они же умные).

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

Лучше день потерять, зато потом всю жизнь за пять минут долетать.
---
я не говорю,что потом в эти запросы индексы ставить)
ВЫРАЗИТЬ() использовать в условии?
---
В поле, в первой таблице
---
во первых ВЫРАЗИТЬ не даст никакого эффекта на составном типе, специально проверял, во вторых индексы не всегда хорошо, особенно на небольших таблицах. они только увеличат время выполнения
ну в третьих
Все намного проще и не нужно никаких временных таблиц

```1c
    ВЫБРАТЬ
    ЗаказПокупателя.Ссылка

    ИЗ
    Документ.ЗаказПокупателя КАК ЗаказПокупателя
    ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
    ПО ЗаказПокупателя.ССылка = РеализацияТоваровУслуг.Сделка
    ГДЕ
    ЗаказПокупателя.Проведен
    И РеализацияТоваровУслуг.Ссылка ЕСТЬ NULL
```

Не стал вчера это приводить :)
---
Это был второй этап )) От простого понимания того как работают таблицы в запросе, до понимания их правильного использования... ))
---
Так то наверное лучше будет ?

```1c
    ВЫБРАТЬ

    РеализацияТоваровУслуг.Сделка КАК Заказ
    ПОМЕСТИТЬ ВТ_Заказы
    ИЗ
    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
    ГДЕ
    РеализацияТоваровУслуг.Сделка <> ЗНАЧЕНИЕ(Документ.ЗаказПокупателя.ПустаяСсылка)
    ;

    ////////////////////////////////////////////////////////////­­////////////////////
    ВЫБРАТЬ
    ЗаказПокупателя.Ссылка

    ИЗ
    Документ.ЗаказПокупателя КАК ЗаказПокупателя
    ЛЕВОЕ СОЕДИНЕНИЕ ВТ_Заказы КАК Заказы
    ПО ЗаказПокупателя.ССылка = Заказы.Заказ
    ГДЕ
    ЗаказПокупателя.Проведен
    И Заказы.Заказ ЕСТЬ NULL
```
---
Спорим, что реквизит "Заказ" в РТУ составной? Поэтому хорошо бы обработать нормально составное поле, и нормально поименовать таблицы, чтобы было удобно читать.

И индексы.
---
этот запрос нужен единаразово. Может еще через несколько месяцев или через год пригодится.
А индексы только будут замедлять, потому результат запроса- 10 строк
---
Свою работу всегда и сразу надо делать качественно. Чтобы вошло в привычку. А вот такое раздолбайское отношение к запросам надолго (если не навсегда) отодвинет вас от профессионализма.
---
Кстати да, на УФ так прям явно написано, что отчет.

(1) А какая кстати конфигурация?
---
УТ 10.3. Обычные формы
---
Тогда смотрите как использовать "СтандартныеПодсистемы.СтруктураПодчиненности"
---
```1c
    НайтиПоСсылкам
```