处理多个具有包装程序业务对象的 IDoc

注:
本节仅适用于服务调用请求处理。

当处理多个 IDoc 时,ALE 模块需要一个包装程序业务对象作为顶级业务对象。多个 IDoc 包装程序业务对象包含一个表示一组 IDoc 父包装程序业务对象的属性。

对于每个父包装程序业务对象,SAPODA 都会生成“创建”、“检索”、“更新”和“删除”查询描述。对于其中每个查询描述,它都会生成以下 AppSpecificInfo 值:

sap.sapalemodule.VSapALEBOHandler,MsgType=;MsgCode=;MsgFunction=
 

图 54 举例说明了顶级包装程序对象与其子 IDoc 业务对象之间的关系。

图 54. 包含子业务对象的包装程序业务对象


多 IDoc 包装程序对象示例

以下是一个多 IDoc 包装程序业务对象的样本定义:

[BusinessObjectDefinition]
 Name = sap_alereq01_wrapper
 Version = 1.0.0
 AppSpecificInfo = 
  
 [Attribute]
 Name = Dummy_key
 Type = String
 Cardinality = 1
 MaxLength = 1
 IsKey = true
 IsForeignKey = false
 IsRequired = true
 AppSpecificInfo = DummyKey
 DefaultValue = 
 [End]
  
 [Attribute]
 Name = TransactionId
 Type = String
 Cardinality = 1
 MaxLength = 1
 IsKey = false
 IsForeignKey = false
 IsRequired = false
 AppSpecificInfo = CrossWorlds TID
 DefaultValue = 
 [End]
  
 [Attribute]
 Name = sap_alereq01
 Type = sap_alereq01
 ContainedObjectVersion = 1.0.0
 Relationship = Containment
 Cardinality = n
 MaxLength = 255
 IsKey = false
 IsForeignKey = false
 IsRequired = false
 AppSpecificInfo = 
 DefaultValue = 
 [End]
  
 [Verb]
 Name = Create
 AppSpecificInfo = sap.sapalemodule.VSapALEBOHandler,MsgType=;MsgCode=;MsgFunction=
 [End]
  
 [Verb]
 Name = Retrieve
 AppSpecificInfo = sap.sapalemodule.VSapALEBOHandler,MsgType=;MsgCode=;MsgFunction=
 [End]
  
 [Verb]
 Name = Update
 AppSpecificInfo = sap.sapalemodule.VSapALEBOHandler,MsgType=;MsgCode=;MsgFunction=
 [End]
  
 [Verb]
 Name = Delete
 AppSpecificInfo = sap.sapalemodule.VSapALEBOHandler,MsgType=;MsgCode=;MsgFunction=
 [End]
 

多 IDoc 包装程序:表示子业务对象的属性

表 28 列示并描述了表示多 IDoc 包装程序业务对象中子业务对象的属性的特性 .

表 28. 多 IDoc 包装程序:表示子业务对象的属性
属性名 描述
Name 将其值设置为由 SAPODA 生成的父业务对象的名称。
Type 将其值设置为由 SAPODA 生成的父业务对象的名称。
ContainedObjectVersion 将其值设置为 1.0.0
Relationship 子业务对象由父业务对象包含,因此,其值为 containment
IsKey 将其值设置为 false
IsForeignKey 将其值设置为 false
IsRequired 将其值设置为 false
AppSpecificInfo 此属性不用于表示 ALE 模块中子业务对象的属性。
Cardinality 将表示 IDoc 父业务对象的顶级包装程序业务对象中的属性值设置为基数 n

Copyright IBM Corp. 1997, 2004