powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / FastReport, TfrxDBDataSet не использует TField.OnGetText?
36 сообщений из 36, показаны все 2 страниц
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702244
Belotsky Serge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!

Вопрос про FastReport (4).
Есть датасет, некоторым полям которого назначено свойство OnGetText.
В отчете используются поля датасета через TfrxDBDataSet. Но отображается 'голое' значение, как будто FastReport не использует свойства Text (DisplayText) для отображения значения поля.
В тоже время у TfrxDBDataSet есть свойство DisplayText[Index].
Как его можно прикрутить в отчете, тогда по идее должен быть вызван OnGetText?
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702401
чччД__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Belotsky Serge,

а что ты хочешь-то, в "глобальном" смысле?
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702433
Belotsky Serge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
чччД__Belotsky Serge,

а что ты хочешь-то, в "глобальном" смысле?

В глобальном смысле не хочу дублировать код. Сейчас я использую TfrxReport.OnGetValue для возврата правильных значений для некоторых полей. При этом, у этих полей есть TField.OnGetText (для отображения в DBGrid).

И еще вопросы:
1. почему не работает условие HighLight: (<Line>div 2)=0 (пробовал [(<Line>div 2)=0]). Я знаю как можно сделать это другим способом, я не понимаю, почему это не работает, пишет: 'Cound't convert variant type (null) into boolean'. <Line>- уже null?

2. почему не работает агрегатная функции count(), Sum() - см. скрин к посту.

Все это решается другими способами, но хочется упростить себе жизнь.
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702465
чччД__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Belotsky SergeчччД__Belotsky Serge,

а что ты хочешь-то, в "глобальном" смысле?

В глобальном смысле не хочу дублировать код. Сейчас я использую TfrxReport.OnGetValue для возврата правильных значений для некоторых полей. При этом, у этих полей есть TField.OnGetText (для отображения в DBGrid).


Не хочешь дублировать код - не дублируй. В чем проблема, где вопрос?
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702470
Василий 2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Была такая фигня, не помню, почему не стал допиливать OnGetText, добавил TfrxCustomDBDataSet.OnNewGetValue, перекрытие TfrxCustomDBDataset.GetValue, чтобы вызывал этот коллбэк, и вызов inherited GetValue в TfrxDBDataset.GetValue
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702471
чччД__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Belotsky SergeИ еще вопросы:
1. почему не работает условие HighLight: (<Line>div 2)=0 (пробовал [(<Line>div 2)=0]). Я знаю как можно сделать это другим способом, я не понимаю, почему это не работает, пишет: 'Cound't convert variant type (null) into boolean'. <Line>- уже null?

Потому, что ты не знаешь, как работает div.
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702477
Belotsky Serge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
чччД__Belotsky Sergeпропущено...


В глобальном смысле не хочу дублировать код. Сейчас я использую TfrxReport.OnGetValue для возврата правильных значений для некоторых полей. При этом, у этих полей есть TField.OnGetText (для отображения в DBGrid).


Не хочешь дублировать код - не дублируй. В чем проблема, где вопрос?

Давай без флейма, я тебя ни к чему не обязываю.
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702479
Belotsky Serge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
чччД__Belotsky SergeИ еще вопросы:
1. почему не работает условие HighLight: (<Line>div 2)=0 (пробовал [(<Line>div 2)=0]). Я знаю как можно сделать это другим способом, я не понимаю, почему это не работает, пишет: 'Cound't convert variant type (null) into boolean'. <Line>- уже null?

Потому, что ты не знаешь, как работает div.

Да тут я ошибся, надо 'mod'. Все равно не работает.
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702480
чччД__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Belotsky Serge
2. почему не работает агрегатная функции count(), Sum() - см. скрин к посту.

Все это решается другими способами, но хочется упростить себе жизнь.
Потому, что ты не понял, что написано в документации к FR.
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702483
чччД__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Belotsky SergeчччД__пропущено...

