反馈已提交

网络繁忙

单元格对象接口

  • 文档创建者:RosieY
  • 历史版本:24
  • 最近更新:Tracy.Wang 于 2024-08-09
  • 版本

    报表服务器版本移动端版本功能变动
    11.0
    -

    和 10.0 区别:

    10.0 无此类接口

    11.0.7-决策报表新增 getPosition、getRow、getColumn、getValue、showToolTip、setStyle 接口。
    11.0.7-安装了「FineVis数据可视化」插件 V1.8.0 及之后版本,FVS 可视化看板支持 getPosition、getRow、getColumn、getValue、showToolTip、setStyle 接口。
    11.0.1011.0.70普通报表支持 getPosition、getRow、getColumn、getValue、showToolTip、setStyle 接口。
    11.0.19-决策报表新增 setValue() ,FineVis数据可视化插件1.17.0版本适配 setValue() 

    在使用接口前,请务必先仔细阅读 JS API 兼容说明,接口默认支持普通报表和决策报表(新版)。

    getPosition

    方法getPosition()

    获取当前单元格位置信息,使用时需要先获取到单元格对象

         参数

    -

    -

       返回值Position:Array单元格的位置,数组类型,下标从 0 开始,0 表示行,1 表示列
         示例

    示例1:若获取到的单元格对象定义为 cell ,返回当前单元格的位置、行位置、列位置

    cell.getPosition();//cell单元格对象的位置信息
    cell.getPosition()[0];//cell单元格对象的行位置
    cell.getPosition()[1];//cell单元格对象的列位置

    示例2:返回决策报表中 report0 报表块中 A1 单元格的位置信息

    _g().getWidgetByName('report0').getCell(1,1).getPosition();

    示例3:返回普通报表中 A1 单元格的位置信息

    _g().getCell(1,1).getPosition();

    示例4:返回 FVS 可视化看板中「表格1」组件 A1 单元格的位置信息

    duchamp.getWidgetByName("表格1").getCell(1,1).getPosition();

    示例5:弹窗提示决策报表中 report0 报表块中 A1 单元格的行列信息

    var row=_g().getWidgetByName('report0').getCell(1,1).getPosition()[0];
    var col=_g().getWidgetByName('report0').getCell(1,1).getPosition()[1];
    FR.Msg.alert("提示","A1单元格的行位置是"+row+"列位置是"+col);
      应用示例

    点击按钮,弹窗提示决策报表中 report0 报表块中 A1 单元格的行列信息

    点击下载模板:获取单元格对象的位置.frm

    FVS 可视化看板:获取单元格对象的位置.fvs

    2022-08-26_14-38-50.gif

       移动端支持移动端

    getRow

    方法getRow()

    获取当前单元格所在的行单元格对象,返回的行对象可调用 行对象上的方法

         参数

    -

    -

       返回值

    Object

    行单元格对象,json 格式。当单元格合并时,返回单元格行对象组,假设将A1、A2单元格合并,则返回 第 1 行对象, 第 2 行对象。

         示例

    示例1:若获取到的单元格对象定义为 cell ,返回当前单元格所在的行单元格对象

    cell.getRow();

    示例2:获取决策报表中 report0 报表块中 A1 单元格所在的行单元格对象

    _g().getWidgetByName('report0').getCell(1,1).getRow();

    示例3:获取普通报表中 A1 单元格所在的行单元格对象:

    _g().getCell(1, 1).getRow();

    示例4:获取 FVS 可视化看板中「表格1」组件 A1 单元格所在的行单元格对象

    duchamp.getWidgetByName("表格1").getCell(1,1).getRow();

    示例5:修改决策报表中 report0 报表块中 A1 单元格所在的行单元格内容字体为红色、14号

    _g().getWidgetByName('report0').getCell(1, 1).getRow().setStyle({
    fontSize: 14,
    color: 'red'
    });
      应用示例

    修改决策报表中 report0 报表块中 A1 单元格所在的行单元格内容字体为红色、14号

    点击下载模板:修改单元格所在行的样式.frm

    FVS 可视化看板:修改单元格所在行的样式.fvs

    2022-08-26_15-23-32.gif

       移动端支持移动端

    getColumn

    方法getColumn()

    获取当前单元格所在的列单元格对象,返回的列对象可调用 列对象上的方法

         参数

    -

    -

       返回值

    Object

    列单元格对象,JSON 格式。当单元格合并时,返回单元格列对象组,假设将A1、B1单元格合并,则返回第 1 列对象, 第 2 列对象。

         示例

    示例1:若获取到的单元格对象定义为 cell ,返回当前单元格所在的列单元格对象

    cell.getColumn();

    示例2:获取决策报表中 report0 报表块中 A1 单元格所在的列单元格对象

    _g().getWidgetByName('report0').getCell(1,1).getColumn();

    示例3:获取普通报表中 A1 单元格所在的列单元格对象:

    _g().getCell(1,1).getColumn();

    示例4:获取 FVS 可视化看板中「表格1」组件 A1 单元格所在的列单元格对象

    duchamp.getWidgetByName("表格1").getCell(1,1).getColumn();

    示例5:修改决策报表中 report0 报表块中 A1 单元格所在的列单元格内容字体为红色、14号

    _g().getWidgetByName('report0').getCell(1,1).getColumn().setStyle({
    fontSize: 14,
    color: 'red'
    });
      应用示例

    修改决策报表中 report0 报表块中 A1 单元格所在的列单元格内容字体为红色、14号

    点击下载模板:修改单元格所在列的样式.frm

    FVS 可视化看板:修改单元格所在列的样式.fvs

    2022-08-26_15-40-39.gif

       移动端支持移动端

    getValue

    方法getValue()

    获取单元格的类型和值

         参数

    -

    -

       返回值

    string

    单元格的类型和值

         示例

    示例1:若获取到的单元格对象定义为 cell ,返回当前单元格的类型和值

    cell.getValue();

    示例2:获取决策报表中 report0 报表块中 A1 单元格的类型和值

    _g().getWidgetByName('report0').getCell(1,1).getValue();

    示例3:获取普通报表 A1 单元格的类型和值

    _g().getCell(1,1).getValue();

    示例4:获取 FVS 可视化看板中「表格1」组件 A1 单元格的类型和值

    duchamp.getWidgetByName("表格1").getCell(1,1).getValue();

    示例5:弹窗打印决策报表中 report0 报表块中 A1 单元格的类型和值

    var a=_g().getWidgetByName('report0').getCell(1,1).getValue();
    FR.Msg.alert("提示","A1单元格的值是"+a);
      应用示例

    弹窗打印决策报表中 report0 报表块中 A1 单元格的类型和值

    点击下载模板:点击显示单元格的值.frm

    FVS 可视化看板:获取单元格值.fvs

       移动端

    支持移动

    但当getCell与getValue联用时,例如:_g().getCell(1,1).getValue();,不支持填报预览

    setValue

    注:不支持普通报表。

    方法setValue(value)

    设置单元格的值

         参数

    value:any

    单元格值,任意格式

       返回值

    void

         示例

    示例1:FVS 可视化看板中给「表格1」组件 A1 单元格赋值为「其他地区」

    duchamp.getWidgetByName("表格1").getCell(1,1).setValue("其他地区");

    示例2:决策报表中给报表块 report0 中的 A1 单元格赋值「其他地区」

    _g().getWidgetByName("report0").getCell(1,1).setValue("其他地区");


      应用示例

    点击下载模板:点击修改单元格值.fvs

    AD332B3A-DABE-4B4B-9017-BAE12F4DBDF0.GIF

       移动端不支持移动端


    showToolTip

    方法

    showToolTip(opts)

    给报表单元格添加提示

         参数

    opts: Object

    {

        show: boolean,

        content: { 

            text: string, // 文字

            image: string, // 图片

            header: string // 标题

        }

        style: { 

        }

    }

    注:普通报表不支持 header 和 image 参数


    opts: 弹窗选项,是个对象

    1)show:是否会出现弹窗,布尔型,true 为出现,false 为不出现

    2)content:可选字段,不指定即为显示文字,内容为单元格中的值

    • text: 提示的内容,字符串

    • image: 图片 URL 路径,字符串,图片格式支持 pn   g、jpg。图片来源可以为网页图片,如:

    https://www.fanruan.com/images/logo-fanruan.png

    也可以将图片放置在报表工程目录 %FR_HOME%\webapps\webroot 下,通过URL 访问。如:

    http://localhost:8075/webroot/11.jpg
    • header: 标题

    3)style: 可选字段,不指定则为默认样式,支持的样式可参考:单元格样式属性style

       返回值

    -

    -

         示例

    示例1:将获取到的单元格对象定义为 cell,给单元格设置一个标题为“提示”,内容为红色“地区销售数据”字样的提示框: 

    cell.showToolTip({
    show: true// 是否会出现弹窗
    content: { // 可选字段,不指定即为显示文字
    text: "地区销售数据"// 文字
    header: "提示" // 标题
    },
    style: { // 可选字段,不指定为默认样式,支持css标准样式的字段
    color: "#DC143C"
    //符合css规则
    }
    });

    示例2:给决策报表中 report0 报表块 A1 单元格设置一个标题为“提示”,内容为红色“地区销售数据”字样的提示框: 

    _g().getWidgetByName('report0').getCell(1,1).showToolTip({
    show: true// 是否会出现弹窗
    content: { // 可选字段,不指定即为显示文字,内容为cell.getValue();
    text: "地区销售数据"// 文字
    header: "提示" // 标题
    },
    style: { // 可选字段,不指定为默认样式,支持css标准样式的字段
    color: "#DC143C"
    //符合css规则
    }
    });

    示例3:给普通报表 A1 单元格设置一个标题为“提示”,内容为红色“地区销售数据”字样的提示框: 

    _g().getCell(1,1).showToolTip({
    show: true, // 是否会出现弹窗
    content: { // 可选字段,不指定即为显示文字,内容为cell.getValue();
    text: "地区销售数据", // 文字
    header: "提示" // 标题
    },
    style: { // 可选字段,不指定为默认样式,支持css标准样式的字段
    color: "#DC143C"
    //符合css规则
    }
    });

    示例4:给 FVS 可视化看板中「表格1」组件 A1 单元格设置一个标题为“提示”,内容为单元格值的提示框

    duchamp.getWidgetByName("表格1").getCell(1,1).showToolTip({
    show: true, // 是否会出现弹窗
    content: { // 可选字段,不指定即为显示文字
    header: "提示" // 标题
    }
    });

    示例5:给决策报表中 report0 报表块 A1 单元格设置一个标题为“提示”,内容为单元格值的提示框: 

    _g().getWidgetByName('report0').getCell(1,1).showToolTip({
    show: true, // 是否会出现弹窗
    content: { // 可选字段,不指定即为显示文字
    header: "提示" // 标题
    }
    });
      应用示例

    给决策报表中 report0 报表块 A1 单元格设置一个标题为“提示”,内容为单元格值的提示框: 

    点击可下载模板:鼠标悬浮单元格文字提示.frm

    FVS 可视化看板:鼠标悬浮单元格文字提示.fvs

       移动端不支持移动端

    setStyle

    方法

    setStyle(opts)

    设置单元格对象的样式

         参数

    opts: Object

    {

        fontFamily: String

        fontSize: number

        fontWeight: String

        color: String

      ........

    }

    opts: 单元格格式属性,如边框、字体颜色等

    支持的属性可查看:单元格样式属性style

       返回值

    -

    -
         示例

    示例1:若获取到的单元格对象为 cell ,设置该单元格的样式为字体颜色红色、字号14 号

    cell.setStyle({
    fontSize: 14,
    color: 'red'
    });

    示例2:给普通报表 A1 单元格的样式设置为字体颜色红色、字号14 号

    _g().getCell(1,1).setStyle({
    fontSize: 14,
    color: 'red'
    });

    示例4:将 FVS 可视化看板中「表格1」组件 A1 单元格的样式设置为字体颜色红色、字号 20 号

    duchamp.getWidgetByName("表格1").getCell(1,1).setStyle({
    fontSize: 20,
    color: 'red'
    });

    示例5:将决策报表中将 report0 报表块 A1 单元格的样式设置为字体颜色红色、字号14 号

    _g().getWidgetByName('report0').getCell(1,1).setStyle({
    fontSize: 14,
    color: 'red'
    });
      应用示例

    点击按钮,将决策报表中 report0 报表块 A1 单元格的字体设置为红色、加粗、14 号:

    点击可下载模板:获取单元格后修改单元格样式.frm

    FVS 可视化看板:获取单元格后修改单元格样式.fvs

    2022-08-16_19-47-08.gif

       移动端支持移动端

    cellStr2ColumnRow

    方法cellStr2ColumnRow(cell)

    根据单元格编号获取行列索引

         参数cell

    单元格编号

       返回值{col:colindex, row:rowindex}

    行列索引,json 格式

    • col:列索引,从 0 开始

    • row:行索引,从 0 开始

         示例

    示例1:普通报表或决策报表中,返回 A1 单元格的行列信息

    FR.cellStr2ColumnRow("A1");

    示例2:普通报表或决策报表中,打印 A1 单元格的行号

    var a=FR.cellStr2ColumnRow("A1").row+1;
    FR.Msg.alert("提示", "A1单元格的行号为"+a);

    示例3:FVS 模板中,打印单元格的行列号

    var a=duchamp.cellStr2ColumnRow("A3").col+1;
    var b=duchamp.cellStr2ColumnRow("A3").row+1;
    //alert(a);
    duchamp.Msg.alert({
        title: "提示",
        message:  "A3单元格的列号为"+a,
    });
    duchamp.Msg.alert({
        title: "提示",
        message:  "A3单元格的行号为"+b,
    });


      应用示例

    普通报表示例:点击按钮,打印  A1 单元格的行号

    FVS 模板示例:点击按钮,打印 A3 单元格的行列号

    点击下载模板:打印单元格的行列号.fvs



       移动端支持移动端

    columnRow2CellStr

    方法columnRow2CellStr({col:colindex, row:rowindex})根据行列号获取单元格编号
         参数{col:colindex, row:rowindex}

    行列索引,json 格式

    • col:列索引,从 0 开始

    • row:行索引,从 0 开始

       返回值cell

    单元格编号

         示例

    示例1:普通报表或决策报表中,返回行索引为 3,列索引为 1 的单元格编号

    FR.columnRow2CellStr({col:1, row:3});

    示例2:普通报表或决策报表中,打印行索引为 3,列索引为 1 的单元格编号

    var a=FR.columnRow2CellStr({col:1, row:3})
    FR.Msg.alert("提示", "行索引3,列索引为1的单元格编号为"+a);

    示例3:FVS 模板中,打印行索引为 3,列索引为 1 的单元格编号

    var a=duchamp.columnRow2CellStr({col:1, row:3})
    duchamp.Msg.alert({
        title: "提示",
        message:  "行索引3,列索引为1的单元格编号为"+a,
    });


      应用示例

    普通报表示例:打印行索引为 3,列索引为 1 的单元格编号

    809-1408.gif

    FVS 模板示例:打印行索引为 3,列索引为 1 的单元格编号

    点击下载模板:根据行列号获取单元格编号.fvs

    809-1409.gif

       移动端普通报表、决策报表不支持移动端;FVS模板支持移动端

    附件列表


    主题: 二次开发
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览
    中文(简体)

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

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

    不再提示

    10s后关闭



    AI

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