SAP Hybris的类型系统更改和ABAP的LOAD_PROGRAM_TABLE_MISMATCH
Posted sap-jerry
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SAP Hybris的类型系统更改和ABAP的LOAD_PROGRAM_TABLE_MISMATCH相关的知识,希望对你有一定的参考价值。
如果正在运行一个transaction,这个时候系统有一个transport request import进来, 这个TR包含了一些DDIC object的change, 并且这些DDIC object正在被当前transaction使用,就会出现这个exception:
SAP的建议是在晚上user很少的时候import TR。用SGEN只能通过在user launch transaction之前预先生成最新的ABAP LOAD来避免这个问题,但是对于TR import之前已经load到memory开始执行的transaction则无能为例。
Hybris不会遇到类似的问题,因为其data type分为design time source和runtime artifact两种:
(1) There is a file-based representation that is spread across in the various items.xml files of Hybris extensions. This representation is not actively used by Hybris at runtime. You can modify this representation at any time by modifying the items.xml file of an extension. However, modifications of the items.xml files only take effect after an initialization or an update of Hybris.
(2) The database of Hybris also contains a representation of the type system. This representation is actually in use by Hybris at runtime. The representation in use reflects the state the type system was in when Hybris was last updated or initialized.
直接修改items.xml不会对runtime transaction造成任何影响 - items.xml的change必须重新build整个Hybris之后才会生效.
要获取更多Jerry的原创文章,请关注公众号"汪子熙":
以上是关于SAP Hybris的类型系统更改和ABAP的LOAD_PROGRAM_TABLE_MISMATCH的主要内容,如果未能解决你的问题,请参考以下文章
SAP ABAP, Fiori, Android和Hybris里的异步操作
SAP ABAP SICF事务码和SAP Hybris的链式过滤器filter chain
SAP Commerce(原Hybris)的订单处理框架和SAP CRM One Order框架