目录
通常来说SAP S/4HANA 和 Fiori 应用程序,Fiori前端可以支持一般的下载,但是数据量过大的时候,UI加载时间过长,对程序性能有较大的影响。
一般来说几千几万条数据如果直接从UI下载的话会花费半个多小时,甚至更多的事件,如果通过后台以XTRING的形式回传给前端的话只需要1-2秒就可以完成,大大提升了程序效率,这要通过get_stream来完成,不在本博客中介绍,后续将会补充。此外还可以把数据的xstring形式压缩存到服务器上,前端直接调服务器的地址下载,接下来将接收此方法。
类:IF_HTTP_RESPONSE ,CL_ABAP_CHAR_UTILITIES
FUNCTION: SOTR_SERV_TABLE_TO_STRING 透明表转STRING
SCMS_STRING_TO_XSTRING STRING转XSTRING
一、Fiori前台
读取后台Excel生成的临时URL地址 ,嵌入HTML中打开
二、S/4HANA后台
2.1创建后台透明表
此表用来保存压缩后数据的地址,将来fiori会通过调用entity来获取地址
2.2创建后台ODATA服务
参照透明表建立entity
重定义ZDOWNEXCELSET_GET_ENTITY
DATA: lt_keys TYPE /iwbep/t_mgw_tech_pairs,
ls_key TYPE /iwbep/s_mgw_tech_pair.
lt_keys = io_tech_request_context->get_keys( ).
DATA: LV_ENTITY TYPE ZSNRCONFIG01-ENTITY ,
LV_UNAME TYPE ZSNRC