找回密码
 立即注册

QQ登录

只需一步,快速开始

jiangcj369
高级会员   /  发表于:2024-12-5 13:33  /   查看:145  /  回复:3
30金币


如果存在两张数据表,一张是存货信息表,存储的是所有存货信息,一张是供应商存货对照表,用来解决存货在公司内部和供应商处叫法不同的问题。
问题:在录入供应商存货对照表表单记录的时候,如果在选择存货的弹出列表中,获取存货信息表中存在,而当前供应商ID对应的对照表中不存在的存货。
我知道很多人会说,你搞个服务端命令把供应商ID传进去,然后服务端通过设置变量循环或者其他方式把对照表中不存在,而存货表中存在的记录给做成返回数据,然后用导入json数据到表格的方式,得到这些数据。
那么我的问题来了:
1.如果得到大量json返回数据,表格又开启了分页功能,因为表格没有绑定数据表,而是获取的json数据,这导致表格选择项容器不起作用,如果我在第一页选择几个数据,第三页选择几个数据,甚至还会返回第一页再选择别的数据,或者取消已选的部分数据,这种情况下,如果保证选择数据不消失。
2.动态json到表格后的高级查询命令也没办法使用。
表格只有在绑定了视图和数据表的情况下,才能使用表格选择项容器和和高级查询命令,甚至还有一些其他的表格插件。
目前不绑定数据表的表格,功能太多简单羸弱。以上需求总不能在页面上绑定存货信息表,对照表两个表,然后把所有数据都加载过来,然后循环排除,这样的话,不卡死我是不信的。
大家如何实现这种场景需求。(另外有人可能会说你可以把供应商表和存货表十字相乘提前得到视图,这种方法不考虑,太扯了)

附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

最佳答案

查看完整内容

这样的话,可以使用活字格10.0版本的新功能list统计字段,如图 先将对照表的编码字段关联到存货表 然后再存货表新建统计字段 这样,我们就能得到这样一个表格 那么显而易见,我们只需要给表格设置查询条件,供应商列表中不包含指定供应商即可 至于性能方面,大佬可以看下生成的sql

3 个回复

倒序浏览
最佳答案
最佳答案
Nathan.guo活字格认证 Wyn认证
超级版主   /  发表于:2024-12-5 13:33:31
来自 4#
本帖最后由 Nathan.guo 于 2024-12-10 12:12 编辑

这样的话,可以使用活字格10.0版本的新功能list统计字段,如图

先将对照表的编码字段关联到存货表

然后再存货表新建统计字段

这样,我们就能得到这样一个表格

那么显而易见,我们只需要给表格设置查询条件,供应商列表中不包含指定供应商即可

至于性能方面,大佬可以看下生成的sql






本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Nathan.guo活字格认证 Wyn认证
超级版主   /  发表于:2024-12-6 12:23:02
2#
大佬,我理解直接把存货表和对照表关联,再设置查询条件就好了呀

这样是单表left join ,对数据库的压力也不会很大


还是说大佬的真实环境有其他的限制因素吗

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
jiangcj369
高级会员   /  发表于:2024-12-6 13:27:02
3#
本帖最后由 jiangcj369 于 2024-12-6 13:36 编辑
Nathan.guo 发表于 2024-12-6 12:23
大佬,我理解直接把存货表和对照表关联,再设置查询条件就好了呀

这样是单表left join ,对数据库的压力 ...

你这样关联不行


我是将供应商ID传参到服务端,执行sql:select * from 存货信息表 where not exists(select * from 对照表 where 供应商ID=@传参ID and 存货信息表.ID=对照表.存货ID),来获取未添加存货列表的。但是这种json数据返回到前端页面后,不管是导入josn数据到表格,还是设置数据源到el表格,都有很大的问题。
1.内置表格的问题,如果返回数据多,肯定是要分页吧,那么一个弹出列表就是一个分页,且要可以多选的表格,这时使用表格选择项容器,就不行,这个容器插件就有问题,比如我在第一页选择了1和2,然后切换到第2页,选择了11和12,这时表格选择项容器中是1,2,11,12。我突然不想选1了,切换到第一页后,发现1和2这两条本应该勾选状态的记录并不是勾选状态的(绑定数据表这种情况下是勾选的),而且这时如果你再点记录1,表格选择项容器中变成了1,2,11,12,1,这肯定不是想要的结果啊(切换分页无法记忆勾选状态)。
2.EL表格设置数据源那就更不用说了,多选翻页直接没法用,一翻页之前选择的数据会被清空。EL表格的选择项命令永远显示的是当前页上的选择项,而不记录其他的。
这个图中的弹出列表怎么设计数据呢?
a.传参从服务端获取数据展示就存在我说的上面两点;
b.提前写好视图,这个视图咋写呢,总不可能把所有存货都提前cross join 所有供应商吧

(其实就是目前的表格,还是EL表格对服务端获取后的数据源支持程度不够全面,如果和绑定数据表具备同样的功能,就好办了)


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部