重构老系统遗留代码的一些方法学习笔记
正交性(orthogonality)表示某种不相依赖性或者解耦性。如果两个或者更多事物种的一个发生变化,不会影响其他事物。这些事物就是正交的。在设计良好的系统中,数据库代码与用户界面是正交的:你可以改变界面,而不影响数据库,或者更换数据库,而不用改变界面。如果修改代码中的现存行为只需要到一个地方修改,即拥有正交性。开放/闭合 原则(OCP,Open Closed Principle)对扩展开放,意
SAP Hybris的Master Tenant和Netweaver的System Client
# Master tenant in Hybris根据http://help.hybris.com的介绍,每个Hybris server只有1个master tenant,该tenant自动创建且不能删除。tenant信息在admin console里查看:所有其他tenant(成为slave tenant)的technical setting,也就是JVM的setting都默认继承自master
SAP Hybris和Netweaver的集群模式以及集群模式下工作需要解决的问题
Hybris支持cluster mode的部署,不同节点间通过局域网使用UDP进行通信。而SAP Netweaver经典的3层layer里就提到Application layer也支持multiple node:比如在AG3用tcode SM53查看,发现其是由3个node组成:Cache invalidation无论Hybris,还是Netweaver,都面临一个需要解决的问题,即cache /
SAP CRM呼叫中心和Hybris Commerce Backoffice的轮询设计
在CRM 呼叫中心还没有用ABAP push channel 重新设计之前,因为后台没法向浏览器push event,因此前台只能每隔1秒向后台发一个http request去询问后台是否有event发生:用APC redesign的CRM IC在blog [Replace polling in CRM Interaction Center by ABAP Push Channel](Replac
SAP ABAP和Hybris Commerce的Sample数据
ABAPBC系列有很多sample report,要使用这些report需要表里具有sample data。SAP提供了标准的report来生成这些sample data。SAPBC_DATA_GENERATOR program for filling SFLIGHT and SBOOK tablesSAPBC_DATA_GENERATOR_ALE program for ALE demo pro
How to test Delta download in CRM Side
Subject: How to test Delta download in CRM Side1. Select one product in CRM side ( QD3/504 ) which you would like to test. The product must have already been downloaded from ERP successfully.In t
SAP CRM和Cloud for Customer订单中的业务伙伴的自动决定机制
CRMC4CSee blog Overview on Party Determination and Involved Parties in SAP Hybris Cloud for Customer:https://blogs.sap.com/2017/06/09/overview-on-party-determination-and-involved-parties-in-sap-h
ABAP Netweaver, SAP Cloud Platform和Kubernetes的用户区分
ABAPDialog: Individual, interactive system access.System: Background processing and communication within a system (such as RFC users for ALE, Workflow, TMS, and CUA).Communication:Dialog-free communic
ABAP, UI5和webpack的处理入口
ABAP最先执行的是INITIALIZATION:UI5如果一个UI5应用配置到portal的Fiori Launchpad里,那么应用的入口是Component.js另一种方式(多用于平时的测试,验证目的)不需要launchpad,只需要在一个standalone的html里自己新建一个component的运行环境(Shell):见下面html代码的第28到31行:webpack如果是通过--c
如何使用ABAP异步RFC调用提升应用性能
采用如下report 研究asynchronous RFC call的性能提升:PARAMETERS: num TYPE i OBLIGATORY DEFAULT 10. DATA:ls_line TYPE zjerry1, &nb
SAP ABAP SICF事务码和SAP Hybris的链式过滤器filter chain
ABAP SICFSICF里的node是树上的节点。如果当前节点的handler class为空:则回溯到其parent节点,直至定位到一个有handler class的node位置。Hybris通过debug会看到有一堆的filter参与进去:Hybris帮助文档有一些常用filter的介绍:上面debug screenshot里诸多的filter是如何串成一个chain的?在storefron
SAP Hybris的build callback和SAP ABAP的SGEN事务码
这个issue AIM in CRM and C4C里介绍了C4C和CRM的After import mechanism.在Hybris里,客户把2个G的Hybris安装包下载下来,然后在命令行里运行命令安装,实际上就是用ant的build命令。为什么要执行build:The reasons why you need to build SAP Hybris Commerce are as foll
SAP UI5应用访问OData metadata的url和Destination
在SAP WebIDE里随便创建一个新的Fiori应用,访问一个OData服务:直接在WebIDE里本地运行该Fiori应用,在Chrome开发者工具里把metadata请求的url抄下来:url如下:https://webidetesting3028490-i042416trial.dispatcher.hanatrial.ondemand.com/sap/opu/odata/iwbep/GWS
SAP Business Application Studio和SAP云平台Destination
根据SAP官方文档,在SAP Cloud Platform CloudFoundry环境里创建的Destination,在SAP Business Application Studio的consume SAP systems里可以被解析为System URL或者catalog两种类别:那么SAP Business Application Studio是根据什么样的条件来解析的呢?根据Jerry的测
sublime text的dockerfile语法高亮插件
bing搜索关键字sublime text dockfile,打开第一条搜索结果:https://packagecontrol.io/packages/Dockerfile%20Syntax%20Highlighting点这个http://github.com的超链接:打开链接https://github.com/asbjornenge/Docker.tmbundle,把仓库的文件下载成一个压缩包
SAP CRM user参数CRM_UI_PROFILE是在哪行ABAP代码里读取的
# Sent: Friday, September 26, 2014 4:00 PMSince you are doing operation in backend, so framework will use your parameter setting defined in tcode SU3 as your current business role.读取这个用户参数的ABAP代码
SAP ABAP maintanence view的数据校验机制
# Subject: RE: Validate data in maintanence viewSM30的Maintenance View是通过SE11里面的工具生成的,所有的显示和增删改查的逻辑都是自动生成的代码,通常这些代码在和Maintenance View同名的Function Group里面。Function Group: CRMV_PR_SUBSTRAC同时SAP提
在SAP云平台上部署和运行Docker应用
容器技术,Docker,虚拟化,这些名词诞生尽管有很长一段时间了,但是在云原生开发领域仍旧热度不减。甚至连SAP赖以成名的ABAP Netweaver,如今也踏上了容器化的上云探索之路,比如下面这张来自SAP社区的一篇博客:Proof of Concept: Deploying ABAP in Kuberneteshttps://blogs.sap.com/2020/02/06/proof-of-
一个13年ABAP老兵的建议:了解这些基础知识,对ABAP开发有百利而无一害
在Jerry之前的图片推送中,我提到了SAP社区上这样一篇博客:Proof of Concept: Deploying ABAP in Kuberneteshttps://blogs.sap.com/2020/02/06/proof-of-concept-deploying-abap-in-kubernetes里面介绍了SAP Linux实验室的工程师们将ABAP应用服务器各组件进行容器化并部署到
SAP CRM中间件下载出错的错误排查
# Sent: Tuesday, July 22, 2014 10:58 AM## Subject: RE: how to analyze customize downloading issueIssue: The customizing object DNL_CUST_PROD0 is still "Running" in tcode R3AM1