不同系统里同一Customizing activity的显示差异分析
一种可能的原因是,这个customizing activity绑定到了某个业务开关(Business Switch)上面。如果该业务开关在某个系统上处于关闭状态,则您无法在事务码SPRO里看到该activity。拿到这个开关的名称: CRM_ANA_OR_ODATA后,执行reportCRM_COMPL_SFW_CHECK查看该开关的状态为...
Fiori Launchpad Tile点击后跳转的调试技巧
下图中一个个白色的方框就成为tile。每个tile点击之后,会打开一个对应的Fiori应用。本文介绍如何在后台调试这个跳转目标的计算逻辑。后台执行逻辑: 首先拿元数据metadata再取实际数据。下图是数据请求正文:...
面试问题 - 只用位操作在ABAP里实现a+b
用ABAP实现下图的第五种整数相加算法:REPORT zint.PARAMETERS: a TYPE int4 OBLIGATORY DEFAULT 100, b TYPE int4 OBLIGATORY DEFAULT 100. DATA: threshold TYPE int4.FORM add USING a TYPE int4 b TYPE int4 CHANGING cv_result TYPE int4. DATA: n TYPE int4 ...
Inner Join, Left Outer Join和Association的区别
方法1 ...
如何在SAP CRM WebClient UI里创建HANA Live Report
之后报表即可在WebClient UI里成功渲染:如果想获得更多关于上图提到的Fiori应用,请查看我的公众号文章 SAP Fiori应用的三种部署方式...
CRM Transaction处理中的权限控制
1. 检查Authorization object CRM_ORD_OP:45代表Allow:4. 如果再失败,进行第四轮对CRM_ORD_RS的权限检查:...
用ABAP 生成二维码 QR Code
二维码在线生成网站:在网页上输入要生成的二维码数据源,校验级别和图片大小,点生成即可看到生成的二维码图片:下面是用ABAP code 利用上述service生成二维码的代码:testforQRCode对应生成的二维码:用手机上的二维码扫描应用能够成功扫描出来:zcl_http_tool的代码在我的github上(因为用于demo...
SAP Fiori应用Footerbar区域按钮的高亮显示逻辑
如何自己分析这两种按钮的实现原理?Chrome Development Tool tips used in my daily work要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:...
如何将BSP应用配置成Fiori Launchpad上的一个tile
1. 使用事务码LPD_CUST,双击角色UICRM001:进入之后能看到很多记录,每条记录对应着Fiori launchpad上的一个tile:可以参考标准的CRM Fiori应用My Notes对应的配置。URL: /sap/bc/ui5_ui5/sap/crm_notes/Application Alias: CRMMyNotesurl:/sap/bc...
找出OData service出错根源的小技巧
下面是如何在后台找出问题根源的步骤。2. 点击工具栏上的按钮"Active Source"。然后我们会被自动带到抛出错误消息的代码位置,即下图的第86行。这个代码是Fiori前台系统进行出错处理的框架代码,我们就在第86行设置一个断点。返回Fiori UI重现错误,断点触发,默认...
CRM数据库表COM_TA_R3_ID的数据来源
1. 直接创建自CRM系统的相关数据字段R3SER_NO存储的序列号内容。这个序列号在WebClient UI的ERP Identification处维护:第二类的例子:ERP系统里设备的ID存储在字段R3IDENT里:UI上对应显示在字段Technical Asset NO上:对应ERP里维护的设备如下:要...
同时开左右两个SAPGUI编辑器显示同一段ABAP代码
输入Left和Right两个窗口待打开的程序名称:结果如下:要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:...
如何处理错误信息 Pricing procedure could not be determined
Sales Organization IDdistribution channel IDdivision IDcustom pricing procedure标志位document pricing procedure根据调试得出的5个输入参数的值,到SPRO里维护一个pr...
中间件事务码R3AC1里Block Size的含义
这些下载队列的事务处理是彼此隔离的,也就是说即使某个队列的下载出了错,这个队列里待下载的ERP设备未能成功存储到CRM系统里,但是并不会影响到其他队列的处理。...
谣言粉碎机 - 极短时间内发送两个Odata request,前一个会自动被cancel掉?
有时我们能在Chrome开发者工具的Network tab里观察到SAP UI5应用会发出某些状态为"取消"的OData请求。如下图第五个请求。1. cancel掉,被谁cancel掉?UI5框架还是Chrome?我用代码在for循环里一共发10个OData请求:无论是同步还是异步,都没有任何的请求被cancel。...
C4C Cloud Application Studio做ABSL开发的一些性能方面的最佳实践
文章里提纲挈领地给出了一些guideline。这里提供一些具体的例子。不好的例子:第一行和第四行有两个循环,然后在第二次循环里调用一个比较耗时的ServiceRequest BO的item 节点上定义的标准action FinishFulfilmentProcessing。代码的时间复杂度为o(n2)...
Opportunity的chance of success的赋值逻辑
到底哪种类型的错误信息会阻止business transaction的保存
通过debug, 发现method check_popup_to_raise 会检查当前是否存在会导致弹出popup window提示给end user的error message。此类error message会终止transaction的save process.
在ABAP里实现条件断点的三种方式
有不同的同事问我这个问题:例如下图的LOOP要执行1000次,我只对其中的某一次比如第501次循环感兴趣,我肯定不可能按500次F5然后进入第501次的调试。或者我只对LOOP里某个变量为某一个具体值的那一次循环感兴趣。如何才能避免重复按F5,让断点直接停在满足我期望的条件上?其实有三种方法实现。假设上图的例子里,...
CDS view注解解析 - @Environment.systemField
这个view从CRM物料主数据的产品抬头表COMM_PRODUCT读取product_id, product_type,以及comm_prshtext表里读取产品的描述信息,存储在字段description里。当我们在ABAP Development Studio里预览该view时, 我们会被要求给这两个参数指定值:在Open SQL里,这两个参数会自动被分别赋以ABAP编程语言里系统变量sy-langu...