基于Redhat Linux安装SAP BI4.2 SP5

网络环境及硬件准备

1.联系网络管理员将域名指向BI所在的IP;

2.联系网络管理员开放BI所在IP的下列端口:

80
8080
8443
8005
6400
6410
6405
2638
5801
5901
6001

3.硬件准备

建议内存最小32GB,CPU最少12核,硬盘1TB。

下载安装文件

1.Redhat enterprise 7.3;

2.SAP BI4.2 SP5 for Linux;

3.MySQL 5.7;

 

安装Linux操作系统

1.最小化安装;

2.安装分区分三个区,boot分区2GB,SWAP分区32GB,根分区使用其他所有空间;

3.安装过程中要设置主机名、网络(自动启动)、时区(必须为UTC+8)等;

4.安装完后卸载默认的yum及rhn管理组件;

rpm -qa |grep yum

卸载所有列出的包;
rpm -qa|grep yum|xargs rpm -e –nodeps

rpm -qa |grep rhn

卸载所有列出的包;

rpm -qa|grep rhn|xargs rpm -e –nodeps

yum list all | grep subscription

卸载所有列出的包;

5.配置centos的更新yum源(略)

yum clean all

yum makecache

yum -y update

yum -y install epel-release
yum -y install htop

6.编辑/etc/hosts文件,设置主机名、域名绑定关系;

7.关闭防火墙(同时关闭selinux和iptables):

setenforce 0

编辑/etc/selinux/config,设置SELINUX=disabled

service iptables stop

chkconfig iptables off

8.修改ulimit值

vim /etc/security/limits.d/90-nproc.conf
* soft nproc 10240
* hard nproc 16384
* soft nofile 10240
* hard nofile 65536
* soft stack 10240

9.安装SAP BI4.2需要使用的包

yum install install libstdc++.i686
yum install install libstdc++.x86_64
yum install compat-libstdc++-33.i686
yum install compat-libstdc++-33.x86_64
yum install glibc.i686
yum install glibc.x86_64
yum install libX11.i686
yum install libX11.x86_64
yum install libXext.i686
yum install libXext.x86_64
yum install expat.i686
yum install expat.x86_64
yum install libgcc.i686
yum install libgcc.x86_64
yum install libXcursor.i686
yum install libXcursor.x86_64
yum install libXrender.i686
yum install libXrender.x86_64
yum install libXfixes.i686
yum install libXfixes.x86_64
yum install libxcb.i686
yum install libxcb.x86_64
yum install libXau.i686
yum install libXau.x86_64

10.重启系统

reboot

安装MySQL

注意MySQL编码必须是UTF8或者UTF8MB4.

创建两个数据库:BI_AUDIT和BI_CMS;

准备BI安装包

1.将下载的安装包解压后再压缩成zip文件,然后上传到linux。例如放在/sapteamn

cd /sapteamn

unzip abc.zip

cd /

chmod -R 777 /sapteam

2.配置ODBC

<BIP_INSTALL_DIR>/sap_bobj/enterprise_xi40/odbc.ini

例如:

[ODBC Data Sources]
BI4_CMS_DSN_1362069282=SQLAnywhere 16.0
[BI4_CMS_DSN_1362069282]
UID=dba
PWD=mypassword
DatabaseName=BI4_CMS
ServerName=BI4_1362069282
Host=192.0.2.0:2638
Driver=/opt/sqlanywhere16/lib64/libdbodbc16.so

安装BI

1.到解压文件目录下,执行安装: ./setup.sh

The installation log file is saved to <BIP_INSTALL_DIR>/InstallData/logs/<DATEandTIME>/
setupengine.log.

2.确认安装目录

The use of Unicode characters in the destination folder is not supported.
Ensure that the destination folder name does not contain spaces.
Ensure that the destination folder is not the same folder in which the installation program has been extracted (do not install to the current working directory when running the installation program from the current working directory)

3.语言包选择:English、Chinese和Traditional Chinese

4.安装方式选择

5.注意SVN一定要安装。

相关Notes

