反馈已提交

网络繁忙

导入Excel提交前清空数据库表

  • 文档创建者:yiyemeiying
  • 历史版本:31
  • 最近更新:Catqiu 于 2022-11-10
  • 1. 概述

    1.1 问题描述

    希望在导入 Excel 数据并提交之前,清空原数据库表的数据。

    1.2 实现思路

    1)安装「Excel标记导入」插件

    2)在设置填报属性时,内置sql会从上往下依次执行。利用这个特性,在第一个内置 sql 中设置删除提交清空表,然后在第二个内置 sql 中设置智能提交或者插入提交来插入数据。

    该方式能保证事务的一致性,如果数据插入失败了,那清空表的操作也会回滚。

    2. 示例

    2.1 准备数据

    新建普通报表,添加数据库查询 ds1,SQL 语句: SELECT * FROM 产品

    Snag_dfe6d61.png

    2.2 设计模板

    使用的 Excel 表: 导入Excel前清空表.xlsx

    在设计器中,按照 Excel 表设计表格,B3 单元格设置「单元格属性>扩展方向」为「纵向」,如下图所示:

    1608168316612859.png

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

    2.3 设置标记导入

    1)安装「Excel标记导入」插件后,打开「模板>Excel导入标记」,按下图所示设置:

    2)在「模板>模板web属性>填报页面设置」中选择「为该模板单独设置」,双击「标记导入」添加到工具栏。

    2.4 设置清空表

    点击「模板>报表填报属性」,添加一个内置 SQL 提交,提交类型为「删除提交」。选择需要清空的数据表,添加字段「产品 ID」并勾选为主键,值使用公式:SQL("FRDemo","SELECT 产品ID FROM 产品",1) ,查询出所有的产品ID作为主键来清空表。

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

    2.5 设置插入数据

    在之前的内置SQL下方再次添加一个内置 SQL,提交类型为「智能提交」,选择 FRDemo 中的「产品」表,智能添加所有字段,并添加对应单元格,勾选「产品ID」作为主键。

    2.6 效果预览

    使用标记导入按钮,导入excel后点击提交,数据库的数据表会先清空再插入导入的数据。

    1.gif

    注:移动端不支持 Excel 导入。

    3. 模板下载

    点击下载模板:导入Excel提交前清空表.cpt


    附件列表


    主题: 填报应用
    • 有帮助
    • 没帮助
    • 只是浏览
    中文(简体)

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

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

    不再提示

    10s后关闭

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