下面以 .NET 环境为例,介绍如何在应用系统中调用 Smartbi API 函数。
实现步骤
1、假设Smartbi服务器已经部署到应用服务器中,访问地址为:http://biserver:port/smartbi/vision
...
8、完成以上几个步骤就可以调用 Smartbi 的 API 函数了。
调用示例
下面的示例代码段,演示了 Smartbi 系统登录、创建用户和组、以及打开灵活分析报表并获取数据的调用过程。
代码块 | ||||||
---|---|---|---|---|---|---|
| ||||||
CookieContainer cookieContainer = new System.Net.CookieContainer(); //创建cookieContainer对象,用于维持会话 /** *用户管理模块 */ UserManagerService user = new UserManagerService(); user.CookieContainer = cookieContainer; //此代码必不可少,使用同一个cookieContainer对象来维持会话 user.login("admin", "manager"); //登录到Smartbi系统 /** *新建组和用户 */ String newDepId = user.createDepartment("DEPARTMENT", "WebServiceTest", "WebService测试组", "", "WEBSERVICE"); String newUserId = user.createUser("DEPARTMENT", "WebServiceTest", "webservice测试用户", "", "manager", true); /** *打开灵活分析报表 */ SimpleReportService simpleReport = new SimpleReportService(); simpleReport.CookieContainer = cookieContainer; //此代码必不可少,使用同一个cookieContainer 对象来维持会话 String reportId = "I2c94ef9e21c7c2470121c7c91c720023"; ClientReportView reportView = simpleReport.openQuery(reportId); String clientId = reportView.clientId; int totalCount = simpleReport.getTotalRows(clientId); //取报表总条数 simpleReport.setRowsPerPage(clientId, totalCount); //1.设置每页显示的数据条数 String paramId = "OutputParameter.I2c94ef9e21c7c2470121c7c8e8df001c.产品目录"; simpleReport.setParamValue(clientId, paramId, "3", "甜点、面包和糖"); //2.设置报表参数,ID取业务查询中输出参数的ID CellData[][] reportData = simpleReport.getReportDataWS(clientId, 0); //3.取报表数据 simpleReport.closeQuery(clientId); //4.关闭报表 /** *登录注销 */ user.logout(); |
注意事项
以下代码:
CookieContainer cookieContainer = new System.Net.CookieContainer();
...