Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > 1C: Предприятие, SAP, ERP и учётные системы > Запрос не показывает итоги по группам справочника


Автор: Itsys 4.7.2008, 22:54
Добрый день,

Есть запрос для ТиС 7.7.:
Код

    ТекстЗапроса = 
    "//{{ЗАПРОС(Сформировать)
    |Период с ВыбНачПериода по ВыбКонПериода;
    |Контрагент = Документ.Реализация.Контрагент;
    |Номенклатура = Документ.Реализация.Номенклатура;
    |Количество = Документ.Реализация.Количество;
    |Функция КоличествоСумма = Сумма(Количество);
    |Группировка Контрагент без групп;
    |Группировка Номенклатура;
    |Условие(Контрагент = ВыбКонтрагент);
    |"//}}ЗАПРОС
    ;


У меня на компьютере все отображается нормально, т.е. группировка по контрагентам не выводит итоги по группам справочника, а группировка по номенклатуре, сначала выводит итоги по группе, а после нее информацию по каждой номенклатуре

НО, есть одно заколдованное место (у клиентов), где итоги по группе номенклатуры не выводятся, и как я уже с бубном не танцевал: и базу тестировал и выгружал - загружал, и запрос через регистр переписывал - не выдает, и все тут.

Оболочка 27, у меня на ноуте 25, может с этим связано, хотя врятли, т.к. этот же запрос перекрасно работает в других местах (у других клиентов), у них тоже 27 оболочка.

Может кто сталкивался с таким поведением и как решали?

Автор: SaschaL 5.7.2008, 07:59
добрый день! Что подобное у меня было, вернее не у меня а у одной мелкой франчайзы, её ребята тоже танцевали с бубном.
Когда они опустили руки я сделал следующее. Собрал итог по нужной мне группировке в цикле. Т.е. при подготовке данных на печать я включил еще цикл для обхода строк который входят в группировку и все получилось. Правда отчет стал работать процента на 5 дольше, но зато работает, причем ситуация с ядром 1С была примерно аналогичной вашей.
Попробуйте этот вариант как выход из положения.

Желаю удачи!

Автор: Itsys 5.7.2008, 08:33
SaschaL, Городить огород (создавать доп цикл), это конечо выход, но меня больше интересует пирода сего явления, да и как его побороть.

ЗЫ Приведенный запрос не совем реальный, и в неработающем запросе необходимо получать итоги по группам на нескольких уровнях группировок, а это уже не 5% времени smile скорость работы скрипта падает в разы, недавно я делал отчет по неотгруженным заказам, так вот время выполнения голого запроса за месяц и вывода результатов занимает 10 минут, с дополнительными обработками (т.к. пользователь хотел, чтобы отчет показывался именно в том виде, какой был предоставлен макет) - 2,5 часа. Вот так.

Автор: SaschaL 7.7.2008, 05:45
То что время тянет согласен! Но это лишь предложено как крайний вариант.

Автор: Itsys 7.7.2008, 18:38
Не, конечно, можно сделать так:
Код

    ТекстЗапроса = 
    "//{{ЗАПРОС(Сформировать)
    |Период с ВыбНачПериода по ВыбКонПериода;
    |Контрагент = Документ.Реализация.Контрагент;
    |НоменклатураРодитель = Документ.Реализация.Номенклатура.Родитель;
    |Номенклатура = Документ.Реализация.Номенклатура;
    |Количество = Документ.Реализация.Количество;
    |Функция КоличествоСумма = Сумма(Количество);
    |Группировка Контрагент без групп;
    |Группировка НоменклатураРодитель;
    |Группировка Номенклатура без групп;
    |Условие(Контрагент = ВыбКонтрагент);
    |"//}}ЗАПРОС
    ;


Но так, выведется только первый родитель, и не будут учтены родители родителей smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)