Имя: Пароль:
1C
1С v8
Два раза подряд выводит результат запроса
0 rogachev
 
27.06.20
19:26
всем привет !

мож кто знает  дублит результат запроса


в строке например   Иванов 1324    Иванов 1324  

все проверил итоги . соединения . не помогает
1 PR
 
27.06.20
19:28
Да!
2 rogachev
 
27.06.20
19:29
(1) так в чем же?
3 rogachev
 
27.06.20
19:31
(1) сайт крутой у тебя
4 Сияющий Асинхраль
 
27.06.20
19:33
(0) Ты предлагаешь народу самолично догадаться что у тебя за запрос, насколько криво он написан и как работает?
5 rogachev
 
27.06.20
19:35
(4) у тебя сайт не работает проверь
6 PR
 
27.06.20
19:36
(3) Кстати, да, надо бы поменять на http://www.bit-erp.ru уже что ли
7 ДенисЧ
 
27.06.20
19:36
"я никогда не буду показывать свой код" (с) Барт Симпсон
8 PR
 
27.06.20
19:37
(7) Тсс, не пали контору, а то вдруг еще покажет, как потом спать
9 ДенисЧ
 
27.06.20
19:38
(8) Тебе спать сегодня не придётся. Будешь икать.
У меня робот на свечку настроен для тебя.
10 PR
 
27.06.20
19:40
(9) Тю
11 ДенисЧ
 
27.06.20
19:40
(10) хеть.
12 rogachev
 
27.06.20
19:42
(7) +
13 PR
 
27.06.20
19:45
Хм, а не дурачок ли ТС часом
14 rogachev
 
27.06.20
19:46
(13) следи за базаром
15 rogachev
 
27.06.20
19:46
покидаю вас коллеги
16 rogachev
 
27.06.20
19:47
и еще это следопыт влез acht  страдает
17 Ёпрст
 
27.06.20
23:48
(0) ошибка в 42 строке
18 rogachev
 
28.06.20
09:44
ВЫБРАТЬ
    ЛК_ЛизингополучательОССрезПоследних.ОсновноеСредство КАК ОсновноеСредство,
    ЛК_ЛизингополучательОССрезПоследних.Организация КАК Организация,
    ЛК_ЛизингополучательОССрезПоследних.Лизингополучатель КАК Лизингополучатель,
    ЛК_ЛизингополучательОССрезПоследних.ДоговорКонтрагента КАК ДоговорКонтрагента,
    ЛК_ЛизингополучательОССрезПоследних.ОСВыбыло КАК ОСВыбыло,
    ЛК_ЛизингополучательОССрезПоследних.Лизингополучатель.ИНН КАК ЛизингополучательИНН
ПОМЕСТИТЬ вр_ОсновноеСредство
ИЗ
    РегистрСведений.ЛК_ЛизингополучательОС.СрезПоследних(, Организация = &Организация) КАК ЛК_ЛизингополучательОССрезПоследних
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ЛК_ЛизингополучательОС.ДоговорКонтрагента КАК ДоговорКонтрагента,
    ЛК_ЛизингополучательОС.Лизингополучатель КАК Лизингополучатель,
    ЛК_ЛизингополучательОС.ОсновноеСредство КАК ОсновноеСредство
ПОМЕСТИТЬ вр_Договора
ИЗ
    РегистрСведений.ЛК_ЛизингополучательОС КАК ЛК_ЛизингополучательОС
