【问题标题】:QBWC error QBWC1013: "Could not start QuickBooks."QBWC 错误 QBWC1013:“无法启动 QuickBooks。”
【发布时间】:2013-03-12 14:28:51
【问题描述】:

我无法从 Web 连接器启动 QuickBooks。我正在传递有效的文件路径,根据文档,一切看起来都是正确的。

  • QBWC 版本为 2.1.0.3.0
  • QB 版本是 Premier Contractor Edition 2010

如果我已经打开了 QuickBooks,则 Web 连接器运行良好。如果它没有打开,我会收到 QBWC1013 错误...

日志的相关部分:

20130312.14:14:56 UTC   : QBWebConnector.SOAPWebService.instantiateWebService() : Initiated connection to the following application.
20130312.14:14:56 UTC   : QBWebConnector.SOAPWebService.instantiateWebService() : AppName: FOO
20130312.14:14:56 UTC   : QBWebConnector.SOAPWebService.instantiateWebService() : AppUniqueName (if available): FOO
20130312.14:14:56 UTC   : QBWebConnector.SOAPWebService.instantiateWebService() : AppURL: https://www.foo.com/server.php
20130312.14:14:56 UTC   : QBWebConnector.SOAPWebService.do_serverVersion() : *** Calling serverVersion().
20130312.14:14:56 UTC   : QBWebConnector.SOAPWebService.do_serverVersion() : Received from serverVersion() following parameter:<serverVersionRet="PHP QuickBooks SOAP Server v1.5.3 at /server.php">
20130312.14:14:56 UTC   : QBWebConnector.SOAPWebService.do_clientVersion() : *** Calling clientVersion() with following parameter:<productVersion="2.1.0.30">
20130312.14:14:57 UTC   : QBWebConnector.SOAPWebService.do_clientVersion() : Received from clientVersion() following parameter:<clientVersionRet="">
20130312.14:14:57 UTC   : QBWebConnector.SOAPWebService.do_clientVersion() : This application agrees with the current version of QBWebConnector. Allowing update operation.
20130312.14:14:57 UTC   : QBWebConnector.SOAPWebService.do_authenticate() : Authenticating to application 'FOO', username = 'foo'
20130312.14:14:57 UTC   : QBWebConnector.SOAPWebService.do_authenticate() : *** Calling authenticate() with following parameters:<userName="foo"><password=<MaskedForSecurity>
20130312.14:14:58 UTC   : QBWebConnector.SOAPWebService.updateWS() : Received from authenticate() following parameters:<authRet[0]="91f62aac622b49ad483f20ef9d7729a3"><authRet[1]=""\\FOOSERVER\Users\Public\Documents\Intuit\QuickBooks\Company Files\Some Company File Inc..QBW""><authRet[2]=""><authRet[3]="">
20130312.14:14:58 UTC   : QBWebConnector.RegistryManager.setCurrentWebServiceName() : HKEY_CURRENT_USER\Software\Intuit\QBWebConnector\CurrentWebServiceName has been set to FOO
20130312.14:14:58 UTC   : QBWebConnector.RegistryManager.setCurrentWebServiceSessionTicket() : HKEY_CURRENT_USER\Software\Intuit\QBWebConnector\CurrentWebServiceSessionTicket has been set to 91f62aac622b49ad483f20ef9d7729a3
20130312.14:14:58 UTC   : QBWebConnector.SOAPWebService.CheckCFNResponse() : User authenticated.
20130312.14:14:58 UTC   : QBWebConnector.SOAPWebService.do_authenticate() : Done.
20130312.14:14:58 UTC   : QBWebConnector.SOAPWebService.OpenConnection() : Connecting to QuickBooks...
20130312.14:14:58 UTC   : QBWebConnector.SOAPWebService.handleAllOtherError() : QBWC1013: Error connecting to QuickBooks. Returning error message to application.
Could not start QuickBooks.
20130312.14:14:58 UTC   : QBWebConnector.SOAPWebService.do_connectionError() : *** Calling connectionError() with following parameters:<wcTicket="91f62aac622b49ad483f20ef9d7729a3"><hresult="0x80040408"><message="Could not start QuickBooks.">
20130312.14:14:59 UTC   : QBWebConnector.SOAPWebService.do_connectionError() : Received from connectionError() following parameters:<tryAgain="done">
20130312.14:14:59 UTC   : QBWebConnector.SOAPWebService.OpenConnection() : Error connecting to QuickBooks. Application sent back DONE. Job ending.
20130312.14:14:59 UTC   : QBWebConnector.RegistryManager.setUpdateLock() : HKEY_CURRENT_USER\Software\Intuit\QBWebConnector\UpdateLock has been set to False
20130312.14:14:59 UTC   : QBWebConnector.RegistryManager.setUpdateLock() : ********************* Update session unlocked *********************
20130312.14:14:59 UTC   : QBWebConnector.WebServiceManager.DoUpdateSelected() : Update completed with errors. See log (QWClog.txt) for details.

【问题讨论】:

    标签: quickbooks qbwc


    【解决方案1】:

    我将假设您的 QWC 文件格式正确。

    如果可能看起来像这样

    <QBWCXML>
      <AppName>Example WS</AppName>
      <AppID></AppID>
      <AppURL>https://localhost/Quickbooks.asmx</AppURL>
      <AppDescription>Example Service Service</AppDescription>
      <AppSupport>https://localhost/</AppSupport>
      <UserName>Etile</UserName>
      <OwnerID>{XXXXB9B1-86F1-4fcc-B1EE-566DE1813D20}</OwnerID>
      <FileID>{XXXX4FB5-33D9-4815-AC85-BC87A7E7D1EB}</FileID>
      <QBType>QBFS</QBType>
      <Scheduler>
        <RunEveryNMinutes>1</RunEveryNMinutes>
      </Scheduler>
    </QBWCXML>
    

    当您将应用程序添加到 QuickBooks 的 Web 连接器时,系统会提示您允许应用程序访问 QuickBooks 数据。您需要选择最后一个选项“是,始终;即使 QuickBooks 未运行也允许访问

    并且不要忘记从您的 Web 服务的 authenticate() 方法返回公司文件的完整路径。

    一个示例 SOAP 响应将是:

    <?xml version="1.0" encoding="utf-8"?>
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://developer.intuit.com/">
      <SOAP-ENV:Body>
        <ns1:authenticateResponse>
          <ns1:authenticateResult>
            <ns1:string>1e3ea2ed-a734-03e4-ed8c-80eb12f19845</ns1:string>
            <ns1:string>C:\Quickbooks Company File.QBW</ns1:string>
          </ns1:authenticateResult>
        </ns1:authenticateResponse>
      </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    

    请注意,如果您使用的是quickbooks-php,则出于某种原因必须添加manually。 Web 连接器文档和新的QuickBooks integration wiki 都缺乏对这一细节的明确说明。

    【讨论】:

    【解决方案2】:

    我对此一头雾水,但在与 Intuit 通了 4 个小时的电话后,最终让 2 级开发团队参与其中,他们让我了解了有关这个模糊不清的错误的更多细节。当您收到此错误时,问题不在于它无法启动快速手册,而是您从服务器请求的请求试图错误地打开文件。会导致这种情况的事情。文件名错误,文件路径错误。您的请求格式不正确。
    在我的情况下,我们的文件名是正确的,但是我的服务器应该提取文件的路径,您可以在 hkey_current_user\software\intuit\qbwebconnector\soapwebservices\ 的注册表中确认该文件的路径,查找 companyfile,您会看到名称和完整路径。

    希望这有助于有人处理这个模糊的错误。

    【讨论】:

      【解决方案3】:

      日志数据显示 -> 用户已通过身份验证,这意味着 .qwc 文件格式正确。身份验证后,Web 连接器向 QuickBook 发出连接请求,在您的情况下失败。

      通过网络连接器连接到 QuickBooks 桌面的步骤是:

      1. 在管理员模式下运行 Web 服务和 QuickBook 桌面应用程序
      2. Web 服务名称和 QuickBook 公司名称应相同
      3. 在多用户模式下运行 QuickBook 桌面,以便您也可以通过 Web 连接器连接 QuickBook。
      4. 在 Web 服务代码中,如果用户是真实的,则使 authReturn[1]="" // 连接到当前在 QuickBooks 中打开的公司文件

      它对我有用。 祝你一切顺利。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多