我有一个场景,其中有一组任务,并且我正在使用 Quickbooks Web 连接器来执行它们。用户可能希望根据需要运行所有任务或其中一些任务。用于查询数据的任务总是发送静态 XML 并解析响应。需要将数据添加到 Quickbooks 的用户从我的应用程序下载一定数量的文件,使用该应用程序为每个文件生成并发送 qbxml 请求 XML。
问题在于需要将数据添加到 Quickbooks 的任务。 根据某些条件,他们可能并不总是下载文件。如果为特定任务下载文件,则一切正常,但如果没有为该任务下载文件,那么我需要在 sendRequestXML 方法中发送一个空字符串。这会在 Web 连接器日志中抛出错误(无法解析请求)并调用服务中的 getLastError 方法。
目前,我正在从 getLastError 发送“NoOp”,以便在 Web 连接器中不显示任何错误,但它似乎不起作用。即使从 getLastError 方法返回“NoOp”并且连接关闭后,Web 连接器状态也会显示“正在向应用程序发送错误”,尽管实际上没有真正的错误,因为没有发送请求。
NoOp 是否是正确的做法来向用户显示成功而不是错误情况,或者是否有任何其他字符串要返回?是像NOOP一样区分大小写的字符串吗?
请帮忙解决这个问题。
最佳答案
我知道这有点老了,但我最近遇到了这个问题,所以这里是:在这些情况下,您确实需要继续处理某些内容(假设 QBWC 正在查询是否有要创建的新发票QB 每 15 分钟)你必须通过一个空的结构,这样 QB 就不会提示。
这就是我最终使用的:
"<?xml version=\"1.0\"?><?qbxml version=\"13.0\"?><QBXML><QBXMLMsgsRq onError=\"stopOnError\"></QBXMLMsgsRq></QBXML>"
关于soap - 如何在 Quickbooks Web 连接器中处理 sendRequestXML 中的零作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25247194/