Сумма в заголовке группы+drilldown

отредактировано 04:22 Раздел: FastReport 4.0
есть отчет с 4 группировками и у 3 из них стоит флаг DrillDown...задача вывести сумму в каждом заголовке группировки...
бед становится очень много..начиная с того что не выводятся суммы в видимых футерах если сохранить что то через set
до того что то ли set не сохраняет то ли get не может найти значение
для примера можно открыть демо отчет totals in group header и поставить DrillDown второй группировке...получим ошибку..

все эти беды были на 4.12.1 только что обновился до 4.12.6 проблемы остались...это у меня руки кривые иль все таки что то с движком отчета?...ибо 2 дня долбаюсь над весьма средненьким отчетом....уже не знаю как отмазки придумывать начальству...
и ПС
если это моя кривизна то не могли бы тыкнуть на ошибку?
спасибо

Комментарии

  • gpigpi
    отредактировано 04:22
    Вам нужно учитывать невидимые бэнды
    procedure Band7OnBeforePrint(Sender: TfrxComponent);
    begin
      Set(<Sales."Company">, Sum(<Sales."Qty">*<Sales."List Price">, Band6, 1));
    end;
    
    Содержимое мемо тоже нужно подправить
  • отредактировано 04:22
    это просто фантастика...я 100% пробовал ставить флаг 1 для невидимых...а вот ща ничего не меняя запустил отчет и вуаля...все считает...не знаю...может дернул чего то и все поломалось..в общем спасибо

    я почти 2 дня угрохал на ровном месте)))
  • отредактировано June 2012
    опять черти завелись...в футере одной из группировки если написать
    Set(<frxDBDataset1."rn">, SUM(<frxDBDataset1."AppSum">,MasterData1,1));
    сумма перестает считаться и выводит
    05b06f01b08f.jpg
    если закомментировать то все норм...даже сумма этого футера правильная...куда копнуть и от чего вообще может зависеть такая ошибка?...ибо пипец..вчера работало...сегодня решил показать и бац((
  • gpigpi
    отредактировано 04:22
    Приложите шаблон отчёта
  • отредактировано April 2013
    драсте опять. В прошлый раз я плюнул и посчитал суммы на сервере, так как на элементарную вещь я потратил более 3 дней. Сейчас просто хочу разобраться, так как у меня точно такая же ситуация. Я могу опять посчитать суммы на сервере, но теперь это сложнее из за настройки отчета в клиенте. Как только мне надо вывести суммы в заголовках, начинаются проблемы.
    В прикрепленном отчете я записываю переменную, но прочитать ее не могу. Сначала думал, что проблема в свернутых группировках, но развернув их, проблема осталась. Хелп плиз раз и на всегда разобраться.

    И еще вопрос. Почему когда я скрываю футер, мемки, которые на нем, все равно отображаются?
    ПС
    версия 4.13.6
  • отредактировано April 2013
    и вот еще что. Провел элементарный тест
    procedure Memo8OnBeforePrint(Sender: TfrxComponent);
    begin
    Set('test',11111111);
    // Set('F'+<frxDBDataset1."MainDepartmentName">+'~'+<frxDBDataset1."GroupName">, Sum(<frxDBDataset1."FactSum">,1));
    // Set('P'+<frxDBDataset1."MainDepartmentName">+'~'+<frxDBDataset1."GroupName">, Sum(<frxDBDataset1."PlanSum">,1));
    title.text:=VarToStr(Get('test')); <== выводит
    end;


    procedure Group2FactSumOnBeforePrint(Sender: TfrxComponent);
    var
    val : variant;
    begin
    if Engine.FinalPass then begin
    val:=Get('F'+<frxDBDataset1."MainDepartmentName">+'~'+<frxDBDataset1."GroupName">);
    // Group2FactSum.Text := Format('%2.2n',[Get('F'+<frxDBDataset1."MainDepartmentName">+'~'+<frxDBDataset1."GroupName">)]);
    Group2FactSum.Text := VarToStr(Get('test')); <== не выводит

    Дальше лучше. Оказывается, он сейчас вообще не попадает в if Engine.FinalPass then begin
    что вообще происходит?
    =============================================
    все таки попадает в if Engine.FinalPass then begin, но значение не меняет, даже если я явно пишу Group2FactSum.Text :='dfgdfg';

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.