Потому, что ты не знаешь, как работает div.

Да тут я ошибся, надо 'mod'. Все равно не работает.
Работает.
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702484
чччД__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Belotsky SergeДавай без флейма...
Это - не флейм:
Василий 2Была такая фигня, не помню, почему не стал допиливать OnGetText, добавил TfrxCustomDBDataSet.OnNewGetValue, перекрытие TfrxCustomDBDataset.GetValue, чтобы вызывал этот коллбэк, и вызов inherited GetValue в TfrxDBDataset.GetValue
- ?
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702497
Belotsky Serge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
чччД__Belotsky Sergeпропущено...


Да тут я ошибся, надо 'mod'. Все равно не работает.
Работает.

У меня не работает.

И документацию я читал:
https://www.fast-report.com/documentation/UserMan-ru/index.html?24.htm

по поводу Count, в документации не написано, что функцию Count() можно вызывать без параметров.
https://www.fast-report.com/documentation/UserMan-ru/index.html?24.htm
И даже в этом случае - не работает.
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702511
Василий 2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччД__Belotsky SergeДавай без флейма...
Это - не флейм:
Василий 2Была такая фигня, не помню, почему не стал допиливать OnGetText, добавил TfrxCustomDBDataSet.OnNewGetValue, перекрытие TfrxCustomDBDataset.GetValue, чтобы вызывал этот коллбэк, и вызов inherited GetValue в TfrxDBDataset.GetValue
- ?
Загугли определение флейма и не пори чушь.
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702515
Belotsky Serge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Василий 2чччД__пропущено...

Это - не флейм:
пропущено...

- ?
Загугли определение флейма и не пори чушь.

Развод пустых постов - тоже флейм. Вот как сейчас - не по делу.
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702519
чччД__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Belotsky SergeчччД__пропущено...

Работает.

У меня не работает.
...
Потому что ты почему-то не видишь, что написано в сообщении об ошибке. FR говорит тебе, что ты херь в мемке написал.
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702520
goldmi45
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Belotsky Serge,

FastReport 4.14
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702523
Belotsky Serge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
чччД__Belotsky Sergeпропущено...


У меня не работает.
...
Потому что ты почему-то не видишь, что написано в сообщении об ошибке. FR говорит тебе, что ты херь в мемке написал.

Мимо, это я проверял, ругается не на это. Count() и Sum() просто выводят пустое значение. Ругается именно выражение в Highlight.
Здесь Highlight сделан по другому.
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702527
Belotsky Serge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
goldmi45Belotsky Serge,

FastReport 4.14

У меня 4.15, насколько мне известно - последний релиз для 4. 5-ую версию мы не покупали.
Не работает, возможно дела в датасете. У вас какие-то просты наборы.
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702528
чччД__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Belotsky Serge,

похоже на то, что ты что-то недоговариваешь. Делай минимальное приложение, воспроизводящее проблему, и выкладывай сюда.
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702529
goldmi45
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Belotsky Serge,

просто тестовый пример. MasterData привязан не к датасету, а установлено количество записей - 10.
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702535
Belotsky Serge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
goldmi45Belotsky Serge,

просто тестовый пример. MasterData привязан не к датасету, а установлено количество записей - 10.

