开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 572|回复: 7
收起左侧

[已解决] 有无大佬在通宵呀?求个筛选写法

 关闭 [复制链接]
结帖率:93% (184/198)
发表于 2023-7-11 23:49:58 | 显示全部楼层 |阅读模式   广西壮族自治区来宾市
10精币
QQ图片20230711234812.png

想模仿一下excel表格那种筛选功能
整体思路是这样,就是把条件添加好,然后有个总超级列表框导入数据,在导入的过程判断这些添加好的条件是否符合,符合就导入不符合就不导入,目前添加条件功能已经写好,望大佬们能帮忙把我的思路写出来,辛苦辛苦~~~~

  
子程序名返回值类型公开备 注
_添加筛选条件_按钮_被单击  
变量名类 型静态数组备 注
局_表项整数型 
局_表项 = 筛选条件_超级列表框.插入表项 (, 筛选类型_组合框.取项目文本 (筛选类型_组合框.现行选中项), , , , )
筛选条件_超级列表框.置标题 (局_表项, 1, 筛选条件_组合框.取项目文本 (筛选条件_组合框.现行选中项))
筛选条件_超级列表框.置标题 (局_表项, 2, 筛选内容_编辑框.内容)


i支持库列表   支持库注释   
iext扩展界面支持库一

最佳答案

查看完整内容

[e=2].版本 2 .支持库 e2ee .支持库 eGrid .支持库 iext .子程序 执行动作 .局部变量 i, 整数型 .局部变量 字段名, 文本型 .局部变量 条件名, 文本型 .局部变量 条件值, 文本型 .局部变量 list, 存取列表 .局部变量 cha询条件, 文本型 .局部变量 键值表, 存取键值表 .局部变量 结果, 逻辑型 .局部变量 错误原因, 文本型 .局部变量 int, 整数型 .局部变量 综合条件, 文本型 .局部变量 逻辑值, 逻辑型 .局部变量 list1, 存取列表 ...

回答提醒:如果本帖被关闭无法回复,您有更好的答案帮助楼主解决,请发表至 源码区 可获得加分喔。
友情提醒:本版被采纳的主题可在 申请荣誉值 页面申请荣誉值,获得 1点 荣誉值,荣誉值可兑换荣誉会员、终身vip用户组。
快捷通道:申请荣誉值无答案申请取消悬赏投诉有答案未采纳为最佳
结帖率:100% (2/2)
发表于 2023-7-11 23:49:59 | 显示全部楼层   湖北省孝感市
  
子程序名返回值类型公开备 注
执行动作  
变量名类 型静态数组备 注
i整数型 
字段名文本型 
条件名文本型 
条件值文本型 
list存取列表 
cha询条件文本型 
键值表存取键值表 
结果逻辑型 
错误原因文本型 
int整数型 
综合条件文本型 
逻辑值逻辑型 
list1存取列表 
置等待鼠标 ()
组件.初始化 (超表)
组件.同步_到数据 (list)
计次循环首 (高级表格1.行数 - 1, i)
字段名 = 高级表格1.取文本数据 (i, 1)
条件名 = 高级表格1.取文本数据 (i, 2)
条件值 = 高级表格1.取文本数据 (i, 3)
如果真 (字段名 = “” 条件名 = “”)
到循环尾 ()
判断 (条件名 = “等于”)
如果 (条件值 ≠ “”)
条件值 = “'” + 条件值 + “'”
条件值 = “null”

' 条件值 = “'” + 条件值 + “'”
cha询条件 = 字段名 + “ = ” + 条件值
判断 (条件名 = “不等于”)
如果 (条件值 ≠ “”)
条件值 = “'” + 条件值 + “'”
条件值 = “null”

