点击按钮直接提交入库(自定义提交事件)

编辑
  • 文档创建者:文档助手1
  • 浏览次数:26322次
  • 编辑次数:23次
  • 最近更新:Kevin-s 于 2019-06-04
  • 1. 问题描述

    填报报表,修改数据后都需要点击工具栏上的提交按钮才会与数据库进行交互。若不使用 FR 的提交按钮,如何调用提交事件与数据库进行交互呢?

    如点击自定义的删除按钮,删除行的同时就与数据库交互:


    2. 实现思路

    可以通过 JS_g('${sessionID}').writeReport(); 来调用 FR 的提交事件,此时会根据报表填报属性中定义的内置 SQL 与数据库进行交互。

    只要可以调用 JS 的地方如删除行按钮的点击事件中,就能调用如上方法触发报表提交事件。

    注:自定义按钮实现提交入库事件,在 cpt 中不会触发及时校验,只能通过单独的 JS 来进行校验;而 frm 可以触发及时校验。

    3. 解决步骤

    报表设计如下:


    在 G3 和 H3 单元格增加 按钮控件,G3 按钮类型选择插入行,指定单元格选择 A3,并且设置插入行的行数为 1 行即点击增加行时只增加一行。如下图所示:


    H3 按钮类型选择删除行,指定单元格选择 A3,如下图所示:


    3.2 添加事件

    当我们点击“删除行”按钮时,需要先在页面上把该行删除,然后再提交入库。

    为了点击删除按钮时可以直接提交入库,我们给删除行按钮即 H3 单元格,添加一个点击事件,如下所示:


    setTimeout(function(){ 
       _g('${sessionID}').writeReport();
    },2000);

    注:需要延长 2~3 秒后再触发提交事件,使页面删除数据动作完成后再提交入库。

    4)保存预览,效果如下:


    在线查看模板效果请点击 点击按钮直接提交入库(自定义提交).cpt

    已完成模板,可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Form\LineForm\点击按钮直接提交入库(自定义提交).cpt

    4.移动端效果


    附件列表


    主题: 填报应用
    标签: 暂无标签 编辑/添加标签
    如果您认为本文档还有待完善,请编辑

    文档内容仅供参考,如果你需要获取更多帮助,付费/准付费客户请咨询帆软技术支持
    关于技术问题,您还可以前往帆软社区,点击顶部搜索框旁边的提问按钮
    若您还有其他非技术类问题,可以联系帆软传说哥(qq:1745114201

    此页面有帮助吗?只是浏览 [ 去社区提问 ]