DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: a1367230164
今日帖子: 18
在线用户: 24
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 qingyun (qingyun) ★☆☆☆☆ -
盒子活跃会员
2005/10/14 18:29:51
标题:
困扰我多年的问题,如何做最完美的查询? 浏览:2473
加入我的收藏
楼主:    不管做什么软件,查询是个非常重要的问题;
我觉得查询必须有以下几点:
1、方便性:
    特别对于单据之类的查询来讲显得尤为重要,操作员在很多张单据里找自己需要的那张。
我看过很多软件是这样做的:
 
    1、主窗体上有一个查询按钮,操作员点击这个按钮,弹出一个查询界面,里面有单号,供货商编号,供货商名称 这几个查询条件。
    2、操作员输入查询条件,比如单号为20050201;
    3、操作员点击确认按钮,查询窗体关闭;
    4、主窗体显示查询条件的结果;
上面这种方法是绝大部分软件的做法,但是我个人非常不赞这种方法:
其弊端有:
       1、操作麻烦,需要弹出一个查询界面,弹出后输入条件确认后,需要关闭该窗体才能进行查询;
       2、回到主界面后,看不到操作员刚才输入的查询条件;
       3、如果操作员第一次查询输入的条件不够准确,查不到相应的信息,还要回头再进入查询界面;
       4、查询条件不够,比如入库单里还有制单人编号,制单人名称,制单时间,单据状态,备注等信息,如果操作员想根据这些条件来查询,系统就不提供。但是如果查询条件太多,查询界面看上去会很花,给人的感觉不太好;


2、功能性:
        很多软件查询条件都作的相对比较弱,比如商品信息,一般就是按照商品编号,商品名称,商品类别这样最简单的条件查询;
        但是如果操作员想按照商品的规格,单位,保质期,重量,颜色,供货商等条件进行查询就不行;如果开发人员提供所有的查询,在主界面里放那么多查询条件会把主界面搞得太乱,那就必须做一个新的查询界面,但是这样也增加了操作的复杂度;


3、开发的复杂度;
    软件的各个业务复杂度不一样,查询条件也要根据客户订制,很多客户对不同窗体的查询要求也不一样,有的客户觉得 某个查询条件需要,一定要有,有的认为某个查询条件不需要,不要提供。有时当客户把软件用了一段时间后,觉得查询条件不好,需要修改。
   所以我觉得需要搞个无为而治的方法,就是在控件里把查询的功能做好,不要在单独做查询功能,而且满足所有可能出现的查询条件,这样一来界面比较清爽,二来也不用自己去开发了。


下面这幅图就是实现了入库单的查询:

其查询条件是:
  单据编号包含“3”,供货商编号包含“000”,供货商名称包含“大连”;
制单人名称为“daizhicun” ;

该界面里的查询通过dbgrideh自带的功能实现。而且操作简单,功能也很强大,几乎满足了所有的查询需求;


以上我对查询功能制作的一些想法,不知道大家平时是怎么做的。








    
  
     
    
此帖子包含附件:
JPEG 图像
大小:188.5K
----------------------------------------------
青云论坛
作者:
男 qingyun (qingyun) ★☆☆☆☆ -
盒子活跃会员
2005/10/14 18:47:52
1楼:         


相关帖子:
 

http://www.delphibbs.com/delphibbs/DispQ.asp?LID=3238267

http://community.csdn.net/Expert/topic/4327/4327370.xml?temp=.2169458
----------------------------------------------
青云论坛
作者:
男 glwshch (九龙) ★☆☆☆☆ -
盒子活跃会员
2005/10/14 21:25:26
2楼: 用参数化查询可以以你上面的任意字段组合成条件进行查询,用复选按钮组合
----------------------------------------------
还得继续使用DELPHI
作者:
男 qingyun (qingyun) ★☆☆☆☆ -
盒子活跃会员
2005/10/14 22:32:06
3楼: 楼上的兄弟,你的这种方法比较常见。
但是我觉得对客户操作不太方便。
----------------------------------------------
青云论坛
作者:
男 pqstone (pqstone) ★☆☆☆☆ -
普通会员
2005/10/14 22:46:27
4楼: 呵呵,我做第一个软件就想到这个问题了,我做的一个产品管理查询非常方便的,而且条件可组合性比较好!
按此在新窗口浏览图片
----------------------------------------------
delphi粉丝
作者:
男 qingyun (qingyun) ★☆☆☆☆ -
盒子活跃会员
2005/10/16 8:22:55
5楼: 楼上的pqstone朋友,把你查询部分的截图放上来阿
----------------------------------------------
青云论坛
作者:
男 qzxyd (阿强) ★☆☆☆☆ -
普通会员
2005/10/16 12:15:51
6楼: 我很早就有相同的想法,前一段作一个快速查询控件,完成以上的功能,可在zqsoft.zj.com上下载。QQ:29605254,对楼主的一些功能都可实现。对楼主所说其弊端回复
1.在单条件查询下,条件选择完毕回车即关闭窗口查询实现,看到结果,默认此界面,另有多条件查询,可实现复杂查询条件。
2.控件保存上一次查询的条件。
3.因控件保存上一次查询的条件,所以下次查询,只在上面修改即呵,默认是方便的模糊查询。而且会自动跟居数据类型选择可用条件。
4.控件在关联数据集控件时自动会把所有的字段条件都拿过来,即看到多少,就能有多少字段查询。设计都也可自已修改。在数据集没有设立字段时,即会在运行时加载所有条件。
开发非常简单方便。保证你在20秒里作好一个功能很强的查询。
欢迎各位去zqsoft.zj.com下载使用。现有很多网友使情况很好,现支持D6,D7,昨天应一网友要求加了对D2005的支持。
----------------------------------------------
-
作者:
男 simonlee (aaa) ★☆☆☆☆ -
禁用账号
2005/11/28 10:00:58
7楼: ……
被禁用帐号,帖子内容自动屏蔽!
……

----------------------------------------------
出售进销存(pos收银)软件源码
http://item.taobao.com/item.htm?id=9909187456
作者:
女 sunyesy (文儿) ★☆☆☆☆ -
盒子活跃会员
2005/11/28 11:13:41
8楼: 我写过一个DLL 一个查询窗口 是仿照别的软件写的 给你看看图片。DLL显示出来的窗体是动态的。窗体上的按钮是根据用户传过来的参数而定。
----------------------------------------------
大象说他Delphi比我好,我想了三天没明白是怎么回事!按此在新窗口浏览图片
作者:
男 shuihan20e (shuihan) ★☆☆☆☆ -
盒子活跃会员
2005/11/28 12:03:24
9楼:  关注~~~~~~~~
----------------------------------------------
我Delphi水平不行,其他的也不怎么样,来这纯属灌水~~~~~
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行78.125毫秒 RSS