Версия для печати темы (https://pro1c.org.ua/index.php?s=96bba25a358a92349c5637544f834bbb&showtopic=47667)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование обычных форм 1С 8.2 и не интерфейсной логики _ Как отобразить при наличии 2х регистраторов второй.

Автор: eror2008 07.09.18, 10:55

Простите сразу за тупые вопросы, только учусь. Конфигурация не типовая. Но задача такая:
Нужно сделать отчет в котором выводятся договора и договора с Доп. соглашением по заданному периоду. (Это сделал вроде работает) Но проблема в том что отображаются 2ве записи: договор и договора с доп. соглашениями.
Как сделать правильно условие: если есть второй регистратор то не отображать первый.? Заранее спасибо!


код отчета:

ВЫБРАТЬ
    Договора.Объект КАК Объект,
    МАКСИМУМ(Договора.Период) КАК Период,
    МАКСИМУМ(Договора.Договор.Дата) КАК ДоговорДата,
    Договора.СуммаПолнаяUSD
ПОМЕСТИТЬ Договорчики
ИЗ
    РегистрСведений.Договора КАК Договора
ГДЕ
    Договора.Активность = ИСТИНА
    И Договора.Регистратор ССЫЛКА Документ.Договор
            

СГРУППИРОВАТЬ ПО
    Договора.Объект,
    Договора.СуммаПолнаяUSD
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Договора.Объект КАК Объект,
    Договора.Объект.ПлощадьОбщая КАК ОбъектПлощадьОбщая,
    СУММА(Договора.СуммаПолнаяUSD) КАК СтоимостьОбъекта,
    Договора.Объект.Комплекс КАК Комплекс,
    Договора.Объект.Секция КАК Секция,
    Договора.Объект.Этаж КАК Этаж,
    СУММА(Договора.Договор.СуммаПервогоВзноса) КАК СуммаПервогоВзноса,
    Договора.Договор.Контрагенты КАК Контрагент
ИЗ
    РегистрСведений.Договора КАК Договора
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ Договорчики КАК Договорчики
        ПО Договора.Период = Договорчики.Период
            И Договора.Объект = Договорчики.Объект
ГДЕ
    Договора.Договор.Дата >= &НачалоПериода
    И Договора.Договор.Дата <= &КонецПериода
    И ВЫБОР
            КОГДА Договора.Регистратор ССЫЛКА Документ.Договор
                ТОГДА ИСТИНА
            КОГДА Договора.Регистратор ССЫЛКА Документ.ДополнительноеСоглашение
                ТОГДА ИСТИНА
            ИНАЧЕ ЛОЖЬ
        КОНЕЦ

СГРУППИРОВАТЬ ПО
    Договора.Объект,
    Договора.Объект.Комплекс,
    Договора.Объект.Секция,
    Договора.Объект.Этаж,
    Договора.Договор.Контрагенты,
    Договора.Объект.ПлощадьОбщая

Автор: podcast 07.09.18, 11:27

eror2008 @ Сегодня, 11:55 * ,
Сделайте консрукицию в поле.

Выбор когда ДопДоговор <> СправочникюДоговора.ПустаяСсылка Тогда 
ДопДоговора
Иначе Договор
Конец


Автор: eror2008 07.09.18, 13:54

podcast @ Сегодня, 12:27 * ,

А можно для далеких? когда добавляю (<> СправочникюДоговора.ПустаяСсылка) Выбивает ошибку "Ожидается выражение ТОГДА"

eror2008 @ Сегодня, 14:12 * ,

Цитата(podcast @ 07.09.18, 12:27) *
eror2008 @ Сегодня, 11:55 ,
Сделайте консрукицию в поле.
Выбор когда ДопДоговор <> СправочникюДоговора.ПустаяСсылка Тогда
ДопДоговора
Иначе Договор
Конец


Только если так написать, но при этом отображает и договор и доп соглашение.

     Выбор Когда Договора.Регистратор ССЫЛКА Документ.ДополнительноеСоглашение  
    Тогда Договора.Регистратор ССЫЛКА Документ.ДополнительноеСоглашение    
Иначе   Договора.Регистратор ССЫЛКА Документ.Договор
Конец

Автор: ed.kharkov 07.09.18, 14:20

eror2008 @ Сегодня, 14:54 * ,

ВЫБОР КОГДА ДопДоговор <> ЗНАЧЕНИЕ(Справочник.Договора.ПустаяСсылка) ТОГДА
Договора.Регистратор ССЫЛКА Документ.ДополнительноеСоглашение  
ИНАЧЕ Договора.Регистратор ССЫЛКА Документ.Договор
КОНЕЦ

Автор: eror2008 07.09.18, 14:24

Цитата(ed.kharkov @ 07.09.18, 15:20) *
ВЫБОР КОГДА ДопДоговор <> ЗНАЧЕНИЕ(Справочник.Договора.ПустаяСсылка) ТОГДА
Договора.Регистратор ССЫЛКА Документ.ДополнительноеСоглашение  
ИНАЧЕ Договора.Регистратор ССЫЛКА Документ.Договор
КОНЕЦ


Ошибка получения информации набора данных
по причине:
Ошибка в запросе набора данных
по причине:
{(20, 37)}: Неверные параметры "Справочник.Договора.ПустаяСсылка"
ВЫБОР КОГДА ДопДоговор <> ЗНАЧЕНИЕ(<<?>>Справочник.Договора.ПустаяСсылка) ТОГДА

Автор: ed.kharkov 07.09.18, 14:42

eror2008 @ Сегодня, 15:24 * ,
Прошу прощения. Недопонял суть проблемы.

Попробуйте так

ВЫБРАТЬ
    Договора.Объект КАК Объект,
    МАКСИМУМ(Договора.Период) КАК Период,
    МАКСИМУМ(Договора.Договор.Дата) КАК ДоговорДата
ПОМЕСТИТЬ Договорчики
ИЗ
    РегистрСведений.Договора КАК Договора
ГДЕ
    Договора.Активность = ИСТИНА
    И Договора.Регистратор ССЫЛКА Документ.Договор
            

СГРУППИРОВАТЬ ПО
    Договора.Объект
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Договора.Объект КАК Объект,
    Договора.Объект.ПлощадьОбщая КАК ОбъектПлощадьОбщая,
    СУММА(Договора.СуммаПолнаяUSD) КАК СтоимостьОбъекта,
    Договора.Объект.Комплекс КАК Комплекс,
    Договора.Объект.Секция КАК Секция,
    Договора.Объект.Этаж КАК Этаж,
    СУММА(Договора.Договор.СуммаПервогоВзноса) КАК СуммаПервогоВзноса,
    Договора.Договор.Контрагенты КАК Контрагент
ИЗ
    РегистрСведений.Договора КАК Договора
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ Договорчики КАК Договорчики
        ПО Договора.Период = Договорчики.Период
            И Договора.Объект = Договорчики.Объект
ГДЕ
    Договора.Договор.Дата >= &НачалоПериода
    И Договора.Договор.Дата <= &КонецПериода
    И ВЫБОР
            КОГДА Договора.Регистратор ССЫЛКА Документ.Договор
                ТОГДА ИСТИНА
            КОГДА Договора.Регистратор ССЫЛКА Документ.ДополнительноеСоглашение
                ТОГДА ИСТИНА
            ИНАЧЕ ЛОЖЬ
        КОНЕЦ

СГРУППИРОВАТЬ ПО
    Договора.Объект,
    Договора.Объект.Комплекс,
    Договора.Объект.Секция,
    Договора.Объект.Этаж,
    Договора.Договор.Контрагенты,
    Договора.Объект.ПлощадьОбщая

Автор: eror2008 07.09.18, 14:49

ed.kharkov @ Сегодня, 15:42 * ,
В этом случае приоритет на отображение на договор(данные с договора). Как сделать так что бы приоритет был на регистратор доп. соглашение(данные с доп. соглашения)?

Автор: ed.kharkov 07.09.18, 14:55

eror2008 @ Сегодня, 15:49 * ,
Получайте таблицу "Договорчики" вот так

ВЫБРАТЬ
    Договора.Объект КАК Объект,
    МАКСИМУМ(Договора.Период) КАК Период,
    МАКСИМУМ(Договора.Договор.Дата) КАК ДоговорДата
ПОМЕСТИТЬ Договорчики
ИЗ
    РегистрСведений.Договора КАК Договора
ГДЕ
    Договора.Активность = ИСТИНА
    И (Договора.Регистратор ССЫЛКА Документ.Договор
          ИЛИ Договора.Регистратор ССЫЛКА Документ.ДополнительноеСоглашение)
            

СГРУППИРОВАТЬ ПО
    Договора.Объект

Автор: eror2008 07.09.18, 14:59

ed.kharkov @ Сегодня, 15:55 * ,
Так я тоже делал.( в этом случае отображаются данные с договора и с доп. соглашения.
Как мне кажется условие ИЛИ вообще не учитывает.

Автор: ed.kharkov 07.09.18, 15:04

eror2008 @ Сегодня, 15:59 * ,
Замените внутреннее соединение на левое. Просмотрел.

ВЫБРАТЬ
    Договора.Объект КАК Объект,
    МАКСИМУМ(Договора.Период) КАК Период,
    МАКСИМУМ(Договора.Договор.Дата) КАК ДоговорДата
ПОМЕСТИТЬ Договорчики
ИЗ
    РегистрСведений.Договора КАК Договора
ГДЕ
    Договора.Активность = ИСТИНА
    И (Договора.Регистратор ССЫЛКА Документ.Договор
          ИЛИ Договора.Регистратор ССЫЛКА Документ.ДополнительноеСоглашение)
            

СГРУППИРОВАТЬ ПО
    Договора.Объект
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Договора.Объект КАК Объект,
    Договора.Объект.ПлощадьОбщая КАК ОбъектПлощадьОбщая,
    СУММА(Договора.СуммаПолнаяUSD) КАК СтоимостьОбъекта,
    Договора.Объект.Комплекс КАК Комплекс,
    Договора.Объект.Секция КАК Секция,
    Договора.Объект.Этаж КАК Этаж,
    СУММА(Договора.Договор.СуммаПервогоВзноса) КАК СуммаПервогоВзноса,
    Договора.Договор.Контрагенты КАК Контрагент
ИЗ
    Договорчики КАК Договорчики
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.Договора КАК Договора
        ПО Договора.Период = Договорчики.Период
            И Договора.Объект = Договорчики.Объект
ГДЕ
    Договора.Договор.Дата >= &НачалоПериода
    И Договора.Договор.Дата <= &КонецПериода
    И ВЫБОР
            КОГДА Договора.Регистратор ССЫЛКА Документ.Договор
                ТОГДА ИСТИНА
            КОГДА Договора.Регистратор ССЫЛКА Документ.ДополнительноеСоглашение
                ТОГДА ИСТИНА
            ИНАЧЕ ЛОЖЬ
        КОНЕЦ

СГРУППИРОВАТЬ ПО
    Договора.Объект,
    Договора.Объект.Комплекс,
    Договора.Объект.Секция,
    Договора.Объект.Этаж,
    Договора.Договор.Контрагенты,
    Договора.Объект.ПлощадьОбщая

Автор: eror2008 07.09.18, 15:09

ed.kharkov @ Сегодня, 16:04 * ,
Ничего не изменилось.

Автор: ed.kharkov 07.09.18, 15:11

eror2008 @ Сегодня, 16:09 * ,
Пришлите последний вариант запроса

Автор: eror2008 07.09.18, 15:32

ed.kharkov @ Сегодня, 16:11 * ,

ВЫБРАТЬ
    Договора.Объект КАК Объект,
    МАКСИМУМ(Договора.Период) КАК Период,
    МАКСИМУМ(Договора.Договор.Дата) КАК ДоговорДата
ПОМЕСТИТЬ Договорчики
ИЗ
    РегистрСведений.Договора КАК Договора
ГДЕ
    Договора.Активность = ИСТИНА
    И (Договора.Регистратор ССЫЛКА Документ.Договор
          ИЛИ Договора.Регистратор ССЫЛКА Документ.ДополнительноеСоглашение)
            

СГРУППИРОВАТЬ ПО
    Договора.Объект
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Договора.Объект КАК Объект,
    Договора.Объект.ПлощадьОбщая КАК ОбъектПлощадьОбщая,
    СУММА(Договора.СуммаПолнаяUSD) КАК СтоимостьОбъекта,
    Договора.Объект.Комплекс КАК Комплекс,
    Договора.Объект.Секция КАК Секция,
    Договора.Объект.Этаж КАК Этаж,
    СУММА(Договора.Договор.СуммаПервогоВзноса) КАК СуммаПервогоВзноса,
    Договора.Договор.Контрагенты КАК Контрагент
ИЗ
    Договорчики КАК Договорчики
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.Договора КАК Договора
        ПО Договора.Период = Договорчики.Период
            И Договора.Объект = Договорчики.Объект
ГДЕ
    Договора.Договор.Дата >= &НачалоПериода
    И Договора.Договор.Дата <= &КонецПериода
    И ВЫБОР
            КОГДА Договора.Регистратор ССЫЛКА Документ.Договор
                ТОГДА ИСТИНА
            КОГДА Договора.Регистратор ССЫЛКА Документ.ДополнительноеСоглашение
                ТОГДА ИСТИНА
            ИНАЧЕ ЛОЖЬ
        КОНЕЦ

СГРУППИРОВАТЬ ПО
    Договора.Объект,
    Договора.Объект.Комплекс,
    Договора.Объект.Секция,
    Договора.Объект.Этаж,
    Договора.Договор.Контрагенты,
    Договора.Объект.ПлощадьОбщая


ed.kharkov @ Сегодня, 16:11 * ,


eror2008 @ Сегодня, 16:26 * ,

Автор: ed.kharkov 07.09.18, 15:38

eror2008 @ Сегодня, 16:12 * ,
Попробуйте вот так

ВЫБРАТЬ
    Договора.Объект КАК Объект,
    МАКСИМУМ(Договора.Период) КАК Период,
    МАКСИМУМ(Договора.Договор.Дата) КАК ДоговорДата
ПОМЕСТИТЬ ТаблицаДоговоров
ИЗ
    РегистрСведений.Договора КАК Договора
ГДЕ
    Договора.Активность = ИСТИНА
    И Договора.Регистратор ССЫЛКА Документ.Договор            

СГРУППИРОВАТЬ ПО
    Договора.Объект
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Договора.Объект КАК Объект,
    МАКСИМУМ(Договора.Период) КАК Период,
    МАКСИМУМ(Договора.Договор.Дата) КАК ДоговорДата
ПОМЕСТИТЬ ТаблицаДопСоглашений
ИЗ
    РегистрСведений.Договора КАК Договора
ГДЕ
    Договора.Активность = ИСТИНА
    И Договора.Регистратор ССЫЛКА Документ.ДополнительноеСоглашение            

СГРУППИРОВАТЬ ПО
    Договора.Объект
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Договора.Объект,
    Договора.Период,
    ДопСоглашения.Объект КАК ОбъектСДопСоглашением
ПОМЕСТИТЬ ТаблицаДоговоровБезДопСоглашений
ИЗ
    ТаблицаДоговоров КАК Договора
    ЛЕВОЕ СОЕДИНЕНИЕ ТаблицаДопСоглашений КАК ДопСоглашения
    ПО Договора.Объект = ДопСоглашения.Объект
ГДЕ
    ВЫБОР КОГДА ДопСоглашения.Объект ЕСТЬ NULL
        ТОГДА ИСТИНА
        ИНАЧЕ ЛОЖЬ
    КОНЕЦ

;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Договора.Объект КАК Объект,
    Договора.Период КАК Период
ПОМЕСТИТЬ Договорчики
ИЗ
    ТаблицаДоговоровБезДопСоглашений КАК Договора

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

ВЫБРАТЬ
    ТаблицаДопСоглашений.Объект,
    ТаблицаДопСоглашений.Период
ИЗ
    ТаблицаДопСоглашений КАК ТаблицаДопСоглашений

;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Договора.Объект КАК Объект,
    Договора.Объект.ПлощадьОбщая КАК ОбъектПлощадьОбщая,
    СУММА(Договора.СуммаПолнаяUSD) КАК СтоимостьОбъекта,
    Договора.Объект.Комплекс КАК Комплекс,
    Договора.Объект.Секция КАК Секция,
    Договора.Объект.Этаж КАК Этаж,
    СУММА(Договора.Договор.СуммаПервогоВзноса) КАК СуммаПервогоВзноса,
    Договора.Договор.Контрагенты КАК Контрагент
ИЗ
    Договорчики КАК Договорчики
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.Договора КАК Договора
        ПО Договора.Период = Договорчики.Период
            И Договора.Объект = Договорчики.Объект
ГДЕ
    Договора.Договор.Дата >= &НачалоПериода
    И Договора.Договор.Дата <= &КонецПериода
    И ВЫБОР
            КОГДА Договора.Регистратор ССЫЛКА Документ.Договор
                ТОГДА ИСТИНА
            КОГДА Договора.Регистратор ССЫЛКА Документ.ДополнительноеСоглашение
                ТОГДА ИСТИНА
            ИНАЧЕ ЛОЖЬ
        КОНЕЦ

СГРУППИРОВАТЬ ПО
    Договора.Объект,
    Договора.Объект.Комплекс,
    Договора.Объект.Секция,
    Договора.Объект.Этаж,
    Договора.Договор.Контрагенты,
    Договора.Объект.ПлощадьОбщая

Автор: eror2008 07.09.18, 15:54

ed.kharkov @ Сегодня, 16:38 * ,
Ничего не изменилось(

Автор: ed.kharkov 07.09.18, 16:06

eror2008 @ Сегодня, 16:32 * ,
За скрин отчета спасибо. Кажется я понял....
Попробуйте сделать группировки в виртуальных таблицах не по полю Объект, а по полю Контрагент.
И соединения соответственно тоже...

Автор: eror2008 07.09.18, 16:10

ed.kharkov @ Сегодня, 17:06 * ,
Только для меня вопрос как это правильно сделать.? Я так ещё не умею.(

Автор: ed.kharkov 07.09.18, 16:26

eror2008 @ Сегодня, 17:10 * ,
)))Вот так

ВЫБРАТЬ
    Договора.Договор.Контрагенты КАК Контрагент,
    МАКСИМУМ(Договора.Период) КАК Период,
    МАКСИМУМ(Договора.Договор.Дата) КАК ДоговорДата
ПОМЕСТИТЬ Договорчики
ИЗ
    РегистрСведений.Договора КАК Договора
ГДЕ
    Договора.Активность = ИСТИНА
    И (Договора.Регистратор ССЫЛКА Документ.Договор
          ИЛИ Договора.Регистратор ССЫЛКА Документ.ДополнительноеСоглашение)
            

СГРУППИРОВАТЬ ПО
    Договора.Договор.Контрагенты
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Договора.Объект КАК Объект,
    Договора.Объект.ПлощадьОбщая КАК ОбъектПлощадьОбщая,
    СУММА(Договора.СуммаПолнаяUSD) КАК СтоимостьОбъекта,
    Договора.Объект.Комплекс КАК Комплекс,
    Договора.Объект.Секция КАК Секция,
    Договора.Объект.Этаж КАК Этаж,
    СУММА(Договора.Договор.СуммаПервогоВзноса) КАК СуммаПервогоВзноса,
    Договора.Договор.Контрагенты КАК Контрагент
ИЗ
    Договорчики КАК Договорчики
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.Договора КАК Договора
        ПО Договора.Период = Договорчики.Период
            И Договора.Договор.Контрагенты = Договорчики.Контрагент
ГДЕ
    Договора.Договор.Дата >= &НачалоПериода
    И Договора.Договор.Дата <= &КонецПериода
    И ВЫБОР
            КОГДА Договора.Регистратор ССЫЛКА Документ.Договор
                ТОГДА ИСТИНА
            КОГДА Договора.Регистратор ССЫЛКА Документ.ДополнительноеСоглашение
                ТОГДА ИСТИНА
            ИНАЧЕ ЛОЖЬ
        КОНЕЦ

СГРУППИРОВАТЬ ПО
    Договора.Объект,
    Договора.Объект.Комплекс,
    Договора.Объект.Секция,
    Договора.Объект.Этаж,
    Договора.Договор.Контрагенты,
    Договора.Объект.ПлощадьОбщая

Автор: eror2008 07.09.18, 16:29

ed.kharkov @ Сегодня, 17:26 * ,
Теперь договора с доп. соглашениями пропали совсем.

Автор: ed.kharkov 07.09.18, 16:34

eror2008 @ Сегодня, 17:29 * ,
Не тот запрос взял crazy.gif

ВЫБРАТЬ
    Договора.Договор.Контрагенты КАК Объект,
    МАКСИМУМ(Договора.Период) КАК Период,
    МАКСИМУМ(Договора.Договор.Дата) КАК ДоговорДата
ПОМЕСТИТЬ ТаблицаДоговоров
ИЗ
    РегистрСведений.Договора КАК Договора
ГДЕ
    Договора.Активность = ИСТИНА
    И Договора.Регистратор ССЫЛКА Документ.Договор            

СГРУППИРОВАТЬ ПО
    Договора.Договор.Контрагенты
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Договора.Договор.Контрагенты КАК Объект,
    МАКСИМУМ(Договора.Период) КАК Период,
    МАКСИМУМ(Договора.Договор.Дата) КАК ДоговорДата
ПОМЕСТИТЬ ТаблицаДопСоглашений
ИЗ
    РегистрСведений.Договора КАК Договора
ГДЕ
    Договора.Активность = ИСТИНА
    И Договора.Регистратор ССЫЛКА Документ.ДополнительноеСоглашение            

СГРУППИРОВАТЬ ПО
    Договора.Договор.Контрагенты
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Договора.Объект,
    Договора.Период,
    ДопСоглашения.Объект КАК ОбъектСДопСоглашением
ПОМЕСТИТЬ ТаблицаДоговоровБезДопСоглашений
ИЗ
    ТаблицаДоговоров КАК Договора
    ЛЕВОЕ СОЕДИНЕНИЕ ТаблицаДопСоглашений КАК ДопСоглашения
    ПО Договора.Объект = ДопСоглашения.Объект
ГДЕ
    ВЫБОР КОГДА ДопСоглашения.Объект ЕСТЬ NULL
        ТОГДА ИСТИНА
        ИНАЧЕ ЛОЖЬ
    КОНЕЦ

;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Договора.Объект КАК Объект,
    Договора.Период КАК Период
ПОМЕСТИТЬ Договорчики
ИЗ
    ТаблицаДоговоровБезДопСоглашений КАК Договора

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

ВЫБРАТЬ
    ТаблицаДопСоглашений.Объект,
    ТаблицаДопСоглашений.Период
ИЗ
    ТаблицаДопСоглашений КАК ТаблицаДопСоглашений

;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Договора.Объект КАК Объект,
    Договора.Объект.ПлощадьОбщая КАК ОбъектПлощадьОбщая,
    СУММА(Договора.СуммаПолнаяUSD) КАК СтоимостьОбъекта,
    Договора.Объект.Комплекс КАК Комплекс,
    Договора.Объект.Секция КАК Секция,
    Договора.Объект.Этаж КАК Этаж,
    СУММА(Договора.Договор.СуммаПервогоВзноса) КАК СуммаПервогоВзноса,
    Договора.Договор.Контрагенты КАК Контрагент
ИЗ
    Договорчики КАК Договорчики
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.Договора КАК Договора
        ПО Договора.Период = Договорчики.Период
            И Договора.Договор.Контрагенты = Договорчики.Объект
ГДЕ
    Договора.Договор.Дата >= &НачалоПериода
    И Договора.Договор.Дата <= &КонецПериода
    И ВЫБОР
            КОГДА Договора.Регистратор ССЫЛКА Документ.Договор
                ТОГДА ИСТИНА
            КОГДА Договора.Регистратор ССЫЛКА Документ.ДополнительноеСоглашение
                ТОГДА ИСТИНА
            ИНАЧЕ ЛОЖЬ
        КОНЕЦ

СГРУППИРОВАТЬ ПО
    Договора.Объект,
    Договора.Объект.Комплекс,
    Договора.Объект.Секция,
    Договора.Объект.Этаж,
    Договора.Договор.Контрагенты,
    Договора.Объект.ПлощадьОбщая

Автор: eror2008 07.09.18, 16:40

ed.kharkov @ Сегодня, 17:34 * ,
Всё равно не отображаются с доп. соглашениями.

eror2008 @ Сегодня, 17:36 * ,
И так я уже пробовал.)