1771995 – Incorrect number of hierarchy levels in Design Time
1750788 – BICS metadata service enhancement
1767351 – Missing metadata of characteristics in the fix filter
1776999 – Incorrect hierarchy sorting
1777544 – Metadata missing for node type attributes
1778347 – Attributes for node types are not read
1770434 – Dynamic filter of compound char. is incorrect
1762156 – Nodes in fixed filter in Design Time are incorrect
1776688 – Too many hierarchy levels are read
1798297 – Correction for issue found on Samsung queries
1806813 – Text of characteristic values is not read
1809517 – Correction for invalid variable order when retrieving the list of variables through the design time services
1811124 – This note fixes the sorting of the of drill down characteristics returned by the design-time API so that it matches the runtime sorting
1812142 – This note fixes the sorting of the hierarchies returned by the design-time API so that it matches the runtime sorting
1817482 – This note adds the feature for the Design Time API to choose whether members should be read initially or not. By default, there are not read; this provides a performance enhancement for SL.

To configure the odbc.ini file for DataDirect connections

[pdfjs-viewer url=”https%3A%2F%2Fwww.gavindong.com%2Fwp-content%2Fuploads%2F2017%2F12%2Fsbo42sp2_bip_inst_unix_en.pdf” viewer_width=100% viewer_height=500px fullscreen=true download=false print=true]

SAP BO-Error: “Cannot connect to the OLAP source”

修改BW系统中的用户后,用户使用BO提示下面的错误:

Error: “Cannot connect to the OLAP source”。

原因:用于BO连接的用户权限或者密码不对,或者修改了BW端的用户信息但没有更新BO端的配置信息。

需注意:

1.BW端用于给BO连接的用户需要以下权限才行

2.BO端的CMC配置中需要设置两个地方

(1)CMC ->管理 -> 身份验证 -> SAP

(2)CMC -> OALP连接 -> CommonConnections -> 对应的系统 -> 左上角点击编辑图标(找了好久)

 

SAP BO笔记

人为运行BW处理链:RSPC_API_CHAIN_START


报表头如果按月份、年度展开的话,必须是数字或者日期类型,不能是文本类型且不能写成1+”月”这样的形式,否则报表会展示成“10月|11月|12月|1月|2月……9月”这样的格式。

建议:=ToNumber([日历年/月].[日历年/月 – 日历月 (键值)])


注意,如果要求年度和,使用NoFilter公式,例如:=NoFilter(Sum([当期销售金额]))+[当期折扣]


ECC中标准表字段与BW中信息对象的对应关系表:
在BW系统中,有个table,可以直接查ECC中标准表字段与BW中信息对象的对应关系,TABLE:RSOSFIELDMAP。


如何WEBI标题上放入用户输入日期:
=Left(UserResponse(“输入日期”);10)+”标题”


左连接 右连接 SQL怎么写:
select* from AA INNER JOIN BB ON AA.A_ID=BB.B_ID (公共部分)
select* from AA LEFT JOIN BB ON AA.A_ID=BB.B_ID (左连接, A为基础)
select* from AA RIGHT JOIN BB ON AA.A_ID=BB.B_ID(右连接,B为基础)
select* from BB full JOIN AA ON AA.A_ID=BB.B_ID  (全连结)


