我想通过向Web Connector发送请求来添加客户。我已经完成了SDK提供的示例代码。我想知道使用Web Connector获取和发送数据的过程。
如何调用Quick Book Web Service并发送请求和检索数据。
答案 0 :(得分:4)
如何调用Quick Book Web Service
你不能。
这不是QuickBooks Web连接器的工作方式。
您的起点应该是阅读有关QuickBooks SDK附带的QuickBooks Web Connector的98页PDF。这是一个链接:
概述,Web Connector是一个简单的SOAP客户端,它位于QuickBooks旁边,它调用您的Web服务,而不是相反。它会轮询您设置的Web服务(SOAP)并且基本上要求&#34;嘿,我该怎么办?&#34;一遍又一遍地。然后给它XML(qbXML)命令告诉它该做什么(例如<CustomerAdd>...</CustomerAdd>
等)。
概述,您使用以下方法实现SOAP Web服务:
array authenticate(string strUserName, string strPassword)
您应该在网络应用中存储用户名和密码。
如果用户名和密码有效,则生成会话ID(“票证”)并将此票证存储在数据库中。每次后续呼叫都将包含此故障单字符串,您将检查以确保故障单在每次后续呼叫中都有效。
然后,您应该检查是否有任何事情要做。您应该在SOAP服务器中维护要执行的操作的队列。根据规范返回适当的响应。
string sendRequestXML(string ticket, string strHCPResponse, string strCompanyFileName, string qbXMLCountry, int qbXMLMajorVers, int qbXMLMinorVer)
Web连接器会调用此方法询问您&#34;嘿,我该怎么办?&#34;。
您应检查要执行的操作的内部队列,并将下一个项目从队列中拉出。您应该将该队列项的有效qbXML XML请求作为字符串返回。
因此,如果您想将客户添加到QuickBooks,您将返回<CustomerAdd><Name>...</Name></CustomerAdd>
如果您想从QuickBooks获取客户列表,您可以执行<CustomerQuery>...</CustomerQuery>
integer receiveResponseXML(string ticket, string response, string hresult, string message)
这是Web连接器向您发送数据的方式。例如,如果您告诉Web连接器添加客户,它会将客户添加到QuickBooks,然后向您发送XML响应,告诉您它是否成功。
这就是它的全部内容。
您需要使用3个非常简单的方法实现SOAP服务,并且需要一个充满XML命令的队列。
有一个更大的解释,完整的SOAP和qbXML示例在这里:
如果您正在使用.NET进行开发,那么您应该安装QuickBooks SDK:
因为它为您提供了.NET中的示例代码,它向您展示了如何实现所有这些内容。安装SDK时,它会放在您的计算机上: