目前大数据分析很流行,在SAP也类似的统计需求,目前项目也有在使用统计图形,于是作了一些总结
相关资料可以查看BC-FES-GRA介绍,其主要通过两种方式来实现图形输出类和函数,应该属于早期的技术,
相关类通过CL_CU*,应用比较复杂,难懂,还有就是CL_GUI_GP*相关类,这些类应用就比较简单。这些类可以类似控件的方式整合到SAP系统程序,SAP系统也给一些基本实例
相关函数:GFW_* 开头目前网络有其相关的基本实例。
以GRAPH开头的函数,应用比较简单,但是交互式就比较复杂了,而且功能类似调用SAP GUI 外控件,所以整个画面与SAP 常规的容器控件不一样,无法整合ABAP的屏幕上。
以上技术应该是SAP早期的功能。
这里又分两种模式GUI: CL_GUI_CHART_ENGINE 和IGS Chart:CL_IGS_*
使用IGS需要进行一些配置才能使用,这个与ENGINE的区别就是IGS的解释通过RFC的模式获取数据,这样就可以在后台应用,而IGS也被整合到BSP和WDA中,这个后面介绍。
目前SAP给出Chart Engine的资料比较少,在SAP系统也有类似的DEMO, Package SPIG
个人认为这个技术对图形统计色彩比上面两种好。
虽然资料比较,但是也可以通过CL_IGS_CHART_ENGINE_WIN 获取到Customizing相关资料,而有条件的人就可以通过SAP提供的工具ChartDesigner获取信息。最近比较有成就是对ChartDesigner中所有类型Customizing在SAP中进行封装了。通过对Customizing的分析,发现虽然Engine没有提供混合类型的统计,但是可以通过改写Customizing中Series的类型来达到。
不过在应用发现一些不知道是不是BUG的问题,比如:同样的数据,如果Label中有英文和中文,那么数据就会丢失,都是英文和中文就不会出现问题。还有就是进行label显示的时候,会修丢部分信息,而通过Value显示就不会(这个问题待解决)
通过修改Series的信息,可以实现混合模型
因为BSP的技术比较开放可以与Xcelsius, FLEX, FusionCharts想结合,所以这边只介绍项目上应用一些注意点。
A. BSP Extensions for SAP Graphics <graphics> 这个功能其实就是通过IGS的模式来实现
B. 目前项目使用比较成熟的控件是:FusionCharts 该控件目前提供setDataXML和setDataURL的功能
而setDataURL的好处就是通过http的方式获取xml文档,这样就可以实现AJAX的功能,但是这个也缺陷就是中文会有乱码,解决这个方法目前有两种方式:
其中一种就是设置characterset
response->set_header_field(
name = 'ContentType'
value = 'text/xml; characterset=utf-8').
另外一种就是通过BOM的转换
C.当前通过FLEX或BO开发控件也可以集成到BSP,可以更复杂和好看的图形,不过目前数据交换我只显示通过HTTP的方式来进行的。
因为WDA的封装比较好,其架构就受到现在,WDA目前提供以下几种的方式来实现
A:通过NET UI Business Graphs(其实也是通过IGS的方式来实现)
B:通过IFrame(这个功能可以类似BSP模式)
C:通过Flash Island 和 HTML Island,因为目前系统比较旧,没有这两个控件,所以这两种模式还未实现过。不过通过Flash Island可以调用Flex等应用程序,而HTML Island基本把WDA的架构给破坏了,用于实现HTML5等功能。
通过HTML VIEWER 控件可以访问网页,访问非SAP技术的网页这边就不介绍了,这边介绍HTML VIEWER访问BSP和WDA的时候注意点
需要注意就是要激活SSO的模式,这样就可以避免两次登陆问题
CALL METHOD html_control->enable_sapsso
EXPORTING
enabled = 'X'
EXCEPTIONS
cntl_error = 1
OTHERS = 2.
通过HTML VIEWER调用BSP和WDA的缺点就是:对一个应用需要启动两个DIALOG
在这里有两种方式来实现
A:通过DOI直接创建Excel.Chart图形类型,然后直接传递数据
B:创建Excel,通过宏的方式或OLE命令的模式来显示Chart
可以使用Flash控件的方式来SWF文件,公司同事写过类似事例,缺点就是需要把数据的XML下载的本地,同时无法进行交互。
还有就是目前SAP BO 提供了图形显示,而最近的HANA中R语言好像也提供统计图形,因为还未接触HANA,无法获取实例
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/203545/viewspace-1404520/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/203545/viewspace-1404520/