0

当我在 Exact Online 上执行以下查询时:

use 450*** /* Replace anonymized *** by last three digits of division. */

set use-http-disk-cache false

set use-http-memory-cache false

select * from ExactOnlineREST..DocumentAttachmentFiles where id = to_guid('8b60ccb6-e89d-4397-a4ca-001d6f57a4eb')

我收到一个错误:

itgenoda074: Uw sessie is verlopen. Meld je opnieuw aan. [Session expired]
itgenoda074: Not authenticated. Request to 'https://start.exactonline.nl/docs/SysAttachment.aspx?ID=8b60ccb6-e89d-4397-a4ca-001d6f57a4eb&_Division_=450***' gave response from 'https://start.exactonline.nl/docs/SysAccessDenied.aspx?Mode=128&_Division_=450***'.

这会在长时间会话之后直接发生,也可以在登录后直接发生,因此令牌仍然有效。

如何使用 Invantive SQL 访问文档?

我拥有所属公司的 Exact Online 环境的所有权限。

4

1 回答 1

1

以下内容无济于事,因为它是递归 API 调用(从文件元数据到实际 blob):

set ignore-http-403-errors false

但是您可以在递归检索实际二进制 blob 期间忽略任何错误:

set ignore-document-download-errors true

之后,运行以下查询以确定与附件关联的文档 ID:

select document from ExactOnlineREST..DocumentAttachmentFiles where id = to_guid('8b60ccb6-e89d-4397-a4ca-001d6f57a4eb')

并将文档 GUID 放在以下查询中:

select * from exactonlinerest..documents where id=to_guid('VALUE FROM PREVIOUS QUERY')

可能您将检索 0 行。有时文档附件文件仍然存在,而文档不再可用。

如果是这样,请自行向 Exact Online 报告。他们的 API 应该返回参考正确的数据。

如果没有,请扩展您的问题。

于 2018-08-24T14:05:27.387 回答