起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 189|回复: 5

【搞定】在使用X3自带的导航工具的过滤的一些小问题。**

[复制链接]
发表于 2007-5-21 17:17:39 | 显示全部楼层 |阅读模式
在使用X3自带的导航工具的过滤的一些小问题。

点“过滤”以后,选择LIKE作为条件的时候,后面的值必须如"%ME%"才能得到想要的结果。

没加那2个%就不能得到想要的结果

请问,有没有办法解决这问题。
我想修改“简单SQL条件构造窗体”或许能解决问题,但不晓得该如何去改

请指教
回复

使用道具 举报

 楼主| 发表于 2007-5-21 21:42:01 | 显示全部楼层
求解~~~~~~
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-21 21:42:40 | 显示全部楼层
不可能让业务人员去写“%ME%”这样的吧?
回复 支持 反对

使用道具 举报

发表于 2007-5-22 08:52:55 | 显示全部楼层
修改 业务模型\系统空间\用户界面基础\界面\系统接口\简单SQL条件构造窗体的这个函数
function TSimpleSQLFilterEditor.TextToValue(ADataType: TDataType;
  AIsIN: Boolean; const AText: string): string;
var
  lText: string;
begin
  if AIsIN then
  begin
    Result := TextToInValue(ADataType, Trim(AText));
    Exit;
  end;

  lText := GetFieldValue(AText);
  Result := '';
  case ADataType of
    TDataType.dtString:
      if FRelationOpr.text = 'LIKE' then            //修改此处
        Result := QuotedStr('%' + lText + '%')
      else
        Result := QuotedStr(lText);
    TDataType.dtDateTime:
      if Builder <> nil then
        Result := StrToSQLDateTime(Builder.DBDriverName, lText)
      else
        Result := QuotedStr(lText);
    TDataType.dtInteger,
    TDataType.dtFloat,
    TDataType.dtNumber,
    TDataType.dtBlob,
    TDataType.dtText,
    TDataType.dtUnknown:
      Result := lText;
  else
    Assert(False, '不支持的数据类型');
  end;
end;
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-22 09:05:45 | 显示全部楼层
太感谢了,试试先~
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-22 10:15:59 | 显示全部楼层
OK了,问题解决,可以先结贴,不过又有新问题
在这里http://bbs.justep.com/forum.php?mod=viewthread&tid=15241
我开了个新贴
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-1-10 17:48 , Processed in 0.036190 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表