在QuickBooks中注册集成应用程序

时间:2018-05-01 18:18:33

标签: c# quickbooks qbfc

我正在尝试将应用程序显示在QB中的Integrated Applications列表中。不知道我做错了什么。在按钮点击事件上我的代码如下:

QBSessionManager sessionManager = new QBSessionManager();
sessionManager.OpenConnection("", "QB Test");
sessionManager.BeginSession(@"PATH TO QBW FILE", ENOpenMode.omDontCare);

当我在没有打开QB的情况下运行时,我收到错误:

  

此应用程序无法登录此QuickBooks公司数据   自动归档; QuickBooks管理员可以授予权限   通过集成应用程序首选项。

QB打开后,我得到:

  

此应用程序尚未访问此QuickBooks公司数据文件   之前。只有QuickBooks管理员才能授予权限   首次访问QuickBooks公司文件。

打开QB,以管理员身份运行应用程序,打开一个新的QB窗口,我得到:

  

当多个QuickBooks实例正在运行时,不支持尝试连接到QuickBooks的应用程序。

我从未在集成应用程序列表中看到我的应用程序列出了允许其权限的程序

所以:

  • 安装了QB sdk
  • 拥有QB管理员帐户
  • 在集成应用程序中列出其他应用程序,例如misys
  • 非常困惑

3 个答案:

答案 0 :(得分:1)

使用QuickBooks可能会很痛苦,所以根据我的经验,这是我的2美分:

  1. 确保您在x86中构建应用程序
  2. 使用OpenConnection2而不是OpenConnection,因为不推荐使用OpenConnection方法 OpenConnection2("", "My Company", ENConnectionType.ctLocalQBD);

  3. 以单用户模式运行QuickBooks

  4. 如果您为QuickBooks设置了用户,请在QuickBooks中以管理员用户身份登录
  5. 以正常模式运行您的应用程序。如果以提升模式运行应用程序(以管理员身份运行),请确保QuickBooks也在提升模式下运行。
  6. 全部,您的应用程序应该能够连接到QB而不会出现任何打嗝。

答案 1 :(得分:0)

我已经看到在Windows中使用QuickBooks Enterprise版本时出现这种情况,当我的应用程序使用提升的权限运行时,但是在没有提升权限的情况下打开了QuickBooks。这种情况发生在我的情况下,因为我的应用程序被认为是由不同的Windows用户使用,因此QuickBooks试图打开一个新实例,而不是提示我允许访问。

我假设您正在使用Windows,因为,对于我的回忆,QuickBooks for Mac具有更有限的集成表面。

我会检查以确保您的应用程序和QuickBooks都不是以 Windows admin运行,并确保在首次请求访问时以QuickBooks管理员身份登录QuickBooks。如果成功,则应在QuickBooks中提示您使用模式请求访问。

答案 2 :(得分:0)

首次运行您的应用程序时,打开Quickbooks,以管理员身份登录,然后更改为单用户模式。然后运行您的代码,您将在QB中看到弹出窗口以授权该应用程序。

相关问题