当前位置: 首页 > news >正文

帆软fvs文件中某表格新增数据来声提醒

1.上传音频文件到帆软安装目录的指定环境

准备一个音频文件(如 mp3 格式),并将其放置在合适的目录。

例如:%FR_HOME%\webapps\webroot\help 

2.点击 FVS 模板左上角「模板>页面加载结束事件」,输入以下 JavaScript 代码:

	"use document";
	const audio = document.createElement("audio");
	audio.id = "audio";
	audio.src = "/webroot/help/音频文件.mp3"; 
	document.body.appendChild(audio);
	 

	setTimeout(function() {
			const table = duchamp.getWidgetByName("表格1");
			
			// 初始化上次行数
			let lastRowCount = 0;
			for(let r=1; ;r++) {
					if(!table.getCellValue(r,1)) break;
					lastRowCount++;
			}

			setInterval(() => {
					let currentRowCount = 0;
					for(let r=1; ;r++) {
							if(!table.getCellValue(r,1)) break;
							currentRowCount++;
					}
					
					// 核心变化:只要比上次多就提醒
					if(currentRowCount > lastRowCount) {
							audio.play();
					}
					
					// 关键:无论是否增加,都更新为当前值
					lastRowCount = currentRowCount;
			}, 5000);
	}, 1000);

扩展:

点击表格,找到相关表属性设置 ,在其右上角【交互】-【交互事件】,通过点击【添加事件】,找到初始后的JavaScript功能,进行添加相应脚本也可以实现。

3. 浏览器中设置允许播放声音

以谷歌浏览器为例:

通过【设置】- 【隐私和安全】-【网站设置】-【更多内容设置:声音】, 然后【添加】

输入需要自动播放音频的网站地址:

  • 决策系统地址:http://IP:端口/webroot/decision
  • 自定义服务地址:http://ip:端口

备注:

如果只是单纯判断表格是否有数据,可以换成以下JavaScript 代码。

    "use document";
	const audio = document.createElement("audio");
	audio.id = "audio";
	audio.src = "/webroot/help/音频文件.mp3"; 
	document.body.appendChild(audio);

 

	// 使用 setInterval 实现持续检测
	setInterval(function() {
			const table = duchamp.getWidgetByName("表格1");
			let hasData = false;

			// 从第二行开始检测(假设表头是第一行)
			for(let r=2; ;r++) { // 注意这里从2开始
					const cellValue = table.getCellValue(r,1);
					
					// 终止条件:遇到第一个空单元格
					if(!cellValue) break;
					
					// 找到有效数据立即标记
					hasData = true;
					break; // 检测到数据即可退出循环
			}

			if(hasData) {
					audio.play();
			}
	}, 10000);

相关文章:

  • Kotlin日常使用函数记录
  • JavaScript逆向工程实战:如何精准定位加密参数生成位置
  • 大模型学习七:‌小米8闲置,直接安装ubuntu,并安装VNC远程连接手机,使劲造
  • 国网B接口协议资源上报流程详解以及上报失败原因(电网B接口)
  • 嵌入式---灰度传感器
  • nginx镜像创建docker容器,及其可能遇到的问题
  • 通过 SSH 方式访问 GitHub 仓库
  • AI创业风向标:构建下一代「AI叙事创作平台」
  • 为什么在模型训练过程中,不同的张量(比如输入数据和模型参数)被放置在了不同的 GPU 设备上,而模型要求所有相关张量都在同一个设备上才能正确计算
  • AI日报 - 2025年4月10日
  • Django 生成PDF文件
  • 【无标题】linux打包utools为appimage
  • “Common::PluginInterface”: 无法实例化抽象类
  • 线程控制
  • Node.js EventEmitter 深入解析
  • 从零开始学Python游戏编程17-函数2
  • 手机静态ip地址怎么获取?方法与解析‌
  • ESModule和CommonJS在Node中的区别
  • windows上opencv编译cuda版本
  • java学习笔记14——网络编程
  • 电子商务网站开发公司/优化大师有必要安装吗
  • 优化seo技术/惠州seo排名
  • mibt wordpress/滕州seo
  • 劳动仲裁院内部网站建设/推广普通话
  • 胶州经济技术开发区 建设局 网站/百度网盘怎么找片
  • 厦门网站建设680/常用的关键词挖掘工具有哪些