Имя: Пароль:
1C
1С v8
нужна помощь в запросе
0 zalst
 
09.09.14
12:03
опыта пока нет нифига :(. скд виснит при формирования отчета(недостаточно памяти):

запрос взят из стандартного отчета и добавлены некоторые поля. дальше выгружается в внешнийисточник данных и цепляется к СКД.

"ВЫБРАТЬ РАЗРЕШЕННЫЕ РАЗЛИЧНЫЕ
                   |    СчетаКонтрагентов.Ссылка КАК Счет
                   |ПОМЕСТИТЬ СчетаКД
                   |ИЗ
                   |    ПланСчетов.Хозрасчетный.ВидыСубконто КАК СчетаКонтрагентов
                   |        ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ РАЗЛИЧНЫЕ
                   |            ХозрасчетныйВидыСубконто.Ссылка КАК Ссылка
                   |        ИЗ
                   |            ПланСчетов.Хозрасчетный.ВидыСубконто КАК ХозрасчетныйВидыСубконто
                   |        ГДЕ
                   |            ХозрасчетныйВидыСубконто.ВидСубконто = ЗНАЧЕНИЕ(ПланВидовХарактеристик.ВидыСубконтоХозрасчетные.Договоры)) КАК СчетаДоговоров
                   |        ПО СчетаКонтрагентов.Ссылка = СчетаДоговоров.Ссылка
                   |ГДЕ
                   |    СчетаКонтрагентов.ВидСубконто = ЗНАЧЕНИЕ(ПланВидовХарактеристик.ВидыСубконтоХозрасчетные.Контрагенты)
                   |
                   |ИНДЕКСИРОВАТЬ ПО
                   |    Счет
                   |;
                   |
                   |////////////////////////////////////////////////////////////////////////////////
                   |ВЫБРАТЬ РАЗРЕШЕННЫЕ
                   |    ВЫБОР
                   |        КОГДА НЕ ОплатаОтКонтрагентов.Счет В ИЕРАРХИИ (ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.ПереводыВПути_))
                   |            ТОГДА ВЫРАЗИТЬ(ОплатаОтКонтрагентов.Субконто1 КАК Справочник.БанковскиеСчета)
                   |        ИНАЧЕ ОплатаОтКонтрагентов.Счет
                   |    КОНЕЦ КАК Аналитика,
                   |    ЕСТЬNULL(ОплатаОтКонтрагентов.КорСубконто1, ""Итого:"") КАК Плательщик,
                   |    ОплатаОтКонтрагентов.КорСубконто2 КАК Субк2,
                   |    ЕСТЬNULL(ОплатаОтКонтрагентов.СуммаОборотДт, 0) КАК Сумма                  
                   |    ОплатаОтКонтрагентов.Регистратор.НазначениеПлатежа КАК Содержание,
                   |    ОплатаОтКонтрагентов.Регистратор                  
                   |ИЗ
                   |    РегистрБухгалтерии.Хозрасчетный.Обороты(
                   |            &НачалоПериода,
                   |            &КонецПериода,
                   |            Запись,
                   |            Счет В ИЕРАРХИИ (&СчетаДС),
                   |            ,
                   |            Организация = &Организация,
                   |            КорСчет В
                   |                (ВЫБРАТЬ
                   |                    СчетаКД.Счет
                   |                ИЗ
                   |                    СчетаКД КАК СчетаКД),
                   |            &ВидыСубконтоКД) КАК ОплатаОтКонтрагентов
                   |
                   |ОБЪЕДИНИТЬ ВСЕ
                   |
                   |ВЫБРАТЬ
                   |    ВЫБОР
                   |        КОГДА НЕ ПрочиеПоступления.Счет В ИЕРАРХИИ (ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.ПереводыВПути_))
                   |            ТОГДА ВЫРАЗИТЬ(ПрочиеПоступления.Субконто1 КАК Справочник.БанковскиеСчета)
                   |        ИНАЧЕ ПрочиеПоступления.Счет
                   |    КОНЕЦ,
                   |    ПрочиеПоступления.КорСубконто1,
                   |    ПрочиеПоступления.КорСубконто2,
                   |    ЕСТЬNULL(ПрочиеПоступления.СуммаОборотДт, 0)                  
                   |    ПрочиеПоступления.Регистратор.НазначениеПлатежа КАК Содержание,
                   |    ПрочиеПоступления.Регистратор                  
                   |ИЗ
                   |    РегистрБухгалтерии.Хозрасчетный.Обороты(
                   |            &НачалоПериода,
                   |            &КонецПериода,
                   |            Запись,
                   |            Счет В ИЕРАРХИИ (&СчетаДС),
                   |            ,
                   |            Организация = &Организация,
                   |            НЕ КорСчет В
                   |                        (ВЫБРАТЬ
                   |                            СчетаКД.Счет
                   |                        ИЗ
                   |                            СчетаКД КАК СчетаКД)
                   |                И НЕ КорСчет В ИЕРАРХИИ (ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.РасчетыСРозничнымиПокупателями))
                   |                И НЕ КорСчет В ИЕРАРХИИ (ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.Выручка))
                   |                И НЕ КорСчет = ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.Вспомогательный)
                   |                И НЕ КорСчет В ИЕРАРХИИ (&СчетаДС),
                   |            ) КАК ПрочиеПоступления
                   |
                   |ОБЪЕДИНИТЬ ВСЕ
                   |
                   |ВЫБРАТЬ
                   |    ВЫБОР
                   |        КОГДА НЕ РозничнаяВыручка.Счет В ИЕРАРХИИ (ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.ПереводыВПути_))
                   |            ТОГДА ВЫРАЗИТЬ(РозничнаяВыручка.Субконто1 КАК Справочник.БанковскиеСчета)
                   |        ИНАЧЕ РозничнаяВыручка.Счет
                   |    КОНЕЦ,
                   |    РозничнаяВыручка.КорСубконто1,
                   |    РозничнаяВыручка.КорСубконто2,
                   |    ЕСТЬNULL(РозничнаяВыручка.СуммаОборотДт, 0)
                   |    NULL,
                   |    NULL
                   |ИЗ
                   |    РегистрБухгалтерии.Хозрасчетный.Обороты(
                   |            &НачалоПериода,
                   |            &КонецПериода,
                   |            ,
                   |            Счет В ИЕРАРХИИ (&СчетаДС),
                   |            ,
                   |            Организация = &Организация,
                   |            КорСчет В ИЕРАРХИИ (ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.РасчетыСРозничнымиПокупателями))
                   |                ИЛИ КорСчет В ИЕРАРХИИ (ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.Выручка)),
                   |            ) КАК РозничнаяВыручка
                   |ИТОГИ
                   |    СУММА(Сумма)
                   |ПО
                   |    ОБЩИЕ";
1 zalst
 
09.09.14
12:05
чуть не забыл. еще детализация запроса изменена на "запись". итоговая задача увидеть платежи поступившие от клиентов и содержание, сумма платежей.

добавлены поля корсубконто1 и подобные
2 Wobland
 
09.09.14
12:21
>виснит
а здесь ударение на какую букву?
3 ChiginAV
 
09.09.14
12:22
На вскидку
1. Отказаться от "В ИЕРАРХИИ"
2. Составные реквизиты "ВЫРАЗИТЬ"
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший