Asp.net 使用my Application Quick Books将请求发送到Web连接器

Asp.net 使用my Application Quick Books将请求发送到Web连接器,asp.net,web-services,desktop,quickbooks,Asp.net,Web Services,Desktop,Quickbooks,我想通过向Web连接器发送请求来添加客户。我已经完成了SDK提供的示例代码。我想知道使用Web连接器获取和发送数据的过程 如何调用QuickBook Web服务并发送请求和检索数据 如何调用QuickBook Web服务 你不能 这不是QuickBooks Web连接器的工作方式 您的起点应该是阅读QuickBooks SDK中包含的有关QuickBooks Web连接器的98页PDF。这里有一个链接: 总而言之,Web连接器是位于QuickBooks旁边的简单SOAP客户端,它调用您的W

我想通过向Web连接器发送请求来添加客户。我已经完成了SDK提供的示例代码。我想知道使用Web连接器获取和发送数据的过程

如何调用QuickBook Web服务并发送请求和检索数据

如何调用QuickBook Web服务

你不能

这不是QuickBooks Web连接器的工作方式

您的起点应该是阅读QuickBooks SDK中包含的有关QuickBooks Web连接器的98页PDF。这里有一个链接:

总而言之,Web连接器是位于QuickBooks旁边的简单SOAP客户端,它调用您的Web服务,而不是相反。它轮询您设置的web服务(SOAP),本质上是一次又一次地问“嘿,我应该做什么?”。然后给它XML(qbXML)命令,告诉它做什么(例如,
,等等)

总而言之,您可以使用以下方法实现SOAP web服务:

数组身份验证(字符串strUserName、字符串strPassword)

您应该在web应用程序中存储用户名和密码

如果用户名和密码有效,则生成会话ID(“票证”),并将该票证存储在数据库中。每次给您的后续呼叫都将包含此票证字符串,您将进行检查以确保票证在每次后续呼叫中有效

然后你应该检查一下是否有什么事情要做。您应该在SOAP服务器中维护一个要做的事情队列。根据规范返回适当的响应

string sendRequestXML(string票证、string strhcrpresponse、string strCompanyFileName、string qbxmlccountry、int qbxmlmmajorvers、int qbXMLMinorVer)

Web连接器将调用此方法询问您“嘿,我该怎么办?”

你应该检查你的内部待办事项队列,并从队列中取出下一项。您应该以字符串形式返回该队列项的有效qbXML请求

因此,如果您想将客户添加到QuickBooks,您应该返回类似

如果您想从QuickBooks获取客户列表,可以执行类似于

integer receiveResponseXML(字符串票据、字符串响应、字符串hresult、字符串消息)

这就是Web连接器将数据发送回您的方式。例如,如果您告诉Web连接器添加一个客户,它会将该客户添加到QuickBooks,然后向您发送一个XML响应,告诉您是否成功

就这些

您需要使用3个非常简单的方法和一个充满XML命令的队列来实现SOAP服务

下面是一个更大的解释,包括SOAP和qbXML示例:

如果您在.NET中开发,则应安装QuickBooks SDK:

因为它在.NET中提供了示例代码,向您展示了如何实现所有这些功能。当您安装SDK时,它会放在您的计算机上:

  • C:\Program Files(x86)\Intuit\IDN\QBSDK13.0\samples\qbdt\C-sharp\qbXML\WCWebService\

这意味着只有当web连接器调用web服务时,我才需要发出查询请求?那很好。现在的情况是,我已经从我的web应用程序中注册了10个客户。web连接器如何知道它需要添加这十个客户?我是否应该拥有存储此请求并在调用服务时发送的任何东西?可以将web连接器配置为每分钟联系您的web服务。当它连接时,您告诉它通过从sendRequestXML返回请求来添加客户。是的,你应该排队。你能给我一些建议吗?我有我的应用程序,我将注册租户,数据存储在数据库中。调用web服务时,我是否应该查询数据库中最近的记录?并向web连接器提供添加查询。我很快就能得到我想要的。是的,你应该查询数据库。这里有很多qbXML示例: