【问题标题】:ExpressQuantumGrid Excel export of FMTBCD fields without currency symbol and format ",0.00"ExpressQuantumGrid Excel 导出不带货币符号和格式“,0.00”的 FMTBCD 字段
【发布时间】:2011-06-07 18:46:11
【问题描述】:

根据 ExpressQuantumGrid 的此 DevExpress 知识库条目Excel-Exports from a cxGrid formats FMTBCD-Fields with a currency-Symbol,必须使用 TFloatField 类型的计算字段将没有货币符号的 FMTBCD 字段导出到 Excel。知识库中的示例代码按预期工作。

但是,我还需要在导出的文件中为计算字段添加两位小数的精度。

  • 我尝试将 Properties=CalcEdit 与 DisplayFormat=",0.00" 一起使用,但导出未使用网格列的 DisplayFormat

  • 我尝试设置计算字段的DisplayFormat,但是导出没有使用数据字段的DisplayFormat

使用版本 6.54。 (我还将打开一个支持案例)。

【问题讨论】:

  • 您是否尝试将属性设置为 cxSpinEdit,类型为 vtFloat?
  • 是的,cxSpinEdit 没有影响

标签: delphi grid devexpress


【解决方案1】:

我有一个类似的问题,想在没有货币符号的情况下导出货币值。最后,我唯一能做的就是修改源代码。

我复制了一份 cxGridExportLink.pas 并将其放在项目特定的目录中。然后更改了第 767 行(我目前正在使用他们的订阅号 53。不确定那是什么版本)但它是以下行:

if (IsCurrencyItem(AItem)...
  ... then
  VarCast(Result, AValue, varCurrency);   // <--- This line

我将 varCurrency 更改为 varDouble 并重建了我的程序。您还需要同一目录中的 cxVer.inc 副本。

这很可能会影响您的 2 位小数要求,但这是我找到的唯一方法,并且到目前为止,对我们来说效果很好。

【讨论】:

    【解决方案2】:

    问题在知识数据库中(自 2006 年起):

    Export - Excel - export numeric data as numbers with the same format as in the grid

    也许以后会修复。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-01-29
      • 2017-10-25
      • 2013-07-03
      • 1970-01-01
      • 2022-01-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多