DBGridEh使用UniDac默认不能排序和过滤的解决方案

来源:互联网 发布:家用交换机推荐 知乎 编辑:程序博客网 时间:2024/04/27 16:35

因为做的工具需要连接ORACLE数据库,而为了不安装ORACLE客户端就可以操作数据库,于是放弃ADO控件使用UniDAC控件,借助CnWizards_1.0.1.655完成批量替换名字,测试时候发现竟然DBGridEh不能排序和过滤,我才想起,以前是uses的EhlibADO,于是百度了很久,终于在EhLib论坛找到的一个帖子中关于此问题解决方案的英文原文

Copy EhLibUniDAC.pas file from <EhLib Installed dir>\DataService\Others\ folder to the <EhLib Installed dir>\Lib folder

Add EhLibUniDAC unit to the uses clause of any unit of your project.

and adjust grid for sort marking.

然后根据此提示修改后发现可以解决,现将解决方案提供出来与需要的人分享


本人的DELPHI环境为: WIN8+DELPHI XE4+EHLIB6.2+UniDAC5.0.2+ORACLE 11G R2,操作步骤为:

在E:\Embarcadero\RAD Studio\11.0\Components\EhLib\DataService\Others路径下面找到EhLibUniDAC.pas

复制它到E:\Embarcadero\RAD Studio\11.0\Components\EhLib\Lib\Win32\Release和

               E:\Embarcadero\RAD Studio\11.0\Components\EhLib\Lib\Win32\Debug

然后在需要排序和过滤的Unit文件中的uses 后面增加一个引用:EhLibUniDAC就可以解决问题了


温馨提示:

1、因为我使用的DELPHI XE4,所以有\Win32\Release、\Win64\Release、\Win32\Debug、\Win64\Debug这四类文件结构,因为我开发的小工具将来使用的平台为win32,并且我可能需要在Debug模式下调试程序,所以我选择了\Win32\Release和\Win32\Debug两个路径下面都复制一份

2、我的Ehlib安装路径为:E:\Embarcadero\RAD Studio\11.0\Components\EhLib,是的,我的所有第三方控件都放在DELPHI安装路径下的Components文件夹里面的。

3、UniDac5.2.5(含源码和DEMO破解版)下载地址:http://download.csdn.net/detail/wozengcong/6774995

    Ehlib6.2.170(含源码和DEMO破解版)下载地址:http://download.csdn.net/detail/wozengcong/6775007

    

其中UniDac5.2.5是源码版本,

安装方法http://blog.csdn.net/zengcong2013/article/details/12191631

 Ehlib6.2.170是EXE安装版本WIN7/WIN8请以管理员身份运行有一个Installer文件夹,里面有EhLibInstaller.exe(版本会自动识别)