B1WS订单服务GetByParams抛出" XML文档中有错误(7,2314)。"

2020-08-24 04:52发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)我正在尝试使用B1WS更新销售订...

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

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


我正在尝试使用B1WS更新销售订单,但是在使用GetByParams时出现如下错误

InnerException :在将字符串转换为Date Time时,在将每个变量放入DateTime对象

之前解析该字符串。

InnerException :确保方法参数的格式正确。

我的示例代码:

将orderDocSvc视作OrdersService.OrdersService = New OrdersService.OrdersService()

将Header作为OrdersService.MsgHeader = New OrdersService.MsgHeader()

Header.ServiceName = OrdersService.MsgHeaderServiceName.OrdersService Header.ServiceNameSpecified = True

Header.SessionID = l_sessID.ToString()

orderDocSvc.MsgHeaderValue =标头

将mparams用作OrdersService.DocumentParams = New OrdersService.DocumentParams()

mparams.DocEntry = 17290

mparams.DocEntrySpecified =真

将orderDoc视为OrdersService.Document = orderDocSvc.GetByParams(mparams)//抛出错误

orderDoc.Comments ="测试更新"

orderDocSvc.Update(orderDoc);

上面的代码是否有问题? 看起来XML反序列化有问题。

请建议我

谢谢

5条回答
jovirus
2020-08-24 05:08

你好拉胡尔,

错误与SOAP响应xml反序列化有关,该解析是将日期时间(DocDate,DocDueDate等)从字符串格式解析为日期时间。

1。在使用B1WS之前,是否已使用WsdlServicesGenerator工具为公司数据库生成WSDL文件? 它将从DI Server下载对象架构,并根据公司数据库生成WSDL文件。 将包括UDF/UDO。

2。如果是,请与不带B1WS的普通DI Server测试相同的功能。
请检查DI Server返回的DocDate格式,并检查OS区域设置中的日期格式。 您可以尝试更改操作系统的区域设置。

Yatsea的问候