Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

可以将已经做好的报表集成到第三方系统中,报表是H5的,所以只需要在第三方系统中通过iframe嵌入报表链接即可.

iReport365提供了以下两种报表集成方式:

 

【一、用户名密码参数集成】

通过将用户名和密码作为参数放入报表链接中,实现即时登录和权限控制。

 

  1. 在报表设计器中,预览报表,获得报表的访问链接,例如:

    https://enterprise.ireport365.com/view/report.do?reportId=98062e02a4294eda86423f464485089e
  2. 在报表的访问链接中加入用户名及密码参数,例如:

    https://enterprise.ireport365.com/view/report.do?reportId=98062e02a4294eda86423f464485089e&username=demo&password=123456

    参数列表如下:

    参数名含义
    username用户的登录名
    password用户的登录密码,明文
    md5password用户的登录密码,使用md5加密的密文

    注:password和md5password只需提供其中一个即可

【二、AccessToken安全访问集成】

向报表服务器获得accessToken(访问码),通过Api生成包含加密认证的报表url,url过期时间为10分钟,大大提升系统安全性

  1. 创建授权应用,参考:应用授权
  2. 下载Api源码:
    iReport365Api.java
  3. 替换Api源码中的以下参数:

    Api源码参数描述
    host替换成相应的报表服务器地址,包含http,不能以 / 结尾
    appId授权应用的appId
    appSecret授权应用的安全码
  4. Api源码使用:

    API_v1: 第一版API接口(已废弃)
    API_v2: 第二版API接口

【与第三方用户系统集成】

如果需要与现有的用户系统集成,用户无需管理新的密码,可以启用iReport365报表平台的用户登录脚本,当用户登录时,执行管理员设定的脚本,比如使用SQL或WebService验证用户输入的密码。

  1. 平台管理-》系统设置-》用户登录脚本-》开启
  2. 设置用户登录脚本,例如:

    importPackage(java.util); 
    importPackage(org.apache.commons.codec.digest); 
    //获取用户登录时填写的用户名和密码 
    var username=request.getParameter("username"); 
    var password=request.getParameter("password"); 
    //将密码MD5加密 
    var md5Password = DigestUtils.md5Hex(password); 
    //用户库的连接名称 
    var connectionName = "user_db_connection"; 
    var param = new ArrayList(); 
    param.add(username); 
    param.add(md5Password); 
    //查询用户库 
    var sql = "select uid,name from user_table where username=? and password=?"; 
    var data = databaseService.query(connectionName, sql, param); 
    if(data.size() === 0){ 
    	  result.setSuccess(false); 
    	result.setMessage("用户名或密码错误"); 
    }else{ 
    	result.setSuccess(true); 
    }

 

 

 

  • No labels