反馈已提交

网络繁忙

JS实现决策报表中添加声音报警

  • 文档创建者:tao_yf
  • 历史版本:9
  • 最近更新:Carly 于 2023-06-29
  • 1. 概述

    1.1 问题描述

    在决策报表中,监控数据,当数据不在监控范围内时,声音报警。

    1.2 解决思路

    在决策报表的报表块中添加声音标签及监控数据,报表块动态刷新,添加初始化事件,通过 JS 取监控数据判断,控制声音的播放。

    注:不支持在数据决策平台中使用。

    2. 示例

    2.1 准备音频

    准备一段 mp3 音频作为报警声音,如alarm.mp3:alarm.zip

    将其放置在工程%FR_HOME%\webroot\help 目录下。如下图所示:

    注:若修改了音频的名称,后面 HTML 代码中也要做相应修改。

    2.2 准备模板

    1)新建决策报表,添加报表块 report0,在报表块 A1 单元格中输入数字 60。

    2)A2单元格中输入 HTML代码,将单元格显示方式修改为「用HTML显示内容」,用来呈现声音播放效果。

    如下图所示:

    HTML代码如下:

    <audio id="music1" src="../../help/alarm.mp3" controls="controls"  loop="loop"> Your browser does not support the audio element. </audio>

    2.3 添加事件

    点击决策报表的 body ,为其添加一个「初始化」事件。如下图所示:

    JavaScript 代码如下:

    注:代码中判断 A1 单元格内容小于 50 就报警,若需修改,可在相应位置修改。

    //获取A1单元格中值,若值<50,则报警
    setTimeout(function() { 
    setInterval("var a = document.getElementById('music1');var b = _g().getWidgetByName('report0').element.find('td[id^=A1-]').text();if(b<50){a.play();}",3000);

    }, 1000);  

    2.4 效果预览

    保存模板,点击「分页预览」,A1 单元格值为 60,不报警,修改其值为 34,预览时报警。如下图所示:

    注:不支持移动端。

    image.png

    Chrome 浏览器中如无法正常播放警告声音,请在浏览器地址栏中输入 chrome://settings/content/sound,打开声音设置。

    在允许播放的网页中添加 http://IP:端口/webroot/decision,即可实现自动播放报警声音。如下图所示:

    3. 模板下载

    附件列表


    主题: 二次开发
    • 有帮助
    • 没帮助
    • 只是浏览
    中文(简体)

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

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

    不再提示

    10s后关闭

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