如何在Graphical Mapping中为属性传多值并实现节点动态映射
SAP Graphical Mapping:基于常量属性值生成带动态/常量内容的Value节点
针对你需求里的固定两个Value节点生成场景,直接在Graphical Mapping里按以下步骤操作即可:
第一步:创建两个独立的Value节点
在目标结构的Values节点下,手动添加两个Value节点(右键Values→ 插入子节点,选择Value),确保两个节点是平级的。配置第一个Value节点(AID="Account")
- 选中该节点的
AID属性,添加**固定值(Fixed Value)**函数,设置常量值为Account; - 将源结构中对应动态账号的字段(比如
Source/AccountNumber)直接拖拽映射到该Value节点的文本内容上,这样就能获取动态的123456值; - 忽略
ID属性:不需要给这个节点的ID属性做任何映射,也可以在目标结构定义里暂时禁用该属性,生成的XML就不会出现ID属性。
- 选中该节点的
配置第二个Value节点(AID="Type",ID="S")
- 选中该节点的
AID属性,添加固定值函数,设置常量为Type; - 选中该节点的
ID属性,添加固定值函数,设置常量为S; - 给该
Value节点的文本内容添加固定值函数,设置常量为name。
- 选中该节点的
测试验证
运行映射测试,输入对应的源数据后,生成的XML应该完全符合你给出的目标格式:<Values> <Value AID="Account">123456</Value> <Value AID="Type" ID="S">name</Value> </Values>
如果后续需要动态生成更多Value节点(比如根据源数据条数),可以结合**节点函数(Node Functions)**里的UseOneAsMany或SplitByValue来实现,但当前需求固定两个节点,上述步骤足够解决问题。
内容的提问来源于stack exchange,提问作者Yalamati hemanth kumar
相关产品推荐
相关产品推荐

