Delphi FireDAC TFDQuery DisplayFormat

时间:2016-08-17 13:42:17

标签: delphi firedac displayformat

我遇到了与FormatOptions相关的一些问题。 我有一个销售屏幕,在迁移到Firedac后(上一个是IBO),完整值(例如:100.00,52.00)开始显示如下:

(IBO) 100.00 52.00

(FireDAC) 100 52

我尝试使用以下配置来使用MapRules

SourceDataType dtBCD
TagetDataType dtBCD
PrecMax 18
PrecMin 1
ScaleMax 5
ScaleMin 0

我激活了OwnMapRules选项,但显示仍然相同。所以我试着使用fmtDisplayNumeric property。通知','0.00'修复我的部分问题,为什么将显示限制为两位小数,但有些字段的小数位数超过2。此外,我的整数字段在显示屏上显示小数位。

我尝试在MapRules for Integer字段中创建规则,但问题仍然存在。

在这种情况下我该怎么做?

提前致谢!

1 个答案:

答案 0 :(得分:0)

MapRules与显示格式没有任何关系。它将驱动程序数据类型转换为您要在应用程序中使用的数据类型,反之亦然。

IBO组件对数字字段具有特定行为。他们将其视为货币字段,具体取决于数字刻度。请参阅IBO documentation

默认情况下,Firedac使用“区域设置”来格式化输出。您可以在this paper中了解如何更改此行为。