Delphi:找不到字段'False'。只发生在我的电脑上

时间:2017-08-07 09:12:58

标签: delphi delphi-xe4

我有一个TCustomClientDataSet(在内存中)用于在Delphi程序中进行一些过滤。

我的过滤代码如下:

  CDSFilteredGroup.Filter := 'ACP_type = 1 AND ACP_by_default <> False';
  CDSFilteredGroup.Filtered := True;

当我编译并运行它时,只有在我的计算机上安装了Delphi(XE4)时才出现以下错误:

CDSFilteredGroup: Champ 'False' non trouvé.

翻译:找不到字段'False'。相同的代码在我的同事计算机上编译和运行完全正常,但不是我的。我想念某个地方一定有选择吗?

请记住,代码还可以正常工作......

1 个答案:

答案 0 :(得分:7)

用于处理过滤字符串的 TExprParser 实例依赖于作为 STextTrue STextFalse 给出的资源字符串。您可能有另一种语言,而不是为IDE库配置的英语。尝试切换到英语并查看错误是否消失。

要解决该问题,一般将文本“False”替换为resourcestring STextFalse 的内容。

顺便说一句,在后来的Delphi版本中,这一点得到了纠正,即使在非英语环境中也接受字面上的“假”。