起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 158|回复: 7

【结贴】2800模糊查询问题?**

[复制链接]
发表于 2009-6-4 11:59:48 | 显示全部楼层 |阅读模式
2800中模糊查询要加 %

而3108中就却不用加 %,怎么样修改成3108的效果?
回复

使用道具 举报

发表于 2009-6-4 13:45:27 | 显示全部楼层
你说的是什么意思?什么地方的模糊查询。
回复 支持 反对

使用道具 举报

发表于 2009-6-4 13:48:36 | 显示全部楼层
if (SysUtils.SameText(FRelationOpr.Text, 'LIKE')) and
          (copy(FRightEdit.Text,1,1) <> '%') and (copy(FRightEdit.Text,length(FRightEdit.Text),1) <> '%') then
         lRightEdit:= '%'+FRightEdit.Text+'%'
你搜下这个代码,看下这个逻辑。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-6-5 09:44:57 | 显示全部楼层
我从3108 业务模型\系统空间\用户界面基础\界面库\系统接口\SQL条件构造窗体 位置下找不到
楼上代码,
3108用 like 模糊查询时不需要用户输入 %  ,他是怎么实现的?
回复 支持 反对

使用道具 举报

发表于 2009-6-5 09:52:24 | 显示全部楼层
楼主,3楼不是告诉你代码逻辑了吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-6-5 10:00:07 | 显示全部楼层
不知道写在什么位置
回复 支持 反对

使用道具 举报

发表于 2009-6-5 10:02:00 | 显示全部楼层
平台里的sql构造器是这样子的(你可以跟踪调试看下他的实现)
业务模型\系统空间\用户界面基础\界面库\系统接口\简单SQL条件构造窗体
procedure TSimpleSQLFilterEditor.EditorToText(var AText: string);
const
  cBinaryText = '%s %s %s';
  cUnaryText = '%s %s';
  cBetweenText = '%s %s %s AND %s';
var
  lBizField: TBizField;
  lRightEdit : String;
begin
  AText := '';
  if FLeftEdit.ItemIndex = -1 then Exit;
  lBizField := CurBizField;

  case OprKind of
    TOprKind.okBinary:
    begin
      if (SysUtils.SameText(FRelationOpr.Text, 'LIKE')) and
          (copy(FRightEdit.Text,1,1) <> '%') and (copy(FRightEdit.Text,length(FRightEdit.Text),1) <> '%') then
         lRightEdit:= '%'+FRightEdit.Text+'%'
      else
         lRightEdit:= FRightEdit.Text;
      AText := Format(cBinaryText, [lBizField.Origin.FullID, FRelationOpr.Text,
        TextToValue(lBizField.DataType, FIsINOpr, lRightEdit)]);
    end;
    TOprKind.okUnary:
      AText := Format(cUnaryText, [lBizField.Origin.FullID, FRelationOpr.Text]);
    TOprKind.okBetween:
      AText := Format(cBetweenText, [lBizField.Origin.FullID, FRelationOpr.Text,
        TextToValue(lBizField.DataType, FIsINOpr, FRightEdit.Text),
        TextToValue(lBizField.DataType, FIsINOpr, FBetweenEdit.Text)]);
  else
    OprKindError;
  end;
end;
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-6-5 11:08:18 | 显示全部楼层
太谢谢了,解决了。
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-20 14:41 , Processed in 0.050171 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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