智能提交时主键自增长字段ID值为空,只提交第一条记录的问题怎么解决

智能提交时,许多条新纪录ID值一定是空的,结果只有第一条能提交到数据库表保存,改成插入提交就能全部保存。

问题是我需要实现无ID值插入新纪录,有ID值更新对应记录,不知道怎么解决这个问题


报表的主键,数据表的主键和自增字段都已经设置,而且这个报表在2018.9版本是正常的,只要升级就出问题


FineReport nature_ryo 发布于 2019-2-17 15:05 (编辑于 2019-2-18 14:10)
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共5回答
最佳回答
5
zsh331Lv8专家互助
发布于2019-2-17 18:48

比如ID值在A1单元格,可以这样设置来避免你遇到的问题。

if(len(A1)=0,UUID(),A1)
公式意义是:判断Id值是否为空,如果为空就设置一个UUID新值,如果不为空,Id值为原值。这样智能提交时,就能满足更新,插入需求了。

image.png

  • luojian0323 luojian0323 提示数据类型不匹配,是什么原因。
    2019-02-19 18:21 
  • nature_ryo nature_ryo(提问者) 回复 luojian0323 你ID字段设置的是int吧,uuid()函数生成的是字符串
    2019-02-20 13:06 
  • luojian0323 luojian0323 回复 nature_ryo(提问者) 好长一段字符串。
    2019-02-20 13:29 
最佳回答
0
皮卡皮卡丘Lv4中级互助
发布于2019-2-17 17:59

主键的设置问题

最佳回答
0
孤陌Lv6资深互助
发布于2019-2-18 08:11(编辑于 2020-11-20 15:09)

你设置为更新提交,然后填报属性里的ID字段 设置为主键

这个只能新增一个字段  然后填报属性写公式IF(LEN(a1)=0,UUID(),A1)

  • luojian0323 luojian0323 ID为主键,无法再插入提交
    2019-02-19 18:05 
最佳回答
0
No1-王子阳Lv5中级互助
发布于2019-2-18 09:57

你数据库主键自增,你就可以不用绑定主键了啊。。。

最佳回答
0
luojian0323Lv7资深互助
发布于2020-11-21 20:49

你的id是自增的话,

报表这里只要查询出对应id字段就行.id字段不能设置为空

新增记录时,id字段应该是空的,但是智能提交会根据插入的记录数,自动添加id值.


  • 用户Y1289034 用户Y1289034 UUID绝对是产品bug,查了好多相同的问题,至今没有解决
    2021-01-20 15:52 
  • 7关注人数
  • 1390浏览人数
  • 最后回答于:2020-11-21 20:49
    请选择关闭问题的原因
    确定 取消
    返回顶部