Автор: ed.kharkov 07.09.18, 16:43

eror2008 @ Сегодня, 17:40 * ,
Я там поменял Объект на Контрагента, так что так вряд ли пробовали)

Автор: eror2008 07.09.18, 16:48

ed.kharkov @ Сегодня, 17:43 * ,
я Видел) после того как вы написали поменять объект на контрагента я уже пробовал подставлять)

eror2008 @ Сегодня, 17:44 * ,
вот такой вариант близкий к финалу. Но если закомментировать строки половина договоров не отображается.

ВЫБРАТЬ
    Договора.Объект КАК Объект,
    МАКСИМУМ(Договора.Период) КАК Период,
    МАКСИМУМ(Договора.Договор.Дата) КАК ДоговорДата
ПОМЕСТИТЬ ТаблицаДоговоров
ИЗ
    РегистрСведений.Договора КАК Договора
//ГДЕ
//    Договора.Активность = ИСТИНА
//    И Договора.Регистратор ССЫЛКА Документ.Договор            

СГРУППИРОВАТЬ ПО
    Договора.Объект
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Договора.Объект КАК Объект,
    МАКСИМУМ(Договора.Период) КАК Период,
    МАКСИМУМ(Договора.Договор.Дата) КАК ДоговорДата
ПОМЕСТИТЬ ТаблицаДопСоглашений
ИЗ
    РегистрСведений.Договора КАК Договора
