FineReport填报时能否自动生成记录

条码由5位前置码和6位数字编号组成(例:前置码为CM18K,数字编号已经编到995000)。用户输入需要增加的记录数目(例如需要增加20条记录),需要系统自动创建CM18K995001、CM18K995002、......、CM18K995020这样20个条码。
  
  之前思考过用存储过程,循环执行SQL往数据库中插入记录,但是由于需要保存操作人和操作时间,因此想在finereport设计器中生成记录,然后通过提交事件将数据存入数据库。
FineReportqianxu1996 发布于 2018-10-8 16:34
悬赏:2 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共8回答
最佳回答
0
孤陌发布于2018-10-8 16:34(编辑于 2023-9-6 09:34)
555
  • qianxu1996 qianxu1996(提问者) 多谢提醒,之前确实没考虑过并发。
    回复
    2018-10-09 08:24 
  • 孤陌 孤陌 评论 qianxu1996 :如果不考虑并发 是简单的 我这边考虑并发是这样做的弄了个触发器 填写数量 就自动生成多少个条码 然后在填报成功事件里写JS  如果要显示条码就直接写子模板超链接 然后打印 如果不要显示 就做默认打印 直接打印条码出来
    回复
    2018-10-09 08:42 
  • qianxu1996 qianxu1996(提问者) 我这边情况有点不同,有两种情况发生时,都是对数据表进行插入操作:1.最初生成条码  2.后期补印条码。这两种记录都储存在一张表中,通过flag列区分此记录是否为补印记录。用触发器的话,会不会在最初生成条码记录时,触发补印条码的触发器?
    昨天想法是通过finereport调用存储过程,在存储过程中往数据库中循环插入记录。补印张数作为参数传给存储过程,这种思路可行吗?不确定finereport能否在按钮点击事件中调用存储过程。
    回复
    2018-10-09 09:15 
  • 孤陌 孤陌 评论 qianxu1996 : 如果是触发器 那你可以新建一个表 保存你补印条码的数据 这个表只是 保存 补印的时间 操作人 数量 等等数据  这个表有数据存进来 才会运行触发器 所以你担心的问题不存在 至于触发器怎么写  这个需要你根据自己的实际需求进行写  存储过程的方法也是可以用的  看你自己了
    回复
    2018-10-09 09:29 
  • qianxu1996 qianxu1996(提问者) 评论 孤陌 :好的,谢谢!
    回复
    2018-10-09 09:44 
最佳回答
0
星痕发布于2018-10-8 16:36(编辑于 2023-9-6 09:34)
555
  • qianxu1996 qianxu1996(提问者) 需要一次性生成20条记录,实际实现的功能是补印条码,用户输入补印张数,给需要补印的条码生成全新的编码。
    回复
    2018-10-09 08:23 
  • 1关注人数
  • 595浏览人数
  • 最后回答于:2018-10-9 09:44
    活动推荐 更多
    热门课程 更多
    返回顶部