BIEE常用的SOAP接口说明.docx
- 文档编号:17976517
- 上传时间:2023-04-24
- 格式:DOCX
- 页数:12
- 大小:23.89KB
BIEE常用的SOAP接口说明.docx
《BIEE常用的SOAP接口说明.docx》由会员分享,可在线阅读,更多相关《BIEE常用的SOAP接口说明.docx(12页珍藏版)》请在冰豆网上搜索。
BIEE常用的SOAP接口说明
BIEE常用的SOAP接口说明
版本
日期
AMD
修订者
说明
1.0
2010-07-295
A
吴军佑
目录
1.接口部份3
1.1biee登录接口3
1.2获取biee主题接口3
1.3获取表名接口5
1.4获取表结构8
1.5查询biee原报表9
1.6查询biee元数据11
1.7翻页接口12
2.数据结构描述13
1.接口部份
1.1biee登录接口
用于登录链接biee,获取会话id。
【接口位置】com.tds.biee.service.LoginServiceImpl
【函数说明】
publicStringloginBieeExt(Stringusername,Stringpassword,StringuserAgent,
Localelocale)
参数名
类型[最大长度]
说明
username
String
biee登录帐号
password
String
biee登录密码
userAgent
String
获取操作系统类型和浏览器类型描述符
locale
java.util.Locale
获取本地编码类型
返回
说明
String
登录成功biee返回的会话id
调用例子
StringsessionId=bieeLoginService.loginBieeExt(cinfigBieeRec.getString("BIEE_LOGIN_ID"),
cinfigBieeRec.getString("BIEE_LOGIN_PWD"),request.getHeader("User-Agent"),request.getLocale());
1.2获取biee主题接口
biee可以有多个主题域,每个主题载包含相关表。
【接口位置】com.tds.biee.service.MetadataServiceImpl
【函数说明】
publicSASubjectArea[]getSubjectAreas(StringsessionID)
参数名
类型[最大长度]
说明
sessionID
String
会话id
返回
说明
SASubjectArea[]
返回主题对象数据
调用例子
MetadataServicemetadataService=(MetadataService)BasicFactory.getImpl(MetadataService.class);
BieeAdressInfobieeAdressInfo=newBieeAdressInfo(rec.getString("BIEE_IP"),rec.getString("BIEE_LOGIN_PORT"));
metadataService.setBieeAdressInfo(bieeAdressInfo);
SASubjectArea[]subjectAreaS=metadataService.getSubjectAreas(bieeSessionId);
if(subjectAreaS!
=null&&subjectAreaS.length>0)
{
querList=newArrayList(subjectAreaS.length);
for(inti=0;i { SASubjectAreasubjectArea=subjectAreaS[i]; if(subjectArea! =null) { DataRecorddataSourceSubjectRec=newDataRecord(); dataSourceSubjectRec.setString("DATA_SOURCE_SUBJECT",subjectArea.getName()); dataSourceSubjectRec.setString("DATA_SOURCE_DISPLAY",subjectArea.getDisplayName()); dataSourceSubjectRec.setString("DATA_SOURCE_DESC",subjectArea.getDescription()); StringBufferformatSelectResultBf=newStringBuffer(); formatSelectResultBf.append(TextUtil.replace(dataSourceSubjectRec.getString("DATA_SOURCE_SUBJECT"),"\"","")).append("&="); formatSelectResultBf.append(TextUtil.replace(dataSourceSubjectRec.getString("DATA_SOURCE_DISPLAY"),"\"","")).append("&="); formatSelectResultBf.append(TextUtil.replace(dataSourceSubjectRec.getString("DATA_SOURCE_DESC"),"\"","")); if(formatSelectResultBf! =null) dataSourceSubjectRec.setString("DATA_SOURCE_FORMAT",formatSelectResultBf.toString()); querList.add(dataSourceSubjectRec); } } } 1.3获取表名接口 获取biee主题中的表名。 【接口位置】com.tds.biee.service.MetadataServiceImpl 【函数说明】 publicSASubjectAreagetSubjectArea(StringareaName,SASubjectAreaDetailslevel,StringsessionID) 参数名 类型[最大长度] 说明 areaName String biee主题代码 level SASubjectAreaDetails 指定所获取的主题域数据内容级别,如果只需要获取表,设置成SASubjectAreaDetails.IncludeTables sessionID String 会话id 返回 说明 SASubjectArea 返回包含所有表描述集合的biee主题对象 调用例子 SASubjectArearesulSASubjectArea=newSASubjectArea(); for(inti=0;i { SASubjectAreasubjectArea=subjectAreaS[i]; if(subjectArea! =null&&! TextUtil.isEmpty(subjectArea.getName()) &&dataSourceSubject.equals(TextUtil.replace(subjectArea.getName(),"\"",""))) { LogUtil.info("subjectArea.getName()>>>>"+subjectArea.getName()); resulSASubjectArea=metadataService.getSubjectArea(subjectAreaS[i].getName(), SASubjectAreaDetails.IncludeTables,bieeSessionId); break; } } LogUtil.info("resulSASubjectArea>>>>"+resulSASubjectArea); LogUtil.info("resulSASubjectArea.getTables()>>>>"+resulSASubjectArea.getTables()); if(resulSASubjectArea! =null&&resulSASubjectArea.getTables()! =null&&resulSASubjectArea.getTables().length>0) { SATable[]tables=resulSASubjectArea.getTables(); querList=newArrayList(tables.length); for(inti=0;i { SATabletable=tables[i]; if(table! =null&&table.getName()! =null) { //过滤,根据表代码 if(! TextUtil.isEmpty(tableCode)&&! TextUtil.isEmpty(table.getName())&&table.getName().indexOf(tableCode)<0) continue; //过滤,根据表名称 if(! TextUtil.isEmpty(tableName)&&! TextUtil.isEmpty(table.getDisplayName())&&table.getDisplayName().indexOf(tableName)<0) continue; DataRecordtableRec=newDataRecord(); tableRec.setString("TABLE_CODE",table.getName()); tableRec.setString("TABLE_NAME",table.getDisplayName()); 1.4获取表结构 根据指定的biee主题和表代码获取表结构。 【接口位置】com.tds.biee.service.MetadataServiceImpl 【函数说明】 publicSAColumndescribeColumn(StringsubjectAreaName,StringtableName,StringcolumnName,StringsessionID) 参数名 类型[最大长度] 说明 subjectAreaName String biee主题代码 tableName String biee表代码 columnName String biee表中的列名 sessionID String 会话id 返回 说明 SAColumn 返回列对象 调用例子 SAColumn[]columns=resultTable.getColumns(); if(columns==null||columns.length<1) returnnull; querList=newArrayList(columns.length); for(inti=0;i { if(columns[i]! =null&&! TextUtil.isEmpty(columns[i].getName())) { SAColumndescribeColumn=metadataService.describeColumn(resulSASubjectArea.getName(), resultTable.getName(),columns[i].getName(),bieeSessionId); if(describeColumn! =null) { DataRecordcolumnRec=newDataRecord(); columnRec.setString("COLUMN_CODE",describeColumn.getName()); columnRec.setString("COLUMN_NAME",describeColumn.getDisplayName()); columnRec.setString("COLUMN_TYPE",describeColumn.getDataType()); querList.add(columnRec); } } } 1.5查询biee原报表 远程调用biee已经配置的数据报表。 【接口位置】com.tds.biee.service.HtmlViewServiceImpl 【函数说明】 publicStringgetHtmlReport(Stringpath,StringsessionId,Stringbridge,Filterfilter) 参数名 类型[最大长度] 说明 path String Biee报表路径 sessionId String 会话id bridge String Biee桥链接,当biee服务器和web服务器不在同一台机械时才需设置 filter Filter 如果有查询条件,则需要生成指定格式的过滤器 返回 说明 String 返回biee远程链接报表路径 调用例子 StringreportHtml=""; StringtablePath=tqConfigQueryRec.getString("TABLE_PATH"); StringtableCode=tqConfigQueryRec.getString("TABLE_CODE"); StringinitType=rec.getString("initType");//如果为1表示第一次查询 if(! TextUtil.isEmpty(tablePath)) { Filterfilter=null; //为1默认查询 if(initType! =null&&"1".equals(initType)){ filter=getDefaultFilter((List)tqConfigQueryRec.getObject("tqConditionConfigList"),tableCode); } else{ filter=getPageFilter(rec,(List)tqConfigQueryRec.getObject("tqConditionConfigList"),tableCode); } HtmlViewServicehtmlViewService=(HtmlViewService)BasicFactory.getImpl(HtmlViewService.class); BieeAdressInfobieeAdressInfo=newBieeAdressInfo(tqConfigQueryRec.getString("BIEE_IP"),tqConfigQueryRec.getString("BIEE_LOGIN_PORT")); htmlViewService.setBieeAdressInfo(bieeAdressInfo); LogUtil.info("************如果桥名称不为空,则设置桥******************"+tqConfigQueryRec.getString("BRIDGE_PATH")); StringbridgePath=tqConfigQueryRec.getString("BRIDGE_PATH"); if(! TextUtil.isEmpty(bridgePath)) { //BIEE接入参数配置外键 bridgePath+="? CINFIG_BIEE_ID="+tqConfigQueryRec.getString("CINFIG_BIEE_ID"); } reportHtml=htmlViewService.getHtmlReport(tablePath,bieeSessionId,bridgePath,filter); } 1.6查询biee元数据 通过发送sql语句到biee执行查询,获取元数据。 【接口位置】com.tds.biee.service.ViewServiceImpl 【函数说明】 publicStringexecuteSQLQuery(Stringsql,intpagesize,StringsessionId) 参数名 类型[最大长度] 说明 sql String Sql语句 pagesize String 返回页数 sessionId String 会话id 返回 说明 String 返回XML格式的元数据 调用例子 StringreportXML=""; StringtableCode=tqConfigQueryRec.getString("TABLE_CODE"); StringinitType=rec.getString("initType");//如果为1表示第一次查询 if(! TextUtil.isEmpty(tableCode)) { StringconditionSql=""; //为1默认查询 if(initType! =null&&"1".equals(initType)){ conditionSql=getDefaultSqlCondition((List)tqConfigQueryRec.getObject("tqConditionConfigList"),tableCode); LogUtil.info(">>>>>>>生成where>>>>>>>>"+conditionSql); } else{ conditionSql=getSqlCondition(rec,(List)tqConfigQueryRec.getObject("tqConditionConfigList"),tableCode); LogUtil.info(">>>>>>>生成where>>>>>>>>"+conditionSql); } ViewServiceviewService=(ViewService)BasicFactory.getImpl(ViewService.class); BieeAdressInfobieeAdressInfo=newBieeAdressInfo(tqConfigQueryRec.getString("BIEE_IP"),tqConfigQueryRec.getString("BIEE_LOGIN_PORT")); viewService.setBieeAdressInfo(bieeAdressInfo); LogUtil.info(">>>>>>>>>>>>>>>>>makeQuerySQL开始查询>>>>>>>>>>>>>>>>******>>>>>>>>"); StringquerySql=makeQuerySQL(rec,tqConfigQueryRec); if(! TextUtil.isEmpty(querySql)&&! TextUtil.isEmpty(conditionSql)) querySql+=conditionSql; LogUtil.info(">>>>>>>生成bieesqlmakeQuerySQL>>>>>>>>"+querySql); reportXML=viewService.executeSQLQuery(querySql,1000,bieeSessionId);//只返回100页 } 1.7翻页接口 翻页接口,在查询biee元数据时使用。 【接口位置】com.siebel.analytics.web.XmlViewServiceSoapProxy 【函数说明】 publiccom.siebel.analytics.web.QueryResultsfetchNext(java.lang.StringqueryID,java.lang.StringsessionID) 参数名 类型[最大长度] 说明 queryID String 在执行查询biee元数据时设置的queryID sessionID String 会话id 返回 说明 QueryResults 返回元数据对象 调用例子 Queryquery=this.queryService.get(queryConfigId); BieeConfigbieeConfig=bieeConfigService.get(query.getBieeConfigId()); BieeAdressInfobieeAdressInfo=newBieeAdressInfo(); bieeAdressInfo.setBieeIp(bieeConfig.getBieeIp()); bieeAdressInfo.setBieePort(bieeConfig.getPort()); XmlViewServiceSoapProxyxmlClien
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- BIEE 常用 SOAP 接口 说明