Impex更改items.xml中设置的itemtype的默认值

2020-09-17 04:19发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我们正在尝试通过impex更改ImportImpexCronJob logtodatabase属性的默认值。 logtodatabase的默认值在CronJob中设置,并在ImportImpexCronJob * -items.xml中重新声明。

我们不想扩展/子类化并重新声明该值。

我们可以按照此问题中的建议通过impex更新属性( https: //experts.hybris.com/questions/2379/view.html)。

例如,我们可以执行以下操作:
UPDATE AttributeDescriptor; enclosingType(code)[unique = true]; qualifier [unique = true];可选; UserPasswordChangeAudit; passwordEncoding; true

但是以下操作失败:
UPDATE AttributeDescriptor; enclosingType(code)[unique = true]; qualifier [unique = true]; attributeType(code); defaultValue; ImpExImportCronJob; logToDatabase; true

从日志中更新失败为:2 = ValueEntry('logToDatabase'= logToDatabase,unresolved = false,ignore = false),3 = ValueEntry('true'= null,unresolved = null,ignore = false)value" true" = null,unresolved = null,ignore = false

当我导出时,我可以看到logtodatabase的属性类型为java.lang.Boolean,但是defaultValue显示为长编码字符串!

所以我有两个问题:我可以用impex更新默认值吗? 如果是这样-怎么办?

预先感谢

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我们正在尝试通过impex更改ImportImpexCronJob logtodatabase属性的默认值。 logtodatabase的默认值在CronJob中设置,并在ImportImpexCronJob * -items.xml中重新声明。

我们不想扩展/子类化并重新声明该值。

我们可以按照此问题中的建议通过impex更新属性( https: //experts.hybris.com/questions/2379/view.html)。

例如,我们可以执行以下操作:
UPDATE AttributeDescriptor; enclosingType(code)[unique = true]; qualifier [unique = true];可选; UserPasswordChangeAudit; passwordEncoding; true

但是以下操作失败:
UPDATE AttributeDescriptor; enclosingType(code)[unique = true]; qualifier [unique = true]; attributeType(code); defaultValue; ImpExImportCronJob; logToDatabase; true

从日志中更新失败为:2 = ValueEntry('logToDatabase'= logToDatabase,unresolved = false,ignore = false),3 = ValueEntry('true'= null,unresolved = null,ignore = false)value" true" = null,unresolved = null,ignore = false

当我导出时,我可以看到logtodatabase的属性类型为java.lang.Boolean,但是defaultValue显示为长编码字符串!

所以我有两个问题:我可以用impex更新默认值吗? 如果是这样-怎么办?

预先感谢

付费偷看设置
发送
2条回答
土豆飞人
1楼-- · 2020-09-17 04:47

如果看到AttributeDescriptorModel类,则将看到defaultValue是Object类型的。 它既不是原始类型,也不是对其他模型的引用。 在impex中,没有直接的方法将对象的值赋予属性。 因此,您可以尝试编写自己的翻译器或使用beanshell。

ZJXianG
2楼-- · 2020-09-17 04:45

附件是我为此目的创建的一个beanshell- Beanshell

注意:除非您也对items.xml进行了相同的更改,否则在更新系统时,通过impex或通过beanshell直接对数据库所做的任何更改都将恢复。

一周热门 更多>