【发布时间】:2015-09-02 18:11:42
【问题描述】:
我正在尝试使用 NetSuite 的 SuiteTalk asynchAddList 操作,使用 PHPToolkit_2015_1 异步添加多条记录。他们的2015_1 WSDL 表明这是一个有效的操作:
<operation name="asyncAddList">
<input name="asyncAddListRequest" message="tns:asyncAddListRequest"/>
<output name="asyncAddListResponse" message="tns:asyncAddListResponse"/>
<fault name="InvalidSessionFault" message="tns:InvalidSessionFault"/>
<fault name="InvalidCredentialsFault" message="tns:InvalidCredentialsFault"/>
<fault name="ExceededRecordCountFault" message="tns:ExceededRecordCountFault"/>
<fault name="ExceededRequestSizeFault" message="tns:ExceededRequestSizeFault"/>
<fault name="ExceededRequestLimitFault" message="tns:ExceededRequestLimitFault"/>
<fault name="UnexpectedErrorFault" message="tns:UnexpectedErrorFault"/>
</operation>
我已经测试了与 NetSuite 的连接,addList 请求可以正常工作。 addList 和 asyncAddList 请求 XML 是相同的,除了正文中的主标记:
<Body>
<asyncAddList>
<record xsi:type="CustomRecord">
<recType internalId="100" />
<customFieldList>
<customField scriptId="custrecord_name" xsi:type="SelectCustomFieldRef">
<value internalId="500" />
</customField>
</customFieldList>
</record>
</asyncAddList>
</Body>
虽然addList 成功,但对于asyncAddList 请求,我得到以下响应:
Fatal error: Uncaught SoapFault exception: [soapenv:Server.userException] An unexpected error occurred.
在 NetSuite 的 Web 服务使用日志中,不会记录此操作。
WSDL 显示 asyncAddList 操作可以返回 UnexpectedErrorFault,但 NetSuite 的文档仅详细说明了此故障一次
(This fault is thrown in the event of an occurrence of an unexpected exception.),但这不是很有帮助。
有人有在 SuiteTalk 中使用asyncAddList 的经验吗?任何帮助将不胜感激!
更新:我也尝试执行 asyncUpdateList 操作,但它也产生了致命错误。然而,正常的 updateList 操作是成功的。这似乎是异步操作特有的问题。
更新 #2:异步请求开始工作一天,然后停止工作几天,然后又开始工作一天。我有一个 NetSuite 支持的未决案例,他们正在调查这个问题。一旦他们找到解决方案就会更新。
【问题讨论】:
标签: php web-services soap wsdl netsuite