帆软报表实现通过js查询数据库设置表格数据

最近做的一直在做报表相关的需求,自己也是一边学一边做。有一个有意思的需求是在表格中某个单元格在编辑完以后其它的表格中的数据自动填充,当也是根据一定的规则与数据来源才能填充的。
先来点基础概念,就是帆软给我们提供了这个编辑后的事件或者说是一些按钮事件

文本中提供的事件

在这里插入图片描述
根据需求选择一个事件就开始编写了,我直接把需求中用到的js代码贴过来,然后分段给大家解释一下
这个是获取点击单元格坐标位置,为什么要获取位置呢,是因为需求中有说到要更改其它单元格的参数,所以要以当前的单元格的行列索引为参考推出来要修改的单元格的行列索引

//获取当前坐标
var location = this.options.location;
//根据当前坐标获取点击单元个的行列索引
var cr = FR.cellStr2ColumnRow(location)

这个是要去数据库中查询数据,提前定义好的sql,通过使用FR.remoteEvaluate来调用帆软内置的sql函数,就是下面这张图中的,这个sql函数的入参一共是4个,第一个是我们在帆软中定义的数据集链接的名称,第二个就是我们自己写的sql了,这个就不截图了,第三个和第四个其实就是对应在数据库中查询出的数据第几列,第几行了,因为是取一个参数,我目前的需求是这么做的
在这里插入图片描述
第一个参数对应的就是定义的数据连接的名称
在这里插入图片描述

var sql2 = "select * from student";
var res = FR.remoteEvaluate('=sql("本地MySQL","' + sql2 + '",1,1)');//示例1,1要取的是第一行第一列的这个数据,自己说的时候是行在前,列在后,但是给参数的时候,第三个是列,第四个是行
var res2 = FR.remoteEvaluate('=sql("本地MySQL","' + sql2 + '",2,1)');//2,1要取第一行第二列的数据

这个是给指定的单元个赋值,我这里是给置空了所以入参是null,其实可以根据上面数据库查询到的数据直接放进去即可。

contentPane.curLGP.setCellValue(col1,ro,null)
contentPane.curLGP.setCellValue(col2,ro,null)

在这里插入图片描述

在帆软报表设计器中,contentPane.curLGP.setCellValue 是一个 JavaScript 函数,用于设置当前内容面板(contentPane)中的数据网格(ListGridPanel,简称LGP)的单元格的值。

具体来说,contentPane 是一个报表设计器中的一个重要对象,代表了当前的内容面板,而 curLGP 则表示当前选中的数据网格面板。通过 setCellValue 函数,你可以指定数据网格中某个单元格的行号和列号,并设置其对应的数值。
请添加图片描述

相关推荐

  1. C# 通过阿里云 API 实现企业工商数据查询

    2024-04-21 22:54:04       37 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-21 22:54:04       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-21 22:54:04       106 阅读
  3. 在Django里面运行非项目文件

    2024-04-21 22:54:04       87 阅读
  4. Python语言-面向对象

    2024-04-21 22:54:04       96 阅读

热门阅读

  1. 使用 hiredis 客户端库封装一个简单的 Redis 类

    2024-04-21 22:54:04       36 阅读
  2. 【QT教程】QT6物联网应用

    2024-04-21 22:54:04       27 阅读
  3. 让css失效的方法

    2024-04-21 22:54:04       37 阅读
  4. 持续集成和持续部署

    2024-04-21 22:54:04       39 阅读
  5. VOJ 扑克牌 题解 01背包dp

    2024-04-21 22:54:04       36 阅读
  6. linux tar解压缩命令

    2024-04-21 22:54:04       39 阅读
  7. 设计模式-工厂模式

    2024-04-21 22:54:04       29 阅读
  8. docker安装ubuntu桌面端

    2024-04-21 22:54:04       35 阅读