На простом датасете тоже на работает :(
Count тоже не работает.
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702538
чччД__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Belotsky Sergegoldmi45Belotsky Serge,

просто тестовый пример. MasterData привязан не к датасету, а установлено количество записей - 10.

На простом датасете тоже на работает :(
Count тоже не работает.

Давно бы сделал отдельное минимальное приложение да выложил тут.
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702540
Belotsky Serge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Belotsky Sergegoldmi45Belotsky Serge,

просто тестовый пример. MasterData привязан не к датасету, а установлено количество записей - 10.

На простом датасете тоже на работает :(
Count тоже не работает.

Если убрать условие Highlight, то выводится примерно следующее. Count() - не работает.
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702541
goldmi45
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Belotsky Serge, ошибка не здесь. Если убрать кондишн у HighLight -- ошибка останется?
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702546
Belotsky Serge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
чччД__Belotsky Sergeпропущено...


На простом датасете тоже на работает :(
Count тоже не работает.

Давно бы сделал отдельное минимальное приложение да выложил тут.

У меня встречное предложение - пришли свой *.fr3 - проверю у себя.
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702549
чччД__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Belotsky SergeчччД__пропущено...


Давно бы сделал отдельное минимальное приложение да выложил тут.

У меня встречное предложение - пришли свой *.fr3 - проверю у себя.

Условия ставишь? $400.
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702550
goldmi45
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Belotsky Serge,
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702552
Belotsky Serge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
goldmi45Belotsky Serge, ошибка не здесь. Если убрать кондишн у HighLight -- ошибка останется?

? см. пост выше

если указать кондишн просто line , то будет примерно следующее:

Но , если указать <line> , то будет ошибка.
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702555
goldmi45
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Belotsky Serge? см. пост выше

Пост вышел одновременно.
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702559
Belotsky Serge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
goldmi45Belotsky Serge,
Ошибка :(
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702565
goldmi45
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Belotsky Serge,

Ну тогда есть разница между 14 и 15 версиями.
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702577
чччД__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
goldmi45Belotsky Serge,

Ну тогда есть разница между 14 и 15 версиями.
У меня твой работает, 4.12.
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702582
Belotsky Serge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
чччД__goldmi45Belotsky Serge,

Ну тогда есть разница между 14 и 15 версиями.
У меня твой работает, 4.12.

Маловероятно, до переноса на другой комп у меня была 4.13. Насколько я помню, уже тогда обходил этот косяк. А сейчас снова наткнулся на те же грабли. Что-то тут не то. Может дело в XE?
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702584
чччД__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Belotsky SergeчччД__пропущено...

У меня твой работает, 4.12.

Маловероятно, до переноса на другой комп у меня была 4.13. Насколько я помню, уже тогда обходил этот косяк. А сейчас снова наткнулся на те же грабли. Что-то тут не то. Может дело в XE?
Еще раз: сделай минимальное приложение, повторяющее проблему, и выложи здесь.

Вместе с готовым экзешником. Не забудь добавить TfrxDesigner и кнопку "редактировать".
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702601
Belotsky Serge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
чччД__Belotsky Sergeпропущено...


Маловероятно, до переноса на другой комп у меня была 4.13. Насколько я помню, уже тогда обходил этот косяк. А сейчас снова наткнулся на те же грабли. Что-то тут не то. Может дело в XE?
Еще раз: сделай минимальное приложение, повторяющее проблему, и выложи здесь.

Вместе с готовым экзешником. Не забудь добавить TfrxDesigner и кнопку "редактировать".

Опа , на абсолютно пустом проекте заработало! :(
Начал копаться, и вот что я обнаружил. Value=unassigned.
Зачем FastReport так делает? Он что, предполагает, что я буду разбирать его выражения? Видимо репорт анализирует unassigned и после этого сам вычисляет. Не знал, не знал...
Проблема решилась комментом строки Value := null;
...
Рейтинг: 0 / 0
FastReport, TfrxDBDataSet не использует TField.OnGetText?
    #39702606
чччД__
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Belotsky SergeчччД__пропущено...

Еще раз: сделай минимальное приложение, повторяющее проблему, и выложи здесь.

Вместе с готовым экзешником. Не забудь добавить TfrxDesigner и кнопку "редактировать".

Опа , на абсолютно пустом проекте заработало! :(
...
Какая неожиданность!
...
Рейтинг: 0 / 0
36 сообщений из 36, показаны все 2 страниц
Форумы / Delphi [игнор отключен] [закрыт для гостей] / FastReport, TfrxDBDataSet не использует TField.OnGetText?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]