Sum по полю

отредактировано 21:06 Раздел: FastReport 3.0
Добрый день,господа!
Вопрос по формированию отчета:

В документации указано, что формирование суммы "по столбцу", необходимо производить с помощью агрегатных функций (SUM). Формула, даденая в доркументации:
[SUM(<Group."ItemsTotal">,Masterdata1,1)].
Если произвести данное действие над полем, значениями которого являются : 1,2,3 , то результатом будет: "123", а не "6"!!

Sum работает только при дополнительных арифметических действиях, например: Total this order: [Sum(<Sales."Qty">*<Sales."List Price">)].
Все бы ничего, но мне если мне нужно произвести сложение по полю, которое не является производным от чего-либо, мне приходится на что-то умножить, а потом на него же разделить, например:
Сумма:[SUM(<Dataset2."Ed_op_N">*<Dataset2."Sht_Op">/<Dataset2."Sht_Op">)].

Вобщем-то все равно, кроме случаев, когда делитель 0. у меня как раз ситуация, когда делитель 0, что не возможно арифметически.
Заранее благодарен за помощь.

Комментарии

  • Andrew_ShAndrew_Sh г.Минск
    отредактировано 21:06
    Pokemon написал:
    В документации указано, что формирование суммы "по столбцу", необходимо производить с помощью агрегатных функций (SUM). Формула, даденая в доркументации:
    [SUM(<Group."ItemsTotal">,Masterdata1,1)].
    Если произвести данное действие над полем, значениями которого являются : 1,2,3 , то результатом будет: "123", а не "6"!!
    SUM работает верно, как и написано в документации.
    Проверьте запрос. SUM будет возвращать "123" вместо 6,
    <span style='color:red'>ТОЛЬКО ЕСЛИ поле ItemStotal - ТЕКСТОВОЕ</span>.
    Если по какой-то причине в вашей таблице ItemsTotal - текстовое поле, то в запросе используйте функци приведения значений к числовому типу или используйте ф-цию StrToInt или StrToFloat в выражении SUM
    [SUM(StrToInt(<Group."ItemsTotal">),Masterdata1,1)]
    
  • отредактировано 21:06
    Andrew_Sh!
    Спасибо за своевременный и результативный ответ!
    Просто медленный газ..

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

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