ГДЕ
    Договора.Активность = ИСТИНА
    И Договора.Регистратор ССЫЛКА Документ.ДополнительноеСоглашение            

СГРУППИРОВАТЬ ПО
    Договора.Объект
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Договора.Объект,
    Договора.Период,
    ДопСоглашения.Объект КАК ОбъектСДопСоглашением
ПОМЕСТИТЬ ТаблицаДоговоровБезДопСоглашений
ИЗ
    ТаблицаДоговоров КАК Договора
    ЛЕВОЕ СОЕДИНЕНИЕ ТаблицаДопСоглашений КАК ДопСоглашения
    ПО Договора.Объект = ДопСоглашения.Объект
ГДЕ
    ВЫБОР КОГДА ДопСоглашения.Объект ЕСТЬ NULL
        ТОГДА ИСТИНА
        ИНАЧЕ ЛОЖЬ
    КОНЕЦ

;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Договора.Объект КАК Объект,
    Договора.Период КАК Период
ПОМЕСТИТЬ Договорчики
ИЗ
    ТаблицаДоговоровБезДопСоглашений КАК Договора

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

ВЫБРАТЬ
    ТаблицаДопСоглашений.Объект,
    ТаблицаДопСоглашений.Период
ИЗ
    ТаблицаДопСоглашений КАК ТаблицаДопСоглашений

