Компонент текст

LedLed
отредактировано 17:47 Раздел: FastReport 3.0
Надо в отчете в конце подвести итог, посчитать суму
Значит, зделал все как написано в руководстве,
Создал надпись
[SUM(<frxDBDataset2."Cost">,MasterData1)]
допустим когда у меня выходит по таблице что есть только 2 цены например 10 и 20, ну и должно получиться 30
А итого мне выдает 1020 , как исправить такое? (тоесть делает конкатенацию)

Комментарии

  • gpigpi
    отредактировано 17:47
    А поле frxDBDataset2."Cost" случайно не текстовое?
  • LedLed
    отредактировано August 2006
    случайно, текстовое
    а как в ФР поменять тип данных?
  • gpigpi
    отредактировано 17:47
    [SUM(StrToFloat(<frxDBDataset2."Cost">),MasterData1)]
    frxReport.EngineOptions.ConvertNulls установить в True
  • LedLed
    отредактировано 17:47
    спасибо...
  • LedLed
    отредактировано 17:47
    теперь выскакивает ошыбка:
    Мемо 22 is not a valid floating point value
    Memo 22 это и есть сумирующий текст...
  • отредактировано 17:47
    Это значит что у тебя разделяющяя запятая не соответсвует формату, в БД у тебя храиться текст например: 1.05, а в FR у тебя в настроках храниться , для разделения целой и дробной части и он требует такое число 1,05
  • LedLed
    отредактировано 17:47
    У меня вообще целые числа ..
  • отредактировано 17:47
    Если ты знаешь что у тебя всегда в этом поле целые числа то попробуй вот этот код:
    написал:
    [SUM(StrToFloat(<frxDBDataset2."Cost">),MasterData1)]
    frxReport.EngineOptions.ConvertNulls установить в True
    переписать так
    [SUM(StrToInt(<frxDBDataset2."Cost">),MasterData1)]
    frxReport.EngineOptions.ConvertNulls установить в True
  • LedLed
    отредактировано 17:47
    я изначально так и писал, не помагает
  • отредактировано 17:47
    написал:
    я изначально так и писал, не помагает
    И что происходит?
  • LedLed
    отредактировано 17:47
    Мемо 22 is not a valid integer point value
  • отредактировано 17:47
    В этом поле (в наборе данных) встречаются буквенные значения?
    Если да, то необходимо написать условие, отбрасывающее значение в сумме, если нет, то вы где-то ошиблись в написании кода.
  • LedLed
    отредактировано August 2006
    нету там букв, я уже пробывал в самой базе данных поставить что нужная колонка имет числовые значение ,
    для того что-бы не использовать StrToInt , все равно одно и тоже!!!!
    Ну где тут я ошыбился?
    [SUM(<frxDBDataset2."Cost">,MasterData1)] - выдает конкатенацию
    [SUM(StrToInt(<frxDBDataset2."Cost">),MasterData1)] - выдает ошыбку
  • LedLed
    отредактировано 17:47
    пробывал уже даже так :
    [<frxDBDataset2."Cost">+<frxDBDataset2."Cost">]
    [StrToInt(<frxDBDataset2."Cost">+<frxDBDataset2."Cost">)]
    всё равно делает конкатенацию, хелп
  • LedLed
    отредактировано 17:47
    пробывал уже с компонентом служебный текст, все равно
    либо конкатенация, либо ошыбка
  • gpigpi
    отредактировано 17:47
    Выложите fp3 (без суммирования) и fr3 (с суммированием) файлы этого отчёта
  • LedLed
    отредактировано August 2006
    у меня на компе нету, отчет на ратобе,
    был бы благодарен пример рабочего суммирования.
    взял бы завтра с собой на работу , сравнил бы...
  • gpigpi
    отредактировано 17:47
    Вот тестовый проект
  • LedLed
    отредактировано 17:47
    ;) у меня BCB
    и самого *.fr3 нету
  • gpigpi
    отредактировано 17:47
    test.fr3 + test.dbf

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

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