Univer Go: 用电子表格一键实现报表设计器到底有多简单(内含源码)

定制化你的报表:

hi👋 ,向大家推荐一款基于 Univer Go平台开发的智能模板—— Data Report。该模版内置了强大的TypeORM 库实现与数据库高效交互,在使用该模版时,你将拥有充分的自由度。
  • 可以轻松切换数据库选项,灵活查询数据
  • 根据实际需求自由选择字段,还能随心所欲地挑选报表样式
  • 根据特殊需求修改脚本,定制出完全属于自己的专属报表。
同时 Data Report 让你无需脱离熟悉的电子表格操作环境,就能实现报表设计器的全部功能,真正开启数据处理的全新模式,为你带来便捷、高效的数据处理新体验 。
 
Univer Go 是一款高度可定制化的电子表格工具,能够根据用户需求构建一个性能与功能对标excel的电子表格。它支持灵活的功能扩展,涵盖基础数据处理、复杂的导入导出操作和协同功能,同时为 UI/UX 设计提供了定制空间,助力打造易用交互界面。此外,Univer Go 融合先进 AI 技术,配备了功能强大的脚本编写与执行工具,支持开发者创建和运行自动化脚本、进行数据库连接与数据读写管理以及开发自定义应用。无论是初学者还是专业开发者,都能凭借其简洁的操作逻辑和丰富功能支持,轻松上手。
体验链接https://go.univer.ai/en-US
 

运行后的效果:

具体操作步骤及界面请查看着重介绍业务的文章: 从报表小白一秒升级为高手,Univer Go 这款免费的报表设计器模版有多厉害?
 
 

Univer Go 内获取源代码实现 Data Report

请先下载 Univer Go 获取源码: https://go.univer.ai/en-US
  1. client script调用node script获取数据库数据

//client中相关代码
const data = await univerAPI.runOnServer("database", "querySql", { host, port, username, password, database, schema, sqlType, sqlStr });
    if (data) {
        try {
            return JSON.parse(data);
        } catch (e) {
            console.error('parse result error');
        }

    }
//node script相关代码
async function querySql({ host, port, username, password, database, schema, sqlType, sqlStr }) {
    const datasource = new typeorm.DataSource({
        type: sqlType, // or 'mysql' for MySQL
        host: host,
        port: port,
        username: username,
        password: password,
        database: database,
        schema: schema,
        synchronize: false, // Don't auto-sync schema, we are just reading tables
        // logging: true, // Enable SQL query logging
    });
    let data;
    const queryRunner = datasource.createQueryRunner();
    try {
        // Initialize TypeORM connection
        await datasource.initialize();
        data = await queryRunner.query(sqlStr);
    } catch (error) {
        console.error('Error during execution:', error);
    } finally {
        await queryRunner.release();
        await datasource.destroy();
    }
    return JSON.stringify(data);
}
  1. 将读取回来的数据通过数据绑定插件展示到对应的path范围中, 具体的插件使用请看这里https://www.npmjs.com/package/@univerjs/sheets-source-binding

 const data = await getData(param);
                            const sourceInfo = {
                                records: data,
                                fields: Object.keys(data?.[0] ?? {}),
                            }
                            workbook.setSourceData(param.sourceId, sourceInfo);

以上内容仅是 Univer GO 强大功能的冰山一角!欢迎您体验 Univer GO,不仅能获取更全面的代码,还能探索丰富多样的定制化功能,解锁高效工作新方式 。

优秀的个人博客,低调大师

微信关注我们

原文链接:https://www.oschina.net/news/332910

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
Apache Tomcat7、8、9(Java Web服务器)

Apache Tomcat7、8、9(Java Web服务器)

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

Eclipse(集成开发环境)

Eclipse(集成开发环境)

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。

Java Development Kit(Java开发工具)

Java Development Kit(Java开发工具)

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。

Sublime Text 一个代码编辑器

Sublime Text 一个代码编辑器

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。