ГДЕ
    ЛК_ЛизингополучательОС.ОсновноеСредство В
            (ВЫБРАТЬ
                вр_ОсновноеСредство.ОсновноеСредство
            ИЗ
                вр_ОсновноеСредство КАК вр_ОсновноеСредство)
    И ЛК_ЛизингополучательОС.Организация = &Организация
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ЛК_ЛизингополучательОССрезПоследних.ОсновноеСредство КАК ОсновноеСредство,
    ЛК_ГрафикиДоговоровЛизингСрезПоследних.Регистратор КАК Регистратор,
    ЛК_ГрафикиДоговоровЛизингСрезПоследних.ДатаЗавершенияГрафика КАК ДатаЗавершенияГрафика,
    ЛК_ГрафикиДоговоровЛизингСрезПоследних.ОбщаяСуммаПлатежей КАК ОбщаяСуммаПлатежей,
    ЛК_ГрафикиДоговоровЛизингСрезПоследних.СуммаАванса КАК СуммаАванса,
    ЕСТЬNULL(ЛК_ГрафикиДоговоровЛизингСрезПоследних.ОбщаяСуммаПлатежей, 0) - ЕСТЬNULL(ВложенныйЗапрос51_62.СуммаОборот, 0) - ЕСТЬNULL(ОплатаПрошлыхПериодов.СуммаОплаты, 0) + ЕСТЬNULL(ВложенныйЗапрос62_51.СуммаОборот, 0) - ЕСТЬNULL(ВложенныйЗапрос62_62.СуммаОборот, 0) КАК Остаток,
    ЕСТЬNULL(ВложенныйЗапрос51_62.СуммаОборот, 0) КАК Сумма51_62,
    ЕСТЬNULL(ОплатаПрошлыхПериодов.СуммаОплаты, 0) КАК СуммаОплата,
    ЕСТЬNULL(ВложенныйЗапрос62_51.СуммаОборот, 0) КАК Сумма62_51,
    ЕСТЬNULL(ВложенныйЗапрос62_62.СуммаОборот, 0) КАК Сумма62_62,
    ЛК_ГрафикиДоговоровЛизингСрезПоследних.Контрагент.Наименование КАК КонтрагентНаименование,
    ЛК_ГрафикиДоговоровЛизингСрезПоследних.Договор.Наименование КАК ДоговорНаименование,
    ЛК_ЛизингополучательОССрезПоследних.ОсновноеСредство.Наименование КАК ОсновноеСредствоНаименование,
    ЛК_ГрафикиДоговоровЛизингСрезПоследних.Контрагент.ИНН КАК КонтрагентИНН,
    ЛК_ЛизингополучательОССрезПоследних.ОсновноеСредство.Лк_Пл КАК ТипПл
ПОМЕСТИТЬ вр_Осн
ИЗ
    вр_ОсновноеСредство КАК ЛК_ЛизингополучательОССрезПоследних
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ЛК_ГрафикиДоговоровЛизинг.СрезПоследних(, ) КАК ЛК_ГрафикиДоговоровЛизингСрезПоследних
        ПО ЛК_ЛизингополучательОССрезПоследних.Организация = ЛК_ГрафикиДоговоровЛизингСрезПоследних.Организация
            И ЛК_ЛизингополучательОССрезПоследних.Лизингополучатель = ЛК_ГрафикиДоговоровЛизингСрезПоследних.Контрагент
            И ЛК_ЛизингополучательОССрезПоследних.ДоговорКонтрагента = ЛК_ГрафикиДоговоровЛизингСрезПоследних.Договор
        ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
            СУММА(ХозрасчетныйОборотыДтКт.СуммаОборот) КАК СуммаОборот,
            вр_Договора.ОсновноеСредство КАК ОсновноеСредство
        ИЗ
            РегистрБухгалтерии.Хозрасчетный.ОборотыДтКт(, &Дата, , НЕ СчетДт В ИЕРАРХИИ (&Счет90), , СчетКт В ИЕРАРХИИ (&Счет62), , ) КАК ХозрасчетныйОборотыДтКт
                ВНУТРЕННЕЕ СОЕДИНЕНИЕ вр_Договора КАК вр_Договора
                ПО ХозрасчетныйОборотыДтКт.СубконтоКт2 = вр_Договора.ДоговорКонтрагента
        
        СГРУППИРОВАТЬ ПО
            вр_Договора.ОсновноеСредство) КАК ВложенныйЗапрос51_62
        ПО ЛК_ЛизингополучательОССрезПоследних.ОсновноеСредство = ВложенныйЗапрос51_62.ОсновноеСредство
        ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
            СУММА(ХозрасчетныйОборотыДтКт.СуммаОборот) КАК СуммаОборот,
            вр_Договора.ОсновноеСредство КАК ОсновноеСредство
        ИЗ
            РегистрБухгалтерии.Хозрасчетный.ОборотыДтКт(
                    ,
                    &Дата,
                    ,
                    СчетДт В ИЕРАРХИИ (&Счет62),
                    ,
                    СчетКт В ИЕРАРХИИ (&Счет62),
                    ,
                    СубконтоДт2 <> СубконтоКт2
                        И СубконтоДт2 В
                            (ВЫБРАТЬ
                                вр_Договора.ДоговорКонтрагента
                            ИЗ
                                вр_Договора КАК вр_Договора)
                        И НЕ СубконтоКт2 В
                                (ВЫБРАТЬ
                                    вр_Договора.ДоговорКонтрагента
                                ИЗ
                                    вр_Договора КАК вр_Договора)) КАК ХозрасчетныйОборотыДтКт
                ВНУТРЕННЕЕ СОЕДИНЕНИЕ вр_Договора КАК вр_Договора
                ПО (ХозрасчетныйОборотыДтКт.СубконтоКт2 = вр_Договора.ДоговорКонтрагента
                        ИЛИ ХозрасчетныйОборотыДтКт.СубконтоДт2 = вр_Договора.ДоговорКонтрагента)
                    И ХозрасчетныйОборотыДтКт.СубконтоКт1 = вр_Договора.Лизингополучатель
                    И ХозрасчетныйОборотыДтКт.СубконтоДт1 = вр_Договора.Лизингополучатель
        
        СГРУППИРОВАТЬ ПО
            вр_Договора.ОсновноеСредство) КАК ВложенныйЗапрос62_62
        ПО ЛК_ЛизингополучательОССрезПоследних.ОсновноеСредство = ВложенныйЗапрос62_62.ОсновноеСредство
        ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
            СУММА(ХозрасчетныйОборотыДтКт.СуммаОборот) КАК СуммаОборот,
            вр_Договора.ОсновноеСредство КАК ОсновноеСредство
        ИЗ
            РегистрБухгалтерии.Хозрасчетный.ОборотыДтКт(, &Дата, , СчетДт В ИЕРАРХИИ (&Счет62), , НЕ СчетКт В ИЕРАРХИИ (&Счет90), , ) КАК ХозрасчетныйОборотыДтКт
                ВНУТРЕННЕЕ СОЕДИНЕНИЕ вр_Договора КАК вр_Договора
                ПО ХозрасчетныйОборотыДтКт.СубконтоДт2 = вр_Договора.ДоговорКонтрагента
        
        СГРУППИРОВАТЬ ПО
            вр_Договора.ОсновноеСредство) КАК ВложенныйЗапрос62_51
        ПО ЛК_ЛизингополучательОССрезПоследних.ОсновноеСредство = ВложенныйЗапрос62_51.ОсновноеСредство
        ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
            СУММА(ЛК_ОплатаПрошлыхПериодов.СуммаОплаты) КАК СуммаОплаты,
            вр_Договора.ОсновноеСредство КАК ОсновноеСредство
        ИЗ
            РегистрСведений.ЛК_ОплатаПрошлыхПериодов КАК ЛК_ОплатаПрошлыхПериодов
                ВНУТРЕННЕЕ СОЕДИНЕНИЕ вр_Договора КАК вр_Договора
                ПО ЛК_ОплатаПрошлыхПериодов.Договор = вр_Договора.ДоговорКонтрагента
        
        СГРУППИРОВАТЬ ПО
            вр_Договора.ОсновноеСредство) КАК ОплатаПрошлыхПериодов
        ПО ЛК_ЛизингополучательОССрезПоследних.ОсновноеСредство = ОплатаПрошлыхПериодов.ОсновноеСредство
