开始学习BO 这个 这个 记录下吧

开始学习BO 这个 这个 记录下吧

 

个人理解:

BOE平台,提供接口。

ECC原来叫R/3啊。

SAP/BW与BO的接口:SAP Solution Kit

BI 7.0时 = BW(可存储数据的);SAP收购BO后 BI = BW + BO[无存储数据]

水晶报表内含编程语言

 

Web Intelligence

1. 一种工具

2.针对业务对象

3.本地和web访问方式

4.R/2之前,必须通过infoView访问使用

5.客户端和web形式

 

Web Intelligence Rich Client胖客户端,通过web service可对本地文件进行访问

 

Webi 创建的WebI报表后缀是".wid

 

WebI自带的语义层是Semantic layer

 

"MES等实时数据

 

BO语义层的组成:对象、类、预定义查询器、Universe

 

对象:维度[蓝色]、度量[长方形]、明细[菱形]

 

WebI 与BO的关系:

1.BS形式,必须用InfoView[BOE门户]  =〉(web应用程序)

2.webi可用来管理报表[WID],用户通过infoview来访问共享文档和报表

 

同用户共享的方式:

1.InfoView

2.Excel/PDF/...

3..wid文件共享

 

webi文档=〉BS

 

每个业务对象对应的是数据库表上的字段或字段的加工。

 

webi自带的语义层数据库是access数据库

 

webi对象返回的数据是字符串、布尔、日期

 

webi过滤器:预定义[语义层添加,可做强制限制]和客户化[报表手工添加]

过滤器的组成:对象、限制条件、操作值

客户化:单值、提示型[wildcards通配符:'_'单值;'%'无限制]、复杂型[只有and和or的关系]

参数型过滤器是动态的,不能为null或no-null

 

 UniverserDesigner是cs模式语义层,是用来连接数据库的

 

webi允许访问分析的数据库是关系型数据库[RDMBS]和OLAP

 

webI和cr区别:

对象层次:webi面向对象业务,cr面向技术;

               webi只支持柱、饼、雷达、折线、面积,CR支持18种之多;

               webi有钻取分析,CR无;

 

 

多维数据分析Voyager:

只支持多维数据库,不支持关系型数据库。

不需要本地安装。Web的。类似于bw query.

支持多维钻、切等。

 

只支持:图表、交叉表.

 

 

BI Widgets插件:可将常用的报表直接放在桌面显示。

数据安全性:取决于后台。Bw数据安全性控制,bo直接继承。

只支持:webintell和水晶易表

 

 

报表在本地开发完成,通过boe发布。Boe也可做成小型的文档管理服务器。

管理工作:cmc(纯web式的应用);ccm(客户端管理工作:指定数据库,启动停止);迁移测试机到生产机(报表、语义层等)。

Infoview展现。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果你想将程序中的小车形状改为长方形,可以使用`matplotlib.patches.Rectangle`对象来代替之前的小车点。 以下是修改后的代码,将小车形状更改为长方形: ```python import numpy as np import matplotlib.pyplot as plt from matplotlib.patches import Rectangle from scipy.special import comb def bezier_curve(points, t): n = len(points) - 1 curve = np.zeros(2) for i in range(n+1): curve += comb(n, i) * (1-t)**(n-i) * t**i * points[i] return curve def bezier_tangent(points, t): n = len(points) - 1 tangent = np.zeros(2) for i in range(n): tangent += n * (points[i+1] - points[i]) * comb(n-1, i) * (1-t)**(n-i-1) * t**i return tangent / np.linalg.norm(tangent) # 控制点坐标,可以根据需要进行修改 control_points = np.array([[0, 0], [2, 4], [6, 5], [8, 2]]) # 小车初始位置和朝向 car_pos = control_points[0] car_dir = bezier_tangent(control_points, 0) # 小车形状 car_width = 0.5 car_length = 1.0 # 模拟时间和步长 t = 0 dt = 0.01 total_time = 5 # 总运行时间 fig, ax = plt.subplots() while t <= total_time: # 计算贝塞尔曲线上的点和切线方向 curve_pos = bezier_curve(control_points, t) curve_dir = bezier_tangent(control_points, t) # 更新小车位置和朝向 car_pos += car_dir * dt car_dir += (curve_dir - car_dir) * dt car_dir /= np.linalg.norm(car_dir) # 绘制贝塞尔曲线和小车 t_values = np.linspace(0, 1, 100) curve_points = np.array([bezier_curve(control_points, tv) for tv in t_values]) ax.plot(curve_points[:, 0], curve_points[:, 1], 'r-') ax.plot(control_points[:, 0], control_points[:, 1], 'bo-') # 绘制小车 car = Rectangle((car_pos[0] - car_width/2, car_pos[1] - car_length/2), car_width, car_length, angle=np.degrees(np.arctan2(car_dir[1], car_dir[0]))) ax.add_patch(car) ax.axis('equal') plt.show(block=False) plt.pause(0.01) ax.cla() t += dt ``` 在修改后的代码中,我们使用`matplotlib.patches.Rectangle`对象来绘制小车的长方形形状。通过指定长方形的中心位置、宽度、长度和角度,我们可以在每个时间步骤中更新小车的位置和朝向。 希望这次的回答能够满足你的需求。如果还有其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值