页面数据查询出来同时,将查询结果自动保存至数据库表中,哪位大神有好的办法?
目前是用“报表填报”方式实现,通过在“查询”按钮中添加写入js语句(延迟1秒写入数据库<正常查询数据大约需要0.3秒多>)。
但总觉得控制不严谨,想做到:查询结果出来后,再自动将结果写入数据库表中,不想用延迟1秒的方式。
我有一个控制严谨的笨办法:
在查询按钮中通过FR.showDialog调起一个新的CPT,将查询参数作为参数传递进去。在新CPT中按照与本页面同样的方式查询出报表数据,用“不点查询自动出报表”或不用参数面板,将参数作为数据集的条件,这样新CPT加载成功后数据就显示的和上一个页面的数据同样了,然后做一个填报属性,在新CPT的“加载结束”事件用verifyAndWriteReport自动提交,提交后用window.parent.FR.closeDialog关闭对话框,即使提交过程很长,用户最多能看到对话框一闪而过,然后数据就完美提交数据库了,这个提交过程多长都可以,用户几乎感觉不到,这是我试验出来的,(我的后台数据提交10多秒),不知道原理。
目前其他没有更好办法,要么延迟时间长一点
查询了数据,然后存储数据库?怎么会有这种场景?
要不然主动保存存储不行?
我觉得这个可以考虑从数据库服务上做文章,应该有类似的日志之类的,供参考。