2020-08-30 08:49发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好,
在应用/确定之前,我需要在调用的表单中更改所选列的列名/代码。 主要是,我需要在扩展属性中保留旧名称/代码,以便稍后创建迁移脚本。 使用哪个事件处理程序? (验证已经更改了名称/代码,而不是旧的。)
最诚挚的问候布莱恩
也许我不太了解您的问题,但是我认为您可以使用Validate Column元类来保留每列的先前名称(或代码)。 您将只需要两个扩展属性(一个还不够)。 让我们将它们命名为" old"和" oldest"。 最初,它们将包含与"名称"列相同的值。 在验证事件期间,您必须评估名称是否已更改。 您可以通过比较"名称"和"旧"属性来实现。 它可以通过两种可能的方式进行:
1)如果不同,表示名称已更改,则必须将"旧"值移到"最旧"属性,然后将当前名称值移到"旧"属性。 现在,您的"最旧"属性包含该列的先前名称,并已安全存储。
2)如果没有区别,则名称没有更改,您无需执行任何操作。 您之前的"名称"列仍安全地存储在"最旧的"属性中。
我知道这并不完美,但是我不知道任何比这更简单的解决方案。 PD不准备以这种方式跟踪历史记录更改。
HTH,
Ondrej
我喜欢Ondrej的回答,并希望提供一个变体。 创建一个名为" previous name"之类的扩展子对象,并以与Ondrej建议的扩展属性相同的方式使用它。 这将为您提供有关名称和代码更改的审核跟踪。
最多设置5个标签!
也许我不太了解您的问题,但是我认为您可以使用Validate Column元类来保留每列的先前名称(或代码)。 您将只需要两个扩展属性(一个还不够)。 让我们将它们命名为" old"和" oldest"。 最初,它们将包含与"名称"列相同的值。 在验证事件期间,您必须评估名称是否已更改。 您可以通过比较"名称"和"旧"属性来实现。 它可以通过两种可能的方式进行:
1)如果不同,表示名称已更改,则必须将"旧"值移到"最旧"属性,然后将当前名称值移到"旧"属性。 现在,您的"最旧"属性包含该列的先前名称,并已安全存储。
2)如果没有区别,则名称没有更改,您无需执行任何操作。 您之前的"名称"列仍安全地存储在"最旧的"属性中。
我知道这并不完美,但是我不知道任何比这更简单的解决方案。 PD不准备以这种方式跟踪历史记录更改。
HTH,
Ondrej
我喜欢Ondrej的回答,并希望提供一个变体。 创建一个名为" previous name"之类的扩展子对象,并以与Ondrej建议的扩展属性相同的方式使用它。 这将为您提供有关名称和代码更改的审核跟踪。
一周热门 更多>