本周(自然周) weibi上如何实现:
01 输入日期 = CurrentDate()
02 上月第一天 = If ((ToNumber(FormatDate([01 输入日期];”MM”))-1)<=9) Then (ToDate(FormatDate([01 输入日期];”yyyy”)+”0″+(ToNumber(FormatDate([01 输入日期];”MM”))-1)+”01″;”yyyyMMdd”)) Else (ToDate(FormatDate([01 输入日期];”yyyy”)+(ToNumber(FormatDate([01 输入日期];”MM”))-1)+”01″;”yyyyMMdd”))
03 上月最后一天 = LastDayOfMonth([02 上月第一天])
04 系统日期-1 = If DayNumberOfMonth([01 输入日期]) = 1 Then([03 上月最后一天]) Else ToDate(FormatDate([01 输入日期];”yyyy”)+”-“+FormatDate([01 输入日期];”MM”)+”-“+(DayNumberOfMonth([01 输入日期]) -1);”yyyy-MM-dd”)
05 本月有几天 = DayNumberOfMonth([04 系统日期-1])
06 跨月的系统日期-8 = ToNumber(FormatDate(LastDayOfMonth([03 上月最后一天]);”dd”)) – 6 + [05 本月有几天]
07 不跨月的系统日期-8 =[05 本月有几天]-6
08 系统日期-1 带格式 =FormatDate([04 系统日期-1];”MM”)+”月”+ FormatDate([04 系统日期-1];”dd”)+”日”
09 系统日期-8带格式(跨月) =FormatDate([02 上月第一天];”MM”)+”月”+ [06 跨月的系统日期-8]+”日”
10 系统日期-8 带格式(不跨月) =FormatDate([04 系统日期-1];”MM”)+”月”+ [07 不跨月的系统日期-8]+”日”
11 本周 = (If [05 本月有几天]<7 Then [09 系统日期-8带格式(跨月)] Else [10 系统日期-8 带格式(不跨月)]) + “–” + [08 系统日期-1 带格式]


在WEBI中将空变为零?
=If [当前库存] = 0 Then 0 ElseIf [当前库存]+”” = “” Then 0 Else [当前库存]


BO根据用户选择的字符串”开始年月”和”结束年月”获得相关日期信息的函数:
开始年 =Substr(UserResponse(“开始年月”);5;4)
开始日期 =ToDate(Concatenation(“01/”+[开始月];”/”+[开始年]);”dd/MM/yyyy”)
开始月
=If(Substr(UserResponse(“开始年月”);1;3)=”JAN”) Then “01”
ElseIf(Substr(UserResponse(“开始年月”);1;3)=”FEB”) Then “02”
ElseIf(Substr(UserResponse(“开始年月”);1;3)=”MAR”) Then “03”
ElseIf(Substr(UserResponse(“开始年月”);1;3)=”APR”) Then “04”
ElseIf(Substr(UserResponse(“开始年月”);1;3)=”MAY”) Then “05”
ElseIf(Substr(UserResponse(“开始年月”);1;3)=”JUN”) Then “06”
ElseIf(Substr(UserResponse(“开始年月”);1;3)=”JUL”) Then “07”
ElseIf(Substr(UserResponse(“开始年月”);1;3)=”AUG”) Then “08”
ElseIf(Substr(UserResponse(“开始年月”);1;3)=”SEP”) Then “09”
ElseIf(Substr(UserResponse(“开始年月”);1;3)=”OCT”) Then “10”
ElseIf(Substr(UserResponse(“开始年月”);1;3)=”NOV”) Then “11”
ElseIf(Substr(UserResponse(“开始年月”);1;3)=”DEC”) Then “12”
结束年
=Substr(UserResponse(“结束年月”);5;4)
结束日期
=ToDate(Concatenation(“01/”+[结束月];”/”+[结束年]);”dd/MM/yyyy”)
结束月
=If(Substr(UserResponse(“结束年月”);1;3)=”JAN”) Then “01”
ElseIf(Substr(UserResponse(“结束年月”);1;3)=”FEB”) Then “02”
ElseIf(Substr(UserResponse(“结束年月”);1;3)=”MAR”) Then “03”
ElseIf(Substr(UserResponse(“结束年月”);1;3)=”APR”) Then “04”
ElseIf(Substr(UserResponse(“结束年月”);1;3)=”MAY”) Then “05”
ElseIf(Substr(UserResponse(“结束年月”);1;3)=”JUN”) Then “06”
ElseIf(Substr(UserResponse(“结束年月”);1;3)=”JUL”) Then “07”
ElseIf(Substr(UserResponse(“结束年月”);1;3)=”AUG”) Then “08”
ElseIf(Substr(UserResponse(“结束年月”);1;3)=”SEP”) Then “09”
ElseIf(Substr(UserResponse(“结束年月”);1;3)=”OCT”) Then “10”
ElseIf(Substr(UserResponse(“结束年月”);1;3)=”NOV”) Then “11”
ElseIf(Substr(UserResponse(“结束年月”);1;3)=”DEC”) Then “12”