Exact Online REST API 系统部门和 XML API 管理部门中列出的不同公司

Different companies listed in Exact Online REST API system divisions and XML API Administrations

当我通过用户前端或直接使用 HTTP GET 使用端点 Administrations 下载公司列表时,我收到一个 XML,其内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<eExact xsi:...>
  <Administrations>
    <Administration>
    ...
    </Administration>

我也可以使用 REST 接收公司列表 API system/divisions

虽然在 XML API 中存在一些在 REST API 中不存在的字段,但两者中列出的公司数量和名称通常是相同的,反之亦然。

但是,有时内容会有所不同。例如,今天我遇到的情况是 XML 主题中只列出了 2 家公司,但 system/divisions 中列出了 900 多家公司。

直接使用 API 和通过 Invantive SQL 都会发生这种情况。

为什么结果不同?

所有主题都是使用特定公司(在 URL 中名为 division)读取的,以从中检索数据。

System/divisions REST API returns 当前用户可访问的所有公司,因此结果不取决于 URL 请求中使用的部门。

但是,XML 主题 Administrations returns 只有当前用户可以访问的公司属于 URL 请求中使用的部门的同一客户帐户.

客户帐户是 1 个或多个独立计费的公司的数量。对于企业家许可证,这通常是相同的公司列表。

但是,对于会计师来说,使用的公司是不同的,因为他们可能有数百个不同的客户,每个客户都有自己的许可证,而且许多公司都有自己的客户代码。

一般来说,使用system/divisions比较明智。

然而,当您需要额外的字段或例如公司的分类时,您将需要使用 XML API。确定检索 XML API 主管部门数据的最少公司数量的最简单方法是:

  • 首先检索所有system/divisions.
  • 对于customercode的每一个不同的值,找到一个除法,例如最小值。
  • 对于每个分区,访问终点 Administrations
  • 合并每一个的输出。

您还可以使用以下四种视图之一:

这些查询会计也可以访问的所有订阅的管理。