以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 排序问题求解 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=157286) |
||||||||
-- 作者:hitzfeld -- 发布时间:2020/10/10 22:39:00 -- 排序问题求解 主表按输入顺序排序,但是我用下面的代码,把不重复的值抽取到一个新的临时表中的,时候,排序变了,很是困扰
|
||||||||
-- 作者:有点蓝 -- 发布时间:2020/10/11 20:26:00 -- 参考:http://www.foxtable.com/webhelp/topics/2747.htm Vals = DataTables("采购单").GetValues("公司名称|产品名称","","_sortkey")
|
||||||||
-- 作者:hitzfeld -- 发布时间:2020/10/12 15:05:00 -- 蓝老师好,按您的方法修改后,排序问题倒是解决了,但是却把所有值都带进来了。比如下表 原表 (按输入顺序) 产品代码 ------------------------------------- C008 B005 F010 A009 C008 B005 F010 A009 C008 B005 F010 A009 C008 B005 F010 A009 --------------------------------- 其中,重复的是C008,B005,F010,A009四项,一共重复了4次,如果不使用,"_sortkey")取到的值是4个没错,但是用了,"_sortkey"则取到了16个值,这个和我的初衷就不一样了。 请您拨冗再指点下,谢谢! |
||||||||
-- 作者:有点蓝 -- 发布时间:2020/10/12 15:13:00 -- 不可能的。除非这些产品是不同的公司的 |
||||||||
-- 作者:hitzfeld -- 发布时间:2020/10/12 15:58:00 -- 蓝老师,我想把我的系统传给您看下,但是数据库压缩后仍然超过2048K,您看我要怎么传给您呢?或者您看能不能给我个QQ号,您远程看下,我操作给您看看? |
||||||||
-- 作者:有点蓝 -- 发布时间:2020/10/12 16:03:00 -- 新建一个项目,导入对应的表和窗口,重现同样的问题,然后把新项目文件发上来。不需要发整个项目 |
||||||||
-- 作者:hitzfeld -- 发布时间:2020/10/12 17:21:00 -- 蓝老师好,我重建项目之后才发现是我代码写错了! 正确的代码是GetValues("公司名称|产品名称","","_sortkey")把中间的两个双引号漏掉了,写成GetValues("公司名称|产品名称","_sortkey")。 现在检索出来的值是正确的了,但是,如果再附加条件还是报错,麻烦您看下 Vals = DataTables("采购单").GetValues("产品编码|产品名称","","_sortkey","[供应商名称]= \'"& tab &"\'") 不加后面的供应商名称能正确运行,加了就报错。
|
||||||||
-- 作者:有点蓝 -- 发布时间:2020/10/12 17:35:00 -- 语法: GetValues(ColumnName,Filter,Sort) ColumnName:列名称,从此列中提取不重复的值。 |
||||||||
-- 作者:hitzfeld -- 发布时间:2020/10/13 21:16:00 --
以下是引用有点蓝在2020/10/12 17:35:00的发言:
语法: GetValues(ColumnName,Filter,Sort) ColumnName:列名称,从此列中提取不重复的值。 蓝老师好,又来麻烦您了,还是不能得到我要的排序效果,我把测试项目发到附件里,数据库是2005的,请您帮忙看下 |
||||||||
-- 作者:有点蓝 -- 发布时间:2020/10/13 21:53:00 -- 应该是这个不重复的值的理解有问题。【.GetValues("编码|名称|款型"】的情况下,这3个列的值都完全一样才算是重复。 您的意思是只需要编码,其它名称|款型如果有不一样的随便取一个?
|