;

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

СГРУППИРОВАТЬ ПО
    ЛК_ГрафикДоговораЛизингОсновныеДанные.Ссылка,
    ЛК_ГрафикДоговораЛизингОсновныеДанные.Ссылка.МесяцевДоговора,
    ЛК_ГрафикДоговораЛизингОсновныеДанные.ДатаПлатежа
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    вр_Осн.ОсновноеСредство КАК ОсновноеСредство,
    вр_Осн.Регистратор КАК Регистратор,
    вр_Осн.КонтрагентНаименование КАК Контрагент,
    вр_Осн.ДатаЗавершенияГрафика КАК ДатаЗавершенияГрафика,
    вр_Осн.ОбщаяСуммаПлатежей КАК ОбщаяСуммаПлатежей,
    вр_Осн.СуммаАванса КАК СуммаАванса,
    вр_Осн.Остаток КАК Остаток,
    вр_Осн.Сумма51_62 КАК Сумма51_62,
    вр_Осн.СуммаОплата КАК СуммаОплата,
    вр_Осн.Сумма62_62 КАК Сумма62_62,
    вр_Осн.Сумма62_51 КАК Сумма62_51,
    вр_доп.СуммаПлатежа КАК СуммаПлатежа,
    вр_доп.СуммаПлатежа - вр_Осн.Сумма51_62 - вр_Осн.СуммаОплата + вр_Осн.Сумма62_51 - вр_Осн.Сумма62_62 КАК Всего,
    вр_доп.МесяцевДоговора КАК МесяцевДоговора,
    вр_Осн.ОсновноеСредство.ЛК_Договор.Номер КАК НомерДкп,
    вр_Осн.ОсновноеСредство.ЛК_Договор.Дата КАК ДатаДкп,
    вр_Осн.КонтрагентИНН КАК КонтрагентИНН,
    вр_Осн.ОсновноеСредство.Лк_ГруппаКомпаний КАК ГруппаКомпаний,
    вр_Осн.ОсновноеСредство.Лк_ТипЛизинга КАК ТипЛизинга,
    вр_Осн.ОсновноеСредство.Лк_ТипЛизингаФин КАК ТипЛизингаФин,
    вр_Осн.ОсновноеСредство.Лк_Пл КАК ТипПл,
    вр_Осн.ОсновноеСредство.Регион КАК Регион,
    вр_Осн.ОсновноеСредство.ТипГрафикаПл КАК ТипГрафикаПл,
    вр_Осн.ОсновноеСредство.ГруппаОС КАК ГруппаОС,
    вр_доп.АвансРуб КАК АвансРуб,
    вр_Осн.Регистратор.СтоимостьИмущества КАК РегистраторСтоимостьИмущества,
    вр_Осн.Регистратор.СтоимостьИмущества - вр_доп.АвансРуб КАК ФинОб,
    вр_Осн.ОбщаяСуммаПлатежей - вр_Осн.Остаток КАК ПолучЛизПл,
    вр_доп.ДатаПлатежа КАК ДатаПлатежа
