使用默认属性初始化实体

2020-09-15 14:02发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我正在尝试创建一个扩...

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

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


大家好,

我正在尝试创建一个扩展,以向我创建的每个实体自动添加两个属性%Name%+" Id"和%Name%+" Name"。 但是我没有做到,我怀疑这是由于缺乏知识,也许有人可以提供帮助。 我正在使用的脚本,遵循 https://archive.sap.com/discussions/thread/3558516 ,是

昏暗的我的小狗
 设置myattr = obj.Attributes.CreateNew
 myattr.name = obj.Name +" ID"
 myattr.code = obj.Code +" _ ID"
 myattr.comment = Now()
 myattr.datatype ="整数"
 暗淡的myattr2
 设置myattr2 = obj.Attributes.CreateNew
 myattr2.name = obj.Name +"名称"
 myattr2.code = obj.Code +" _ NAME"
 myattr2.comment = Now()
 myattr2.datatype ="整数" 

我已经创建了扩展,并且最初在Profile/Entity/Event Handlers中使用了Initialize事件处理程序。 这两个属性被创建为" Entity17 Id"和" Entity17 Name"。 然后我尝试了事件处理程序Validate,它以某种方式起作用。 问题在于,当我打开属性对话框时,不包含属性,但是当我关闭属性对话框时,不包含属性。 因此,我必须打开它,进行一些愚蠢的更改,例如在注释中添加一个空格,然后将其关闭,然后它才起作用。 但是,下次我打开属性对话框并再次关闭它时,它将尝试再次创建属性,因此失败。

有什么办法可以更好地做到这一点? 理想情况下,最佳方案是创建一个实体,然后更改默认名称,然后转到"属性"选项卡,找到已经创建的属性" myEntity Id"和" myEntitity Name"。

5条回答
DafaDDDa
2020-09-15 14:11

也许您可以使用更好的Initialize事件处理程序。 它应该在实体创建期间创建您的属性。 而且,如果您想确保以后不会删除您的属性,请将其与Validate处理程序结合使用(该操作如您正确编写的那样,在每次愚蠢的更改之后执行)。

Ondrej

一周热门 更多>