反馈已提交

网络繁忙

JS实现动态选择数据表提交

  • 文档创建者:星踪
  • 历史版本:5
  • 最近更新:Leo.Tsai 于 2022-08-19
  • 1. 概述

    1.1 问题描述

    默认情况下,都是在填报属性设置好要入库的表进行提交。如果希望能在页面上自由选择要入库的数据表或者数据库,要怎么实现呢?

    1.2 实现思路

    在表格中利用多个自定义按钮来分别设置不同的填报属性,然后用工具栏的自定义按钮获取所选数据库或者数据表,执行对应按钮的点击事件,即可提交到对应的表里。

    接口说明可以参考:API接口汇总

    2. 示例

    2.1 模板设计

    如图制作模板:

    B1 单元格为单选按钮组控件,作用为供用户选择需要提交到哪个数据库中。

    2.2 设置填报属性按钮

    1)在 E4 和 F4 单元格添加按钮控件,分别绑定不同的点击提交事件。设置完成后该两列可以隐藏。

    E4:

    F4:

    2)给 E4 单元格按钮设置控件名称为:FRDemo,给 F4 单元格按钮设置控件名称为:sqlserver。

    注:此处的控件名最好设置为和单选按钮选项一致,便于后续 JS 的调用。

    E4:

    F4:

    3)按钮定义的提交事件是没有成功和失败提示的,所以还需要在回调函数中设置提示语句。

    E4:

    if (fr_submitinfo.success) {
    FR.Msg.toast('提交成功,入库FRDemo');
    } else {
    FR.Msg.toast('提交失败,错误信息为:' + fr_submitinfo.failinfo);
    }

    F4:

    if (fr_submitinfo.success) {
    FR.Msg.toast('提交成功,入库sqlserver');
    } else {
    FR.Msg.toast('提交失败,错误信息为:' + fr_submitinfo.failinfo);
    }

    2.3 设置工具栏提交按钮

    由于需要自定义调用提交,所以默认的提交按钮肯定实现不了。可以添加一个自定义按钮,通过 JS 来实现。

    1)在模板>模板web属性>填报页面设置处选择为该模板单独设置,双击自定义按钮添加到工具栏上,同时把原提交按钮删除。

    2)给自定义按钮设置名称和图标

    3)给自定义按钮添加事件。

    JavaScript 代码如下:

    var database = _g().getCellValue(0, 1, 0);
    //获取B1单元格值
    _g().getWidgetByName(database).fireEvent("click");
    //触发对应名称按钮的点击事件

    2.4 效果预览

    PC端填报预览效果如下图所示:

    1.gif

    注:该方案支持移动端。

    3. 模板下载

    已完成模板可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\JS\填报预览JS实例\动态选择数据表提交.cpt

    点击下载模板:动态选择数据表提交.cpt

    附件列表


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

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

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

    不再提示

    10s后关闭

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