ИЗ
    вр_Осн КАК вр_Осн
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ вр_доп КАК вр_доп
        ПО вр_Осн.Регистратор.Ссылка = вр_доп.Ссылка
19 rogachev
 
28.06.20
09:45
(17)  что за строка 42?
20 rogachev
 
28.06.20
09:46
|ИЗ
                   |    вр_Осн КАК вр_Осн
                   |        ВНУТРЕННЕЕ СОЕДИНЕНИЕ вр_доп КАК вр_доп
                   |        ПО (вр_Осн.Регистратор.Ссылка = вр_доп.Ссылка)"+
                  ?(ПараметрыОтчета.НеВыводитьДФЛПросроченные, " И
                   |    вр_Осн.ДатаЗавершенияГрафика >= НАЧАЛОПЕРИОДА(&Дата, ДЕНЬ)", "")+
                  ?(ПараметрыОтчета.ОтбиратьПоД, " И  
                   |    вр_Осн.ДатаЗавершенияГрафика >= НАЧАЛОПЕРИОДА(&ДатаНачД, ДЕНЬ)
                   |     И вр_Осн.ДатаЗавершенияГрафика <= КОНЕЦПЕРИОДА(&ДатаКонД, ДЕНЬ)", "") +
                  ?(ЗначениеЗаполнено(ПараметрыОтчета.НачалоПериода), " И
                   |    вр_Осн.Регистратор.Договор.Дата >= &ДатаНач", "")+
                  ?(ЗначениеЗаполнено(ПараметрыОтчета.КонецПериода), " И
                   |    вр_Осн.Регистратор.Договор.Дата <= &ДатаКон", "")+"
                   |УПОРЯДОЧИТЬ ПО "+
                  ?(ПараметрыОтчета.ОтборВыбратьПервые,"вр_Осн.Остаток УБЫВ ",
                  ?(не ПараметрыОтчета.ВыводитьИтогиПоКонтрагенту,"вр_Осн.Регистратор.Договор.Дата ","
                   |    вр_Осн.КонтрагентНаименование,
                   |    вр_Осн.ДоговорНаименование,
                   |    вр_Осн.ОсновноеСредствоНаименование"))+"
                   |ИТОГИ
                   |    МАКСИМУМ(ДатаЗавершенияГрафика),
                   |    МАКСИМУМ(ОбщаяСуммаПлатежей),
                   |    МАКСИМУМ(Остаток),
                   |    МАКСИМУМ(Сумма51_62),
                   |    МАКСИМУМ(СуммаОплата),
                   |    МАКСИМУМ(Сумма62_62),
                   |    МАКСИМУМ(Сумма62_51),
                   |    МАКСИМУМ(Всего)
                   |ПО
                   |    "+?(не ПараметрыОтчета.ВыводитьИтогиПоКонтрагенту, "ОБЩИЕ,", "Контрагент,")+"
                   |    Регистратор,
                   |    ОсновноеСредство";
21 hhhh
 
28.06.20
11:10
(18) несколько регистраторов у одного основного средства
22 minsk1s
 
28.06.20
12:37
(20) код запроса очень громоздкий
правильно: нормально соединить таблицы см. https://1cnik.by/soedinenie_v_zaprose.php
не очень правильно, но можно: выгружать запрос в ТЗ и там удалить дубли
23 rogachev
 
28.06.20
15:18
(21) скорее всего в этом ..
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой