8.х Проблемы с выводом отчета

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем AmoZ, 18 ноя 2010.

  1. TopicStarter Overlay
    AmoZ
    Offline

    AmoZ Опытный в 1С

    Регистрация:
    25 дек 2008
    Сообщения:
    123
    Симпатии:
    0
    Баллы:
    26
    Написал небольшой отчет:
    Код:
    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("ДатаНачала", ДатаНачало);
    Запрос.УстановитьПараметр("ДатаОкончания", ДатаКонца);
    //Запрос.УстановитьПараметр("Организация",  Организация);
    
    АналитикаРасчетов = новый Массив();
    АналитикаРасчетов.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Контрагенты);
    АналитикаРасчетов.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Договоры);
    Запрос.УстановитьПараметр("АналитикаРасчетов", АналитикаРасчетов);
    
    СписокСчетов = Новый СписокЗначений();
    СписокСчетов.Добавить(ПланыСчетов.Хозрасчетный.РасчетыСПокупателямиИЗаказчиками);
    СписокСчетов.Добавить(ПланыСчетов.Хозрасчетный.РасчетыСРазнымиДебиторамиИКредиторами);
    Запрос.УстановитьПараметр("ФильтрСписокСчетов", СписокСчетов);
    
    Запрос.Текст =  
    "ВЫБРАТЬ
    |	ХозрасчетныйОбороты.Организация КАК Организация,
    |	ХозрасчетныйОбороты.Период КАК Дата,
    |	ХозрасчетныйОбороты.Регистратор.Номер КАК Номер,
    |	ХозрасчетныйОбороты.Регистратор КАК Документ,
    |	ХозрасчетныйОбороты.Субконто2 КАК Договор,
    |	ХозрасчетныйОбороты.КорСчет,
    |   ХозрасчетныйОбороты.Счет
    |ИЗ
    |	РегистрБухгалтерии.Хозрасчетный.Обороты (
    |   &ДатаНачала,
    |	&ДатаОкончания,
    |	Регистратор,
    |	Счет В ИЕРАРХИИ (&ФильтрСписокСчетов),
    |	&АналитикаРасчетов)	КАК ХозрасчетныйОбороты
    |ГДЕ
    |   ХозрасчетныйОбороты.КорСчет В ИЕРАРХИИ(&ФильтрСписокСчетов)";
    
    
    Результат = Запрос.Выполнить().Выбрать();
    
    Пока Результат.Следующий() Цикл
    Сообщить("Документ: " + Результат.Документ);
    Сообщить("Организация: " + Результат.Организация);
    Сообщить("          ");
    КонецЦикла;
    
    ТабДокумент = Новый ТабличныйДокумент;
    Макет = ПолучитьМакет("Макет");
    
    ОбластьМакета = Макет.ПолучитьОбласть("Заголовок");
    ТабДокумент.Вывести(ОбластьМакета);
    
    ОбластьМакета = Макет.ПолучитьОбласть("Строка");
    
    
    
    ТабДокумент.Показать();
    КонецПроцедуры
    
    На форме только два поля: ДатаНачала, ДатаОкончания.
    Если выбрать период за неделю (с понедельника по пятницу), то все нормально, а если в период входят выходные - то 1Ска зависает.
    Не могу понять в чем проблема. Может кто что-нибудь подсказать?
  2. shurikvz
    Online

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.409
    Симпатии:
    316
    Баллы:
    104
    "Зависает" в каком месте?
    Сам запрос нормально работает хоть за год (почему кстати отбор по КорСчету не засунули в условие ВТ)?
    Код:
    "ВЫБРАТЬ
    ХозрасчетныйОбороты.Организация КАК Организация,
    ХозрасчетныйОбороты.Период КАК Дата,
    ХозрасчетныйОбороты.Регистратор.Номер КАК Номер,
    ХозрасчетныйОбороты.Регистратор КАК Документ,
    ВЫРАЗИТЬ(ХозрасчетныйОбороты.Субконто2 КАК Справочник.ДоговорыКонтрагентов) КАК Договор,
    ХозрасчетныйОбороты.КорСчет,
    ХозрасчетныйОбороты.Счет
    ИЗ
    РегистрБухгалтерии.Хозрасчетный.Обороты(НАЧАЛОПЕРИОДА(&ДатаНачала, ДЕНЬ), КОНЕЦПЕРИОДА(&ДатаОкончания, ДЕНЬ), Регистратор, Счет В ИЕРАРХИИ (&ФильтрСписокСчетов), , , КорСчет В ИЕРАРХИИ (&ФильтрСписокСчетов), &АналитикаРасчетов) КАК ХозрасчетныйОбороты"
    
  3. shurikvz
    Online

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.409
    Симпатии:
    316
    Баллы:
    104
    Тормозит скорее всего из-за этого..
    Проверил, выборка за 2 месяца: 0,4 сек - с условием в ВТ, и 18 сек с отбором в "ГДЕ".

Поделиться этой страницей