反馈已提交

网络繁忙

先清空数据库表再提交数据入库

  • 文档创建者:yiyemeiying
  • 历史版本:35
  • 最近更新:Fairy.Zhang 于 2024-08-21
  • 1. 概述

    1.1 版本

    版本
    功能变更
    11.0-

    1.2 应用场景

    使用 Excel标记导入插件 导入 Excel 数据提交时,希望先清空原数据库表的数据再将导入的数据写入数据库表。如下图所示:

    动图4.gif

    1.3 实现思路

    1)设置填报属性时,多个「内置SQL」的执行顺序为从上到下,串行执行。

    2)利用此特性,在第一个内置SQL」中设置「删除提交」清空表,然后在第二个内置SQL」中设置「智能提交」插入数据。

    3)该方式保证了事务的一致性,如果数据插入失败,清空表的操作也会回滚,确保数据库状态回到事务开始之前的状态。

    2. 示例

    2.1 新建模板

    点击菜单栏「文件>新建普通报表」,新建一张普通报表。如下图所示:

    新建普通报表.png

    2.2 准备数据

    新建数据库查询 ds1,SQL 语句为: SELECT * FROM 产品。如下图所示:

    新建数据库查询.png

    2.3 设计报表

    A1-K1 单元格输入文本,A2-K2 单元格设置扩展方向为纵向,设计报表样式。如下图所示:

    注:设计表格时未添加控件,只支持导入数据,无法修改数据,如需修改数据可自行添加控件。

    设计报表3.png

    2.4 设置 Excel 标记导入

    点击菜单栏「模板>Excel导入标记」,设置导入区域,「清空」、「增量」、「覆盖」三种导入方式皆可,此处设置导入方式为「清空」。如下图所示:

    注:此处导入方式选择的「清空」只是清空页面数据, 2.6 节的「删除提交」设置才是清空数据库表中的数据。

    设置导入标记2.png

    2.5 添加标记导入按钮

    1)点击菜单栏「模板>模板web属性」。

    2)点击「填报页面设置」,选择「为该模板单独设置」,双击「标记导入」按钮添加到工具栏。如下图所示:

    设置标记导入按钮.png

    2.6 设置清空表

    1)点击菜单栏「模板>报表填报属性」,添加「内置SQL」,提交类型为「删除提交」。

    2)选择数据库 FRDemo 中的「产品」表 ,添加字段「产品 ID」并勾选为主键,值为公式:SQL("FRDemo","SELECT 产品ID FROM 产品",1) ,即查询出所有的「产品ID」作为主键来清空表。如下图所示:

    注:设置清空表只需要一个字段,设置多个字段可能会出现笛卡尔积问题。

    删除提交.png

    2.7 设置插入数据

    1)继续添加「内置 SQL,提交类型为「智能提交」。

    2)选择 FRDemo 中的「产品」表,智能添加所有字段,并添加对应单元格,勾选「产品ID」作为主键。如下图所示:

    注:添加「内置SQL 」的顺序不能错,先设置清空表,再设置插入数据,否则达不到效果。

    设置智能提交.png

    2.8 效果预览

    注:不支持移动端。

    保存报表,点击「填报预览」,点击工具栏的「标记导入」,导入 Excel 文件,点击「提交」,数据库的数据表会先清空再将导入的数据提交入库。如 1.2 节所示。

    3. 下载模板

    附件列表


    主题: 填报应用
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览
    中文(简体)

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭



    AI

    联系我们
    在线支持
    获取专业技术支持,快速帮助您解决问题
    工作日9:00-12:00,13:30-17:30在线
    页面反馈
    针对当前网页的建议、问题反馈
    售前咨询
    采购需求/获取报价/预约演示
    或拨打: 400-811-8890 转1
    qr
    热线电话
    咨询/故障救援热线:400-811-8890转2
    总裁办24H投诉:17312781526
    提交页面反馈
    仅适用于当前网页的意见收集,帆软产品问题请在 问答板块提问前往服务平台 获取技术支持