网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

怎么自行给指定的SAPOData服务添加自定义日志记录功能

这篇文章给大家分享的是有关怎么自行给指定的SAP OData服务添加自定义日志记录功能的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

10年积累的网站设计、网站制作经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先做网站后付款的网站建设流程,更有新密免费网站建设让你可以放心的选择与我们合作。

有的时候,SAP标准的OData实现或者相关的工具没有提供我们想记录的日志功能,此时可以利用SAP系统强大的扩展特性,进行自定义日志功能的二次开发。

以SAP CRM Fiori应用“My Opportunity”为例:我们首先在其OData服务CRM_OPPORTUNITY的实现类CL_CRM_OPPORTUNITY_IMPL的构造函数方法CONSTRUCTOR里设置一个值为GET_BADI的动态断点,这样调试模式下,ABAP调试器会自动停在所有出现了GET BADI关键字调用的地方。

怎么自行给指定的SAP OData服务添加自定义日志记录功能

通过这个方法,我们很快找到了一个能够放置我们自定义日记记录逻辑的地方:就是代码85行的BAdI定义,CRM_OPPORTUNITY_ODATA_DB. 在SAP标准OData服务实现的读取操作里,每次从数据库调用One Order API读取Opportunity数据后,都要执行这个BAdI.

怎么自行给指定的SAP OData服务添加自定义日志记录功能

这是该BAdI执行的调用栈:

怎么自行给指定的SAP OData服务添加自定义日志记录功能

事务码SE18,根据我们刚刚找到的BAdI定义创建一个增强实现:

怎么自行给指定的SAP OData服务添加自定义日志记录功能怎么自行给指定的SAP OData服务添加自定义日志记录功能怎么自行给指定的SAP OData服务添加自定义日志记录功能

这个增强实现类ZCL_JERRY_ODATA_TRACE里,现在可以编写我们的日志记录逻辑了。

首先创建一个数据库表,用于存放我们的日志记录。为简单起见,我仅仅记录了请求的用户名,请求日期和时间,大家可以根据自己实际需求添加相关字段。

怎么自行给指定的SAP OData服务添加自定义日志记录功能

增强代码也很简单:

DATA(ls_log) = VALUE zorder_guid( user_name = sy-uname
      req_date = sy-datum req_time = sy-timlo ).
    CALL FUNCTION 'SYSTEM_UUID_CREATE'
      IMPORTING
        uuid = ls_log-guid.
    INSERT zorder_guid FROM ls_log.

怎么自行给指定的SAP OData服务添加自定义日志记录功能

激活这个增强后,到Fiori UI上随便做几个点击操作:

怎么自行给指定的SAP OData服务添加自定义日志记录功能

回到我们自定义的日志记录表里,发现填充了一些记录了,这个自定义日志记录功能就实现了。

怎么自行给指定的SAP OData服务添加自定义日志记录功能

感谢各位的阅读!关于“怎么自行给指定的SAP OData服务添加自定义日志记录功能”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!


网页名称:怎么自行给指定的SAPOData服务添加自定义日志记录功能
文章来源:http://bjjierui.cn/article/ghosgi.html

其他资讯