;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Договора.Объект КАК Объект,
    Договора.Объект.ПлощадьОбщая КАК ОбъектПлощадьОбщая,
    СУММА(Договора.СуммаПолнаяUSD) КАК СтоимостьОбъекта,
    Договора.Объект.Комплекс КАК Комплекс,
    Договора.Объект.Секция КАК Секция,
    Договора.Объект.Этаж КАК Этаж,
    СУММА(Договора.Договор.СуммаПервогоВзноса) КАК СуммаПервогоВзноса,
    Договора.Договор.Контрагенты КАК Контрагент
ИЗ
    Договорчики КАК Договорчики
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.Договора КАК Договора
        ПО Договора.Период = Договорчики.Период
            И Договора.Объект = Договорчики.Объект
ГДЕ
    Договора.Договор.Дата >= &НачалоПериода
    И Договора.Договор.Дата <= &КонецПериода
    И ВЫБОР
            КОГДА Договора.Регистратор ССЫЛКА Документ.Договор
                ТОГДА ИСТИНА
            КОГДА Договора.Регистратор ССЫЛКА Документ.ДополнительноеСоглашение
                ТОГДА ИСТИНА
            ИНАЧЕ ЛОЖЬ
        КОНЕЦ

СГРУППИРОВАТЬ ПО
    Договора.Объект,
    Договора.Объект.Комплекс,
    Договора.Объект.Секция,
    Договора.Объект.Этаж,
    Договора.Договор.Контрагенты,
    Договора.Объект.ПлощадьОбщая

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua