找文章 / 找答案
精选问答 更多内容

[常用脚本] 插入填报页面,ID号不能刷新最新的值,如何解决?

yhdata_MuxFisWA玄铁一 显示全部楼层 发表于 2024-5-24 10:00:38 |阅读模式 打印 上一主题 下一主题
如下图:原来的查看页面添加一个按钮“新增”,点击后弹出一个新的报告“插入提交”,在插入提交的页面写了脚本如下图2和图3;
需要解决的问题有三个:
1、当我成功提交一个填报数据时,默认会关闭“插入提交”的页面,此时,再次点击“新增”,ID号还是计算显示的是上一次提交时的ID号。加了刷新按钮也不行,加了清除缓存也不行,重新刷新页面也不行。但是有时候刷新后,偶尔又可以了。请教大佬如何解决这个问题,感觉和BI产本本身问题有关。
2、当多人填报时,如果同时提交,ID号还是会重复,如何写脚本避免此问题?是否可以实现当点击“提交”时,是否可以在提交之前重新加载自动刷新一次ID号后,再提交?

001.png 003.png 002.png

最佳答案

永洪社区YVP
美滋滋 白银二 关注Ta

2024-05-24 10:00:39

你的ID号是必须要展示给用户看的吗?如果要展示给用户看,那么当用户同时打开报表时,展示的ID号可能都是相同的。 这样的数据你是希望用户能正常插入数据吗?如果希望当多人同时打开页面并插入数据时,即使展示的ID相同,也希望能够系统自动做处理将数据插入,那么这个ID字段展示给用户看实际上就没有任何意义。如果真想这样做,那么将数据库的ID字段设置为自增长主KEY就可以了,插入数据时都不需要设置ID的具体值,数据库直接自动 ...
查看完整内容
回复

使用道具 举报

精彩评论9

美滋滋白银二 显示全部楼层 发表于 2024-5-24 10:00:39
本帖最后由 美滋滋 于 2024-5-24 11:30 编辑

你的ID号是必须要展示给用户看的吗?如果要展示给用户看,那么当用户同时打开报表时,展示的ID号可能都是相同的。
这样的数据你是希望用户能正常插入数据吗?如果希望当多人同时打开页面并插入数据时,即使展示的ID相同,也希望能够系统自动做处理将数据插入,那么这个ID字段展示给用户看实际上就没有任何意义。如果真想这样做,那么将数据库的ID字段设置为自增长主KEY就可以了,插入数据时都不需要设置ID的具体值,数据库直接自动生成了。反正前端展示的ID也无所谓。
如果不想这样,希望按照展示给用户的ID号进行数据插入,那么你现在的情况就是OK的。
回复

使用道具 举报

yhdata_lyaa 显示全部楼层 发表于 2024-5-24 10:42:31
clearData("组件名");
ID这个是文本组件吗

两个图的脚本是在两个报告上的吗
回复

使用道具 举报

yhdata_MuxFisWA玄铁一 显示全部楼层 发表于 2024-5-24 10:48:48
yhdata_lyaa 发表于 2024-5-24 10:42
clearData("组件名");
ID这个是文本组件吗

ID是文本参数组件,这两个图的脚本都是写在同一个报告上面的。我在“装载时运行”“改变时运行”都写了一样的。
回复

使用道具 举报

美滋滋白银二 显示全部楼层 发表于 2024-5-24 10:53:23
先说第一个问题:
这个问题你需要在报告设置中勾选实时获取数据项来解决。这样就可以实时反馈最新数据状况了。
回复

使用道具 举报

美滋滋白银二 显示全部楼层 发表于 2024-5-24 10:56:39
再说第二个问题:
你这个ID号是如何生成的?
如果存在多人同时提交,你担心会因为ID号重复导致提交失败?
请先说明一下目前ID号是如何生成的。
回复

使用道具 举报

yhdata_lyaa 显示全部楼层 发表于 2024-5-24 11:05:37
文本_序号.data 在报告里是哪个组件,值咋来的。方便导出报告jar看看吗
回复

使用道具 举报

yhdata_MuxFisWA玄铁一 显示全部楼层 发表于 2024-5-24 11:15:19
我的ID是文本参数,我先拉取了一个文本组件命名为“文本_序号”,它的汇总值是获取"ID_计数",我的ID号计算:=“文本_序号”+1;我之前将“文本_序号”的可见性设置为:隐藏,因此,新增时“ID”获取不到最新的值。
1、多人提交时,如果ID号重复,后提交的那个人无法提交,他需要重新刷新一下ID号才能提交,这个可以做一个校验吗?
回复

使用道具 举报

yhdata_MuxFisWA玄铁一 显示全部楼层 发表于 2024-5-24 11:38:35
我明白了,感谢解答
回复

使用道具 举报

美滋滋白银二 显示全部楼层 发表于 2024-5-24 11:41:54
yhdata_MuxFisWA 发表于 2024-5-24 11:38
我明白了,感谢解答

如果你就是想点击提交时,能把正确的ID号刷新一下,倒也不是不可以。不过需要写脚本获取最新数据进行刷新。也是可以实现的。但是点击提交就是一瞬间的事情,你刷新了ID,用户可能也看不到,没有任何意义的事情。
回复

使用道具 举报

高级模式
您需要登录后才可以回帖 登录 | 免费注册

  • 官方微信

    欢迎关注永洪服务号!收费为0,价值无限

    扫码关注
  • 新浪微博

    让每位用户轻松挖掘数据价值!

    访问新浪微博
  • 智能客服
50W

会员等你来哦

Copyright   ©2012-2024  北京永洪商智科技有限公司  (京ICP备12050607) 京公网安备110110802011451号 |《永洪社区协议》
返回顶部