cha询条件 = 字段名 + “ != ” + 条件值
判断 (条件名 = “包含”)
如果真 (条件值 = “”)
信息框 (“条件值不能为空”, 0, , 窗口_高级搜索删选)
返回 ()
cha询条件 = 字段名 + “ LIKE '%” + 条件值 + “%'”
判断 (条件名 = “不包含”)
如果真 (条件值 = “”)
信息框 (“条件值不能为空”, 0, , 窗口_高级搜索删选)
返回 ()
cha询条件 = 字段名 + “ NOT LIKE '%” + 条件值 + “%'”
判断 (条件名 = “以某某开始”)
如果真 (条件值 = “”)
信息框 (“条件值不能为空”, 0, , 窗口_高级搜索删选)
返回 ()
cha询条件 = 字段名 + “ LIKE '” + 条件值 + “%'”
判断 (条件名 = “以某某结束”)
如果真 (条件值 = “”)
信息框 (“条件值不能为空”, 0, , 窗口_高级搜索删选)
返回 ()
cha询条件 = 字段名 + “ LIKE '%” + 条件值 + “'”
判断 (条件名 = “大于”)
cha询条件 = 字段名 + “ > ”到文本 (到整数 (条件值))
判断 (条件名 = “大于等于”)
cha询条件 = 字段名 + “ >= ”到文本 (到整数 (条件值))
判断 (条件名 = “小于”)
cha询条件 = 字段名 + “ < ”到文本 (到整数 (条件值))
判断 (条件名 = “小于等于”)
cha询条件 = 字段名 + “ <= ”到文本 (到整数 (条件值))
cha询条件 = “”

如果真 (cha询条件 ≠ “”)
如果 (综合条件 = “”)
综合条件 = cha询条件


逻辑值 = 高级表格1.取按钮选中 (i - 1, 4, 0)
综合条件 = 综合条件 + 选择 (取反 (逻辑值), “ AND ”, “ OR ”) + cha询条件


计次循环尾 ()
如果真 (综合条件 ≠ “”)
结果 = list.cha询 (list1, , 综合条件, 错误原因)
如果真 (取反 (结果))
信息框 (“cha询错误:” + 错误原因, 0, , 窗口_高级搜索删选)
返回 ()

如果真 (list1.取数量 () < 1)
信息框 (“搜索失败!”, 0, , 窗口_高级搜索删选)
返回 ()
超表.全部删除 ()
组件.填充数据 (list1)
组件_列表_格式化序号 (超表)
如果真 (选择框1.选中)
组件_列表_全选 (超表)
窗口_高级搜索删选.销毁 ()


i支持库列表   支持库注释   
e2eeE2EE互联网服务器套件
eGrid高级表格支持库
iext扩展界面支持库一



补充内容 (2023-7-12 00:40):
多条件cha询,这你要是看不懂那就没辙了

评分

参与人数 1荣誉 +1 收起 理由
项目部004 + 1 热心帮助他人,荣誉+1,希望继续努力(*^__^*) 嘻嘻!

查看全部评分

回复

使用道具 举报

结帖率:100% (2/2)
发表于 2023-7-12 00:06:43 | 显示全部楼层   湖北省孝感市
用e2ee的存储列表来删选,可完美解决你要的结果
回复

使用道具 举报

结帖率:90% (9/10)

签到天数: 14 天

发表于 2023-7-12 00:08:51 | 显示全部楼层   河北省邯郸市
数量不多的话 计次循环 一个一个对比
回复

使用道具 举报

结帖率:93% (184/198)
 楼主| 发表于 2023-7-12 00:18:18 高大上手机用户 | 显示全部楼层   **
菜鸟路过 发表于 2023-7-12 00:06
用e2ee的存储列表来删选,可完美解决你要的结果

给个例子喂哥哥
回复

使用道具 举报

结帖率:93% (184/198)
 楼主| 发表于 2023-7-12 00:19:27 高大上手机用户 | 显示全部楼层   **
乐鱼驴 发表于 2023-7-12 00:08
数量不多的话 计次循环 一个一个对比

也不能说多,数据是一条一条导入的,然后在导入之前读取一下所有的筛选条件再确定是否导入
回复

使用道具 举报

结帖率:80% (48/60)

签到天数: 4 天

发表于 2023-7-12 00:21:14 | 显示全部楼层   河南省安阳市
数据库可以试试我之前见过一个本地数据库实现这样功能的
回复

使用道具 举报

签到天数: 27 天

发表于 2023-7-12 00:34:57 | 显示全部楼层   山东省潍坊市
直接从数据库中取的时候用<=    >=    like 等取数据到表格就是


补充内容 (2023-7-12 00:39):
外部数据库1.cha询 (“select count(*) from biao  where  abcd >= 变量”)
回复

使用道具 举报

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

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 诚聘英才| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 800073686,邮箱:800073686@b.qq.com
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

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