![]() |
![]() |
![]() |
|
Доработка запроса | ☑ | ||
---|---|---|---|---|
0
yuran9393
14.06.25
✎
10:11
|
Добрый день! Имеется запрос:
ПодробностиВЫБРАТЬ РАЗЛИЧНЫЕ Контрагенты.Контрагент КАК Контрагент, Контрагенты.ДоговорЛизинга КАК ДоговорЛизинга, Контрагенты.ДатаЗаключения КАК ДатаЗаключения, Контрагенты.ВИП КАК ВИП, ВЫБОР КОГДА Контрагенты.ЛимитПросрочки < Контрагенты.СредняяСуммаПлатежа * 0.1 ТОГДА Контрагенты.ЛимитПросрочки ИНАЧЕ Контрагенты.СредняяСуммаПлатежа * 0.1 КОНЕЦ КАК ЛимитПросрочки, Контрагенты.ОстатокАванса КАК ОстатокАванса ПОМЕСТИТЬ Договоры ИЗ (ВЫБРАТЬ Контрагенты.Контрагент КАК Контрагент, Контрагенты.Договор КАК ДоговорЛизинга, спрДоговорЛизинга.ДатаЗаключения КАК ДатаЗаключения, Контрагенты_Свойства.ВИП КАК ВИП, ВЫБОР КОГДА спрДоговорЛизинга.Валюта = ЗНАЧЕНИЕ(Справочник._Валюты.Рубль) ТОГДА 3000 ИНАЧЕ 100 КОНЕЦ КАК ЛимитПросрочки, ЕСТЬNULL(ДоговорЛизингаДокУсловияДоговора.СредняяСуммаПлатежа, 0) КАК СредняяСуммаПлатежа, ЕСТЬNULL(ПлатежиЛизингополучателейОстатки.СуммаПланОстаток, 0) КАК ОстатокАванса ИЗ РегистрСведений.Договоры_Контрагент.СрезПоследних(&ДатаАктуальности, ) КАК Контрагенты ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Контрагенты_Свойства КАК Контрагенты_Свойства ПО Контрагенты.Контрагент = Контрагенты_Свойства.Владелец ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов.СрезПоследних(&ДатаАктуальности, Свойство = ЗНАЧЕНИЕ(ПланВидовХарактеристик.СвойстваОбъектов.Проблемный)) КАК ЗначенияСвойствОбъектовСрезПоследних ПО Контрагенты.Контрагент = ЗначенияСвойствОбъектовСрезПоследних.Объект ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ДоговорЛизинга КАК спрДоговорЛизинга ПО Контрагенты.Договор = спрДоговорЛизинга.Ссылка ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДоговорЛизингаДок.СрезПоследних(&ДатаАктуальности, ) КАК ДоговорЛизингаДокСрезПоследних ЛЕВОЕ СОЕДИНЕНИЕ Документ.ДоговорЛизингаДок.УсловияДоговора КАК ДоговорЛизингаДокУсловияДоговора ПО ДоговорЛизингаДокСрезПоследних.Регистратор = ДоговорЛизингаДокУсловияДоговора.Ссылка ПО Контрагенты.Договор = ДоговорЛизингаДокСрезПоследних.ДоговорЛизинга ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПлатежиЛизингополучателей.Остатки(&ДатаАктуальности, спрСтруктураПлатежа = ЗНАЧЕНИЕ(Справочник.СтруктураПлатежа.Аванс)) КАК ПлатежиЛизингополучателейОстатки ПО Контрагенты.Договор = ПлатежиЛизингополучателейОстатки.спрДоговор ГДЕ ЗначенияСвойствОбъектовСрезПоследних.Значение = ИСТИНА И Контрагенты_Свойства.ВИП = ЛОЖЬ {ГДЕ Контрагенты.Контрагент КАК Контрагент, спрДоговорЛизинга.Организация КАК Организация, (ВЫРАЗИТЬ(Контрагенты.Договор КАК Справочник.ДоговорЛизинга)) КАК ДоговорЛизинга, спрДоговорЛизинга.ДатаЗаключения КАК ДатаЗаключения, спрДоговорЛизинга.Валюта КАК Валюта, Контрагенты_Свойства.ВИП КАК ВИП}) КАК Контрагенты ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ ВЫРАЗИТЬ(СтатусыДокументов.Объект КАК Справочник.ДоговорЛизинга) КАК ДоговорЛизинга, МАКСИМУМ(ВЫБОР КОГДА СтатусыДокументов.Статус = ЗНАЧЕНИЕ(Справочник.Статусы.ПодписаниеЕП) ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ) КАК Подписан, МАКСИМУМ(ВЫБОР КОГДА СтатусыДокументов.Статус = ЗНАЧЕНИЕ(Справочник.Статусы.ПередачаВЛизинг) ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ) КАК Передан, МАКСИМУМ(ВЫБОР КОГДА СтатусыДокументов.Статус = ЗНАЧЕНИЕ(Справочник.Статусы.ЗавершениеДокумента) ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ) КАК Завершён ИЗ РегистрСведений.СтатусыДокументов КАК СтатусыДокументов СГРУППИРОВАТЬ ПО СтатусыДокументов.Объект) КАК ДоговорыСтатусы ПО (ДоговорыСтатусы.ДоговорЛизинга = Контрагенты.ДоговорЛизинга) ГДЕ ДоговорыСтатусы.Подписан И ДоговорыСтатусы.Передан И НЕ ДоговорыСтатусы.Завершён ИНДЕКСИРОВАТЬ ПО ДоговорЛизинга ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ МИНИМУМ(Договоры.ДатаЗаключения) КАК Дата ПОМЕСТИТЬ МинДатаЗаключения ИЗ Договоры КАК Договоры ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ Календарь.ДатаКалендарная КАК ДатаКалендарная, Календарь.КоличествоЧасов КАК КоличествоЧасов ПОМЕСТИТЬ Календарь ИЗ РегистрСведений.Календарь КАК Календарь, МинДатаЗаключения КАК МинДатаЗаключения ГДЕ Календарь.ТипКалендаря = ЗНАЧЕНИЕ(Перечисление.ТипыКалендарей.Рабочий) И Календарь.ДатаКалендарная МЕЖДУ МинДатаЗаключения.Дата И ДОБАВИТЬКДАТЕ(КОНЕЦПЕРИОДА(&ДатаАктуальности, МЕСЯЦ), ДЕНЬ, 12 + &КолРабочихДней * 2) ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ Календарь.ДатаКалендарная КАК ДатаНачалаМесяца, МИНИМУМ(Календарь.ДатаРассчитываемогоДня) КАК Дата ПОМЕСТИТЬ Даты10гоРабочегоДняМесяца ИЗ (ВЫБРАТЬ Календарь.ДатаКалендарная КАК ДатаКалендарная, Календарь.ДатаРассчитываемогоДня КАК ДатаРассчитываемогоДня ИЗ (ВЫБРАТЬ Календарь.ДатаКалендарная КАК ДатаКалендарная, РассчитываемыеДни.ДатаКалендарная КАК ДатаРассчитываемогоДня ИЗ Календарь КАК Календарь ЛЕВОЕ СОЕДИНЕНИЕ Календарь КАК РассчитываемыеДни ПО Календарь.ДатаКалендарная < РассчитываемыеДни.ДатаКалендарная И (РассчитываемыеДни.ДатаКалендарная МЕЖДУ ДОБАВИТЬКДАТЕ(Календарь.ДатаКалендарная, ДЕНЬ, &КолРабочихДней) И ДОБАВИТЬКДАТЕ(Календарь.ДатаКалендарная, ДЕНЬ, 12 + &КолРабочихДней * 2)) ГДЕ Календарь.ДатаКалендарная = НАЧАЛОПЕРИОДА(Календарь.ДатаКалендарная, МЕСЯЦ)) КАК Календарь ЛЕВОЕ СОЕДИНЕНИЕ Календарь КАК РабочиеДни ПО Календарь.ДатаКалендарная <= РабочиеДни.ДатаКалендарная И (РабочиеДни.ДатаКалендарная <= Календарь.ДатаРассчитываемогоДня) И (НЕ РабочиеДни.КоличествоЧасов = 0) СГРУППИРОВАТЬ ПО Календарь.ДатаКалендарная, Календарь.ДатаРассчитываемогоДня ИМЕЮЩИЕ КОЛИЧЕСТВО(РАЗЛИЧНЫЕ РабочиеДни.ДатаКалендарная) = &КолРабочихДней) КАК Календарь СГРУППИРОВАТЬ ПО Календарь.ДатаКалендарная ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ регКалендарь.ДатаКалендарная КАК Дата ПОМЕСТИТЬ ДатыРасчета ИЗ РегистрСведений.Календарь КАК регКалендарь ГДЕ регКалендарь.ТипКалендаря = ЗНАЧЕНИЕ(Перечисление.ТипыКалендарей.Рабочий) И регКалендарь.ДатаКалендарная МЕЖДУ ДОБАВИТЬКДАТЕ(&ДатаАктуальности, МЕСЯЦ, -6) И &ДатаАктуальности ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ Платежи.спрДоговор КАК спрДоговор, Платежи.ДатаПлатежа КАК ДатаПлатежа, Платежи.спрСтруктураПлатежа КАК спрСтруктураПлатежа, Платежи.Период КАК Период, Платежи.СуммаПлан КАК СуммаПлан, Платежи.НДСПлан КАК НДСПлан, Платежи.ВидДвижения КАК ВидДвижения ПОМЕСТИТЬ РегистрПЛ ИЗ РегистрНакопления.ПлатежиЛизингополучателей КАК Платежи ВНУТРЕННЕЕ СОЕДИНЕНИЕ Договоры КАК Договоры ПО Платежи.спрДоговор = Договоры.ДоговорЛизинга ГДЕ Платежи.ДатаПлатежа < &ДатаАктуальности И Платежи.Период < &ДатаАктуальности И НЕ Платежи.спрСтруктураПлатежа В ИЕРАРХИИ (ЗНАЧЕНИЕ(Справочник.СтруктураПлатежа.АвансовыйПлатёжГруппа)) ИНДЕКСИРОВАТЬ ПО спрДоговор, ДатаПлатежа, Платежи.Период, спрСтруктураПлатежа ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ Договоры.Контрагент КАК Контрагент, Договоры.ДоговорЛизинга КАК ДоговорЛизинга, Договоры.ЛимитПросрочки КАК ЛимитПросрочки, Договоры.ОстатокАванса КАК ОстатокАванса ИЗ Договоры КАК Договоры УПОРЯДОЧИТЬ ПО Договоры.Контрагент, Договоры.ДоговорЛизинга Требуется добавить ему условие: МАКСИМУМ(ВЫБОР КОГДА СтатусыДокументов.Регистратор.ПричинаЗавершения = ЗНАЧЕНИЕ(Справочник.ПричиныЗавершенияСделки.ПослеПередачиИмущества) И (СтатусыДокументов.Регистратор.ДопПричинаЗавершения = ЗНАЧЕНИЕ(Перечисление.ДополнительныеПричиныЗавершения.ПоУведомлению) ИЛИ СтатусыДокументов.Регистратор.ДопПричинаЗавершения = ЗНАЧЕНИЕ(Перечисление.ДополнительныеПричиныЗавершения.РасторжениеПоАктуПриемаПередачи)) ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ) КАК ДРПА в результате получаем запрос: ВЫБРАТЬ РАЗЛИЧНЫЕ Контрагенты.Контрагент КАК Контрагент, Контрагенты.ДоговорЛизинга КАК ДоговорЛизинга, Контрагенты.ДатаЗаключения КАК ДатаЗаключения, Контрагенты.ВИП КАК ВИП, ВЫБОР КОГДА Контрагенты.ЛимитПросрочки < Контрагенты.СредняяСуммаПлатежа * 0.1 ТОГДА Контрагенты.ЛимитПросрочки ИНАЧЕ Контрагенты.СредняяСуммаПлатежа * 0.1 КОНЕЦ КАК ЛимитПросрочки, Контрагенты.ОстатокАванса КАК ОстатокАванса, ДоговорыСтатусы.ДРПА КАК ДРПА ПОМЕСТИТЬ Договоры ИЗ (ВЫБРАТЬ Контрагенты.Контрагент КАК Контрагент, Контрагенты.Договор КАК ДоговорЛизинга, спрДоговорЛизинга.ДатаЗаключения КАК ДатаЗаключения, Контрагенты_Свойства.ВИП КАК ВИП, ВЫБОР КОГДА спрДоговорЛизинга.Валюта = ЗНАЧЕНИЕ(Справочник._Валюты.Рубль) ТОГДА 3000 ИНАЧЕ 100 КОНЕЦ КАК ЛимитПросрочки, ЕСТЬNULL(ДоговорЛизингаДокУсловияДоговора.СредняяСуммаПлатежа, 0) КАК СредняяСуммаПлатежа, ЕСТЬNULL(ПлатежиЛизингополучателейОстатки.СуммаПланОстаток, 0) КАК ОстатокАванса ИЗ РегистрСведений.Договоры_Контрагент.СрезПоследних(&ДатаАктуальности, ) КАК Контрагенты ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Контрагенты_Свойства КАК Контрагенты_Свойства ПО Контрагенты.Контрагент = Контрагенты_Свойства.Владелец ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов.СрезПоследних(&ДатаАктуальности, Свойство = ЗНАЧЕНИЕ(ПланВидовХарактеристик.СвойстваОбъектов.Проблемный)) КАК ЗначенияСвойствОбъектовСрезПоследних ПО Контрагенты.Контрагент = ЗначенияСвойствОбъектовСрезПоследних.Объект ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ДоговорЛизинга КАК спрДоговорЛизинга ПО Контрагенты.Договор = спрДоговорЛизинга.Ссылка ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДоговорЛизингаДок.СрезПоследних(&ДатаАктуальности, ) КАК ДоговорЛизингаДокСрезПоследних ЛЕВОЕ СОЕДИНЕНИЕ Документ.ДоговорЛизингаДок.УсловияДоговора КАК ДоговорЛизингаДокУсловияДоговора ПО ДоговорЛизингаДокСрезПоследних.Регистратор = ДоговорЛизингаДокУсловияДоговора.Ссылка ПО Контрагенты.Договор = ДоговорЛизингаДокСрезПоследних.ДоговорЛизинга ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПлатежиЛизингополучателей.Остатки(&ДатаАктуальности, спрСтруктураПлатежа = ЗНАЧЕНИЕ(Справочник.СтруктураПлатежа.Аванс)) КАК ПлатежиЛизингополучателейОстатки ПО Контрагенты.Договор = ПлатежиЛизингополучателейОстатки.спрДоговор ГДЕ ЗначенияСвойствОбъектовСрезПоследних.Значение = ИСТИНА И Контрагенты_Свойства.ВИП = ЛОЖЬ {ГДЕ Контрагенты.Контрагент КАК Контрагент, спрДоговорЛизинга.Организация КАК Организация, (ВЫРАЗИТЬ(Контрагенты.Договор КАК Справочник.ДоговорЛизинга)) КАК ДоговорЛизинга, спрДоговорЛизинга.ДатаЗаключения КАК ДатаЗаключения, спрДоговорЛизинга.Валюта КАК Валюта, Контрагенты_Свойства.ВИП КАК ВИП}) КАК Контрагенты ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ ВЫРАЗИТЬ(СтатусыДокументов.Объект КАК Справочник.ДоговорЛизинга) КАК ДоговорЛизинга, МАКСИМУМ(ВЫБОР КОГДА СтатусыДокументов.Статус = ЗНАЧЕНИЕ(Справочник.Статусы.ПодписаниеЕП) ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ) КАК Подписан, МАКСИМУМ(ВЫБОР КОГДА СтатусыДокументов.Статус = ЗНАЧЕНИЕ(Справочник.Статусы.ПередачаВЛизинг) ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ) КАК Передан, МАКСИМУМ(ВЫБОР КОГДА СтатусыДокументов.Статус = ЗНАЧЕНИЕ(Справочник.Статусы.ЗавершениеДокумента) ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ) КАК Завершён, МАКСИМУМ(ВЫБОР КОГДА СтатусыДокументов.Регистратор.ПричинаЗавершения = ЗНАЧЕНИЕ(Справочник.ПричиныЗавершенияСделки.ПослеПередачиИмущества) И (СтатусыДокументов.Регистратор.ДопПричинаЗавершения = ЗНАЧЕНИЕ(Перечисление.ДополнительныеПричиныЗавершения.ПоУведомлению) ИЛИ СтатусыДокументов.Регистратор.ДопПричинаЗавершения = ЗНАЧЕНИЕ(Перечисление.ДополнительныеПричиныЗавершения.РасторжениеПоАктуПриемаПередачи)) ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ) КАК ДРПА ИЗ РегистрСведений.СтатусыДокументов КАК СтатусыДокументов СГРУППИРОВАТЬ ПО СтатусыДокументов.Объект) КАК ДоговорыСтатусы ПО (ДоговорыСтатусы.ДоговорЛизинга = Контрагенты.ДоговорЛизинга) ГДЕ (ДоговорыСтатусы.Подписан И ДоговорыСтатусы.Передан И НЕ ДоговорыСтатусы.Завершён ИЛИ ДоговорыСтатусы.ДРПА) ИНДЕКСИРОВАТЬ ПО ДоговорЛизинга ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ МИНИМУМ(Договоры.ДатаЗаключения) КАК Дата ПОМЕСТИТЬ МинДатаЗаключения ИЗ Договоры КАК Договоры ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ Календарь.ДатаКалендарная КАК ДатаКалендарная, Календарь.КоличествоЧасов КАК КоличествоЧасов ПОМЕСТИТЬ Календарь ИЗ РегистрСведений.Календарь КАК Календарь, МинДатаЗаключения КАК МинДатаЗаключения ГДЕ Календарь.ТипКалендаря = ЗНАЧЕНИЕ(Перечисление.ТипыКалендарей.Рабочий) И Календарь.ДатаКалендарная МЕЖДУ МинДатаЗаключения.Дата И ДОБАВИТЬКДАТЕ(КОНЕЦПЕРИОДА(&ДатаАктуальности, МЕСЯЦ), ДЕНЬ, 12 + &КолРабочихДней * 2) ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ Календарь.ДатаКалендарная КАК ДатаНачалаМесяца, МИНИМУМ(Календарь.ДатаРассчитываемогоДня) КАК Дата ПОМЕСТИТЬ Даты10гоРабочегоДняМесяца ИЗ (ВЫБРАТЬ Календарь.ДатаКалендарная КАК ДатаКалендарная, Календарь.ДатаРассчитываемогоДня КАК ДатаРассчитываемогоДня ИЗ (ВЫБРАТЬ Календарь.ДатаКалендарная КАК ДатаКалендарная, РассчитываемыеДни.ДатаКалендарная КАК ДатаРассчитываемогоДня ИЗ Календарь КАК Календарь ЛЕВОЕ СОЕДИНЕНИЕ Календарь КАК РассчитываемыеДни ПО Календарь.ДатаКалендарная < РассчитываемыеДни.ДатаКалендарная И (РассчитываемыеДни.ДатаКалендарная МЕЖДУ ДОБАВИТЬКДАТЕ(Календарь.ДатаКалендарная, ДЕНЬ, &КолРабочихДней) И ДОБАВИТЬКДАТЕ(Календарь.ДатаКалендарная, ДЕНЬ, 12 + &КолРабочихДней * 2)) ГДЕ Календарь.ДатаКалендарная = НАЧАЛОПЕРИОДА(Календарь.ДатаКалендарная, МЕСЯЦ)) КАК Календарь ЛЕВОЕ СОЕДИНЕНИЕ Календарь КАК РабочиеДни ПО Календарь.ДатаКалендарная <= РабочиеДни.ДатаКалендарная И (РабочиеДни.ДатаКалендарная <= Календарь.ДатаРассчитываемогоДня) И (НЕ РабочиеДни.КоличествоЧасов = 0) СГРУППИРОВАТЬ ПО Календарь.ДатаКалендарная, Календарь.ДатаРассчитываемогоДня ИМЕЮЩИЕ КОЛИЧЕСТВО(РАЗЛИЧНЫЕ РабочиеДни.ДатаКалендарная) = &КолРабочихДней) КАК Календарь СГРУППИРОВАТЬ ПО Календарь.ДатаКалендарная ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ регКалендарь.ДатаКалендарная КАК Дата ПОМЕСТИТЬ ДатыРасчета ИЗ РегистрСведений.Календарь КАК регКалендарь ГДЕ регКалендарь.ТипКалендаря = ЗНАЧЕНИЕ(Перечисление.ТипыКалендарей.Рабочий) И регКалендарь.ДатаКалендарная МЕЖДУ ДОБАВИТЬКДАТЕ(&ДатаАктуальности, МЕСЯЦ, -6) И &ДатаАктуальности ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ Платежи.спрДоговор КАК спрДоговор, Платежи.ДатаПлатежа КАК ДатаПлатежа, Платежи.спрСтруктураПлатежа КАК спрСтруктураПлатежа, Платежи.Период КАК Период, Платежи.СуммаПлан КАК СуммаПлан, Платежи.НДСПлан КАК НДСПлан, Платежи.ВидДвижения КАК ВидДвижения ПОМЕСТИТЬ РегистрПЛ ИЗ РегистрНакопления.ПлатежиЛизингополучателей КАК Платежи ВНУТРЕННЕЕ СОЕДИНЕНИЕ Договоры КАК Договоры ПО Платежи.спрДоговор = Договоры.ДоговорЛизинга ГДЕ Платежи.ДатаПлатежа < &ДатаАктуальности И Платежи.Период < &ДатаАктуальности И НЕ Платежи.спрСтруктураПлатежа В ИЕРАРХИИ (ЗНАЧЕНИЕ(Справочник.СтруктураПлатежа.АвансовыйПлатёжГруппа)) ИНДЕКСИРОВАТЬ ПО спрДоговор, ДатаПлатежа, Платежи.Период, спрСтруктураПлатежа ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ Договоры.Контрагент КАК Контрагент, Договоры.ДоговорЛизинга КАК ДоговорЛизинга, Договоры.ЛимитПросрочки КАК ЛимитПросрочки, Договоры.ОстатокАванса КАК ОстатокАванса, Договоры.ДРПА КАК ДРПА ИЗ Договоры КАК Договоры УПОРЯДОЧИТЬ ПО Договоры.Контрагент, Договоры.ДоговорЛизинга но данный запрос стал возвращать в два раза больше договоров, и по каждому контрагенту может быть большое количество договоров. Как сделать так, чтобы при наличии у контрагента хотя бы 1 договора с ДРПА = ИСТИНА, выводился только один любой договор и с пометкой ДРПА, а по всем остальным все договоры? |
|||
1
AlvlSpb
13.06.25
✎
23:52
|
Я рад за вас. Запрос имеется
|
|||
2
vicof
14.06.25
✎
00:03
|
(0) Не "договора", а "договоры"
|
|||
3
vicof
14.06.25
✎
00:07
|
Для начала позвать архитектора, спроектировать нормальную структуру метаданных, переписать запросы, отчеты, код, сделать тесты, потом уже можно сюда с вопросами)
|
|||
4
VS-1976
14.06.25
✎
10:38
|
(0) Отдельно отобрать контрагентов где есть договор дрпа как фильтр, так же в фильтр выбрать Макс(договор), что бы его потом подставить. Ну и данные по контрагентам в фильтре свернуть, выбрав договор из фильтра
|
|||
5
novichok79
14.06.25
✎
10:54
|
(0) попеременно удалять таблицы и смотреть где произошло задвоение строки.
вероятно надо свернуть где-то данные в левом соединении. а так пздц, конечно, левые соединения к таблицам среза последних и т д. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |