【问题标题】:Document custom properties not save in Office 365 for Windows文档自定义属性未保存在 Office 365 for Windows 中
【发布时间】:2018-08-28 16:52:31
【问题描述】:

我的 office js Word 插件代码将自定义属性保存到文档 customproperty 集合中。保存代码如下

    Word.run(function (context) {
        //method accepts property name plus value
        context.document.properties.customProperties.add(propertyname, value);
        return context.sync()
            .then(function () {
                console.log("Property saved");
            })
            .catch (function (e) {
            console.log("Error occured inserting property " + e.message);

        });
    });

当我使用 Office 365 for Windows(Word 桌面)创建文档并调用我的插件时,属性没有保存到自定义属性集合中。但是,使用 Office Online 创建文档时会保存这些属性。我修改了代码以包含一个 document.save 但它没有区别。 Office 365 for Windows 中设置的此要求是否有任何限制。我在版本 1803(构建 9126.2275 点击运行)。

在 Office 365 for Windows 中,当我单击 Info->Properties->AdvancedProperties->Custom 时,我什至可以看到自定义属性。但是,由于某些奇怪的原因,自定义属性没有保留在文档中,当我重新打开文档时,它们丢失了。这看起来像是 Office 365 for Windows 中 API 的错误。当我们通过代码向集合添加自定义属性时,它不会保存到文档中。即使我们在上下文调用之前包含一个 document.save,自定义属性也不会通过代码保存到文档属性集合中。所以我通过代码将自定义属性插入到文档中,然后点击 Word 菜单上的保存按钮。但是,这也没有将自定义属性保存到文档中。我可以将自定义属性保存到文档中的唯一方法是在文档中插入一些文本并点击菜单上的保存按钮。

【问题讨论】:

  • Office 平台产品团队使用 OfficeDev/office-js GitHub 存储库来跟踪/管理与 Office.js API 相关的问题。我建议您通过logging an issue 报告此问题,并附上此 Stack Overflow 帖子的链接,以便在问题解决后更新此帖子。
  • 您应该在帖子中添加edit 以添加更多详细信息,而不是将它们放入 cmets。您唯一应该在自己的问题上使用 cmets 的情况是,如果您是在回复首先对您发表评论的其他人(即使这样,大多数信息也应该添加到问题中)。

标签: office-js


【解决方案1】:

感谢您报告此问题。我实际上试图在引用的版本上重现它,但我无法做到。实际上我们现在有一个错误(已知问题),当您保存自定义文档属性并保存文档时,文档会保持脏状态,这意味着将提示用户再次保存文档(即使在创建属性之后并使用 UI 保存文档)。

虽然没有数据丢失,只是弹出“想要保存更改吗?”鉴于文档已显式保存,因此确实没有意义的对话框,但我观察到的是,即使用户选择不保存在该对话框上,属性仍然保持不变。

【讨论】:

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