1.DeskTop
可以自由编写SQL
1.1 SQL本身的质量
1.2 连接的配置
1.3 换环境时,连接需要重新配置,连接方式选择共享可能会省不少事情。
point1:自己本地的TNS的服务名必须与BO服务器访问的TNS的服务名(就是根据sevice_name自己定义的那个)一致,否则TNS相关的错。DespTop用的是本地的TNS,而发布到Web Intelligence用的是BO服务器的TNS,使用的数据库客户端软件不同。
point2:连接或 SQL 语句错误:(DA0005): [Exception: DBD, ORA-01017: invalid username/password; logon denied State: N/A] 需要用来刷新此文档的连接不可用。(DA0004): [] 尚未成功刷新以下数据提供者:详细。(DMA0007): [] (Error: INF )
解决方案:新创建链接或者可行
Point3:关于查询数据与显示数据的问题
查询数据的默认显示方式就是其别名,显示顺序与SQL中罗列的字段一致.在展示层拉动字段顺序,或者修改字段名称并保存时,将相对独立的存储起来.这样自由编写SQL的适用范围将大大增强.
自定义SQL的连接与分析型报表的语义层的连接有一定的相似性。
2.需要配置BO的TNS
BO服务器访问的数据库需要在BO服务器所在的计算机的数据库客户端服务来配置。
3.语义层
创建模型
语义层的连接中配置的数据库,指的是语义层创建时那台客户端上的TNS中定义的名字,这个名字将保存为该语义层的参数,作为参数保存在服务器上。当其它人要访问该语义层时,创建数据库连接时,必须TNS中必须包含有同样的配置才能使用该语义层,否则报数据库连接类的数据。
常见问题:
这个问题说明该连接的类型设置不能为“共享”,而应该设置为“保密”。这个错误说明BO服务器说指向的数据库地址发生了变化。
4.Web intelligence
4.1总述:
基于语义层,创建报表
分两个大模块:编辑查询,编辑报表
编辑查询定义了数据源,即取到了什么数据。说白了就是一条SQL语句.
语义层在这里的作用是:a.有助于编写SQL;b.建立对应关系,即建立SQL字段与模型与展示层的对应关系.需要注意的是:编辑查询拖入的字段的个数,顺序以及数据类型都需要与SQL一一对应.
如果自己编写SQL时发觉写入的字段比拖过来的要多,比如金额,那么你可以在语义层复制几个金额字段,用于计算.如果SQL中select的字段少于拖入的字段,说明你拖入的字段有些应该放在条件里,而不是select区.而如果字段类型不一致时,我的办法是把哪些没有用大的同类型的字段放入.因为我的理解是:编辑查询拖入的字段仅仅是为SQL查询出来的结果做一个存放地.以便很方便的使用SQL查询出来的结果集.
4.2在展示层接收编辑查询处传递过来的参数
="级次:"+If(UserResponse([QUERY 1];"input1:")="10";"a";If(UserResponse([QUERY 1];"input2:")="21";"B))
="报告期:"+If(Pos(UserResponse ([Query 1];"输入开始日期:");" ")<2;UserResponse ([Query 1];"输入开始日期:");Substr(UserResponse ([Query 1];"输入开始日期:");0;Pos(UserResponse ([Query 1];"输入开始日期:");" ")-1))+"至"+If(Pos(UserResponse ([Query 1];"输入结束日期:");" ")<2;UserResponse ([Query 1];"输入结束日期:");Substr(UserResponse ([Query 1];"输入结束日期:");0;Pos(UserResponse ([Query 1];"输入结束日期:");" ")-1))
在
报表设计下,f(x)可以看到公式,点击进入公式编辑器.可以查询全部的函数,运算符.其中带有语法模型.
4.3固定报表
通过写存储过程
4.4交叉表
4.4.1行列写死的交叉表
存储过程
只能一个格一个格的将公式填写在上面
4.4.2动态生成列的交叉表
select出来的那个字段拖到值区,行拖入相应的字段,列拖入相应的字段.
4.5交叉表
一个查询对应一个结果集.查询条件可以通过查询名引用.
5.导入导出
需要如果BO服务器所在计算机的IP[端口号]或者计算机名的映射[host文件]错误处理总结
[IBM][CLI Driver] SQL1013N 找不到数据库别名或数据库名 "TJTAXDW"。 SQLSTATE=42705
:-1013
BO5.2中,一般的连接错误,经常是由于本地的TNS没有能够连接到服务器上。直接使用SQL的查询,一个查询对应自己的连接(当然这些连接可以共享)。
对于使用了语义层的报表,打开语义层后,没有加载字段,只是列出表名,主要是:文件->参数->定义->连接(编辑)->登录->数据库:该数据库实际上就是你的TNS里定义的连接的名称(注意:如果本地安装了oracle服务器,它会访问Oracle服务器端的TNS配置).语义层是大家共享的,其连接配置最好别改动,所以就要求本地的TNS中定义的配置的名称能与服务器端(BO服务器访问的数据库的TNS)的一致.
BO5.2使用方法。
取自—公司文件—相应的菜单取得相应的报表
BO的启动
BO服务的安装菜单下,中央配置管理器。
关于BO的Bug。
选颜色时,明明点击了颜色
导入向导:
服务器的IP,可以不设置密码
分享到:
相关推荐
### Business Object 的使用详解 #### 一、Business Objects 概述与 Universe 基础 **1.1 概述** Business Objects (BO) 是一套强大的商务智能 (BI) 解决方案,它提供了多种工具和服务,帮助企业用户进行数据查询...
《Business Object Universe Designer 指南》是一份详尽的技术文档,主要面向SAP BO(Business Objects)系统的开发者和管理员,旨在帮助他们更好地理解和掌握如何使用Designer工具来创建、管理和优化Universe(即...
七、总结 BusinessObjects Enterprise XI 3.1 是一款功能强大、高度可定制的商业智能平台,特别适合大型企业和复杂数据环境。通过合理规划部署、精细配置系统及充分利用其服务组件,企业可以实现数据驱动决策,提升...
- **易用性**:提供直观的用户界面和自助服务功能,降低培训成本和使用门槛。 - **灵活性**:支持多种数据源和格式,能够处理结构化和非结构化数据。 - **可扩展性**:能够随着企业需求的增长而扩展,支持大量用户和...
1. **模式的识别**:通过观察和分析现实世界中的业务流程和组织结构等,发现其中的共性问题,并总结出相应的模式。 2. **模式的应用**:将识别到的模式应用于软件设计中,以此来指导系统的分析和设计工作。 #### 四...
BusinessInterface businessObject = new BusinessObject(); BusinessInterface proxy = (BusinessInterface) Proxy.newProxyInstance( BusinessObject.class.getClassLoader(), new Class[]{BusinessInterface....
4. **概念模型与业务流程重组(Conceptual Models and Business Process Reengineering)** 5. **模式与框架(Patterns and Frameworks)** 6. **如何使用这些模式(Using the Patterns)** 7. **责任归属模式...
1. **业务组件选择**:`Import Object`只能定义在业务对象(Business Object, BO)的主业务组件上。 2. **适用范围**:`Import Object`仅在列表应用工具(list applet)中可用。 3. **子业务组件限制**:不能为BO中的子...
本书是面向对象软件工程领域内的一本经典之作,作者Martin Fowler以其深厚的理论功底和丰富的实践经验,为我们揭示了如何在面向对象系统设计中有效地使用模式来构建可重用的对象模型。本书不仅仅是一本关于Java编程...
- 统一建模语言(UML)参考资料经Object Management Group, Inc.(OMG)许可后在本书中使用。 - 业务分析术语表摘自《政府商务办公室术语表/缩写词表》,版权所有归英国政府商务办公室所有,并获得HMSO和政府商务...
###### 2.2 业务规则 (Business Rules) - **定义**:用于描述组织的业务逻辑和约束条件的规则集合。 - **作用**:确保软件的行为符合预期的业务需求。 - **示例**:如“所有订单必须在24小时内处理”。 ###### 2.3 ...
文档中提到的OMG(Object Management Group)是企业建模领域的权威组织,其发布的“企业建模RFP”(Request for Proposal)是企业建模领域的重要里程碑。自2003年起,OMG围绕企业建模发起了多个提案,包括业务规则...
现在,当我们通过代理对象调用`processBusiness()`方法时,实际上会执行`LoggingInvocationHandler`中的`invoke()`方法,它会在调用实际业务方法前后插入日志记录,而无需修改`BusinessObject`的代码。 总结一下,...
然后,创建一个实现了该接口的业务对象`BusinessObject`,它包含了业务逻辑和日志记录代码: ```java public class BusinessObject implements BusinessInterface { private Logger logger = Logger.getLogger...
总结来说,Business Object 语义层的创建涉及数据源连接、表关系建立、维度和指标定义、层次和钻取路径设置,以及最终的保存和导出。这个过程需要对业务需求有深刻理解,同时也需要熟悉数据库结构和Business Objects...