【问题标题】:Data get render on Desktop Excel using office.js, but on Chrome Office 365 its give an error "There was an error processing the request."使用 office.js 在桌面 Excel 上呈现数据,但在 Chrome Office 365 上它给出错误“处理请求时出错”。
【发布时间】:2020-08-26 14:35:28
【问题描述】:

我们正在使用 Office js 库在 Excel 上呈现数据。 2000 多行Desktop Excel 上运行良好。 但是,当在 Chrome office 365 上使用相同的 API 时,它会给出错误消息 “处理请求时出错。”

请看附件截图。

随着数据变大,Chrome Office excel 无法呈现数据。 请帮助我们,因为这是我们应用程序中的障碍,我们的生产正在受到影响。

【问题讨论】:

  • 我猜你达到了有效载荷大小限制,单行的大小是多少?
  • 我在 Ajax 调用中收到如下响应对象格式。 {"resultRow":[{"Date":"2019-05-01T05:00:00.000+0000","Class of ":"0","Account ID (FA)":"123","Account": "ABC","Account2":"PQR"} ...] 并且在 resultRow 数组中有大约 2000 行。每个行对象包含大约 4-6 列。同样尝试使用 Office js 的 Excel.run 函数在 excel 上呈现。 @RaymondLu
  • 能否尝试拆分操作,看看是否仍然遇到错误?

标签: javascript office365 office-js office-addins office365api


【解决方案1】:

与 Excel 工作簿交互时有 2 个限制当您构建 Excel 加载项时

  • Web 上的 Excel 对请求和响应有有效负载大小限制 5MB。如果超出该限制,将引发 RichAPI.Error。
  • 获取操作的范围限制为 500 万个单元格。

根据您的描述,在我看来您遇到了有效负载大小问题。我建议在调用 context.sync() 之前检查数据。根据需要将操作拆分为更小的部分。确保为每个子操作调用 context.sync() 以避免这些操作再次被批处理。

另一个技巧是利用 RangeAreas 策略性地更新更大范围内的单元格。有关详细信息,请参阅在 Excel 加载项中使用 multiple ranges simultaneously

【讨论】:

    猜你喜欢
    • 2019-05-06
    • 1970-01-01
    • 1970-01-01
    • 2020-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-05
    • 1970-01-01
    相关资源
    最近更新 更多