使用用于IOS的SAP CP移动工具包中的多个扩展功能获取数据时出现问题

2020-08-20 03:33发布

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

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


你好,

我一直在使用用于iOS的sap cp移动工具包,并且对使用该工具包开发ios应用程序有很好的了解。在使用代理类从oData服务中获取数据方面取得了成功,但是我被困在编写扩展查询中 并使用代理类获取数据。

SAP方面,他们编写了如下查询。

urlParameters:{" $ expand":" to_DeliveryDocumentItem,to_DeliveryDocumentPartner,to_DeliveryDocumentPartner/to_Address"},

i在ios中的格式相同

查询= DataQuery()。withKey(AOutbDeliveryHeaderType.key(deliveryDocument: self .deliveryNumber))。expand(AOutbDeliveryHeaderType.toDeliveryDocumentItem,withQuery:DataQuery()) .expand(AOutbDeliveryHeaderType.toDeliveryDocumentPartner,withQuery:DataQuery())。expand(AOutbDeliveryHeaderType.toDeliveryDocumentPartner,AOutbDeliveryPartnerType.toAddress)

并通过使用如下所示的代理类数据处理程序,

自身。apiOutBoundEntities.fetchAOutbDeliveryHeaderType(匹配:查询,completionHandler:{(AOutbDeliveryHeaderType ?,错误)

{

}

正在获取类似于" toaddress"的资源段的错误

另一方面,

通过如下整理上述查询并使用与上面相同的处理程序方法,我成功获取了文档项目和文档路径的数据

查询= DataQuery()。withKey(AOutbDeliveryHeaderType.key(deliveryDocument: self .deliveryNumber))。expand(AOutbDeliveryHeaderType.toDeliveryDocumentItem,withQuery:DataQuery()) .expand(AOutbDeliveryHeaderType.toDeliveryDocumentPartner,withQuery:DataQuery())。

最后看来,使用扩展查询的第一级导航正在运行,但在此处将其挖掘到下一级导航会引起问题。

请任何人帮助。

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

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


你好,

我一直在使用用于iOS的sap cp移动工具包,并且对使用该工具包开发ios应用程序有很好的了解。在使用代理类从oData服务中获取数据方面取得了成功,但是我被困在编写扩展查询中 并使用代理类获取数据。

SAP方面,他们编写了如下查询。

urlParameters:{" $ expand":" to_DeliveryDocumentItem,to_DeliveryDocumentPartner,to_DeliveryDocumentPartner/to_Address"},

i在ios中的格式相同

查询= DataQuery()。withKey(AOutbDeliveryHeaderType.key(deliveryDocument: self .deliveryNumber))。expand(AOutbDeliveryHeaderType.toDeliveryDocumentItem,withQuery:DataQuery()) .expand(AOutbDeliveryHeaderType.toDeliveryDocumentPartner,withQuery:DataQuery())。expand(AOutbDeliveryHeaderType.toDeliveryDocumentPartner,AOutbDeliveryPartnerType.toAddress)

并通过使用如下所示的代理类数据处理程序,

自身。apiOutBoundEntities.fetchAOutbDeliveryHeaderType(匹配:查询,completionHandler:{(AOutbDeliveryHeaderType ?,错误)

{

}

正在获取类似于" toaddress"的资源段的错误

另一方面,

通过如下整理上述查询并使用与上面相同的处理程序方法,我成功获取了文档项目和文档路径的数据

查询= DataQuery()。withKey(AOutbDeliveryHeaderType.key(deliveryDocument: self .deliveryNumber))。expand(AOutbDeliveryHeaderType.toDeliveryDocumentItem,withQuery:DataQuery()) .expand(AOutbDeliveryHeaderType.toDeliveryDocumentPartner,withQuery:DataQuery())。

最后看来,使用扩展查询的第一级导航正在运行,但在此处将其挖掘到下一级导航会引起问题。

请任何人帮助。

付费偷看设置
发送
2条回答
哎,真难
1楼 · 2020-08-20 04:03.采纳回答

在无法针对服务进行测试的情况下,开发人员提出了以下建议:

对于V2服务

让查询= DataQuery()。withKey(AOutbDeliveryHeaderType.key(deliveryDocument:self  .deliveryNumber))
     .expand(AOutbDeliveryHeaderType.toDeliveryDocumentItem,
     .expand(AOutbDeliveryHeaderType.toDeliveryDocumentPartner)
     .expand(AOutbDeliveryHeaderType.toDeliveryDocumentPartner.path(AOutbDeliveryPartnerType.toAddress);
 

对于V4服务

//curl参数:{" $ expand":" to_DeliveryDocumentItem,to_DeliveryDocumentPartner,to_DeliveryDocumentPartner/to_Address"},
 
 让查询= DataQuery()。withKey(AOutbDeliveryHeaderType.key(deliveryDocument:self.deliveryNumber))
     .expand(AOutbDeliveryHeaderType.toDeliveryDocumentItem)
     .expand(AOutbDeliveryHeaderType.toDeliveryDocumentPartner,
         withQuery:DataQuery()。expand(AOutbDeliveryPartnerType.toAddress)
 
nice_wp
2楼-- · 2020-08-20 04:15

嗨,斯坦,

请提供有关如何提取to_Address导航链接数据以及toDeliveryDocumentItem和toDeliveryDocumentPartner的帮助。

通过下面的操作,可以从类型数组中获取toDeliveryDocumentItem和toDeliveryDocumentPartner数据。

self.apiOutBoundEntities.fetchAOutbDeliveryHeaderType(matching:query,completeHandler:{(type,error)in

self.deliveryItemTypes = type.flatMap {$ 0.toDeliveryDocumentItem}!

self.deliverypartnerTypes = type.flatMap {$ 0.toDeliveryDocumentPartner}!

///因为无法访问toAddress,所以无法从类型(AOutbDeliveryHeaderType)获取toAdress扩展数据

print(" toAddress is \(type.flatMap {$ 0.toAddress}!)")

})

一周热门 更多>