Lotus notes 重命名LotusNotes文档

Lotus notes 重命名LotusNotes文档,lotus-notes,Lotus Notes,我有一个数据库,它(通过代理)创建文档的5个副本,并使用新的表单名称存储它们(因此原始表单名称为“MasterProfile”,代理制作文档的5个副本,并使用XXXX.form=“UserProfile”将其命名为UserProfile)。这很好,当我查看Ytria中的表单/文档时,一切看起来都很好,表单“UserProfile”下有5个文档 现在在UserProfile文档中有一个热点,它从用户那里获取文档响应并使用 @If(@Command([FileSave]);@Command([Fil

我有一个数据库,它(通过代理)创建文档的5个副本,并使用新的表单名称存储它们(因此原始表单名称为“MasterProfile”,代理制作文档的5个副本,并使用XXXX.form=“UserProfile”将其命名为UserProfile)。这很好,当我查看Ytria中的表单/文档时,一切看起来都很好,表单“UserProfile”下有5个文档

现在在UserProfile文档中有一个热点,它从用户那里获取文档响应并使用

@If(@Command([FileSave]);@Command([FileCloseWindow]);“”)

我遇到的问题是,当@Command[FileSave]运行时,它会将文档保存回原始名称“MasterProfile”。我已尝试将表单字段设置为正确的名称

字段形式:=“UserProfile”

但那没什么用

有人知道我可能遗漏了什么吗?为什么复制的文档不保留为UserProfile而不是转换回MasterProfile


谢谢你的帮助

您应该设置另一个字段,而不是使用表单字段。在UI中保存文档时,表单字段将始终由注释设置

例如,您可以创建一个DocType字段并将其设置为MainProfile或UserProfile。然后,在任何适当的Notes视图中,您都可以添加该DocType列来代替正在显示的表单列。我不确定Ytria是如何工作的,但希望您可以通过表单字段之外的另一个字段查看


如果您确实需要为此使用表单字段,您可以尝试通过PostSave事件更新表单字段,但我不确定这是否可行。

您应该设置另一个字段,而不是使用表单字段。在UI中保存文档时,表单字段将始终由注释设置

例如,您可以创建一个DocType字段并将其设置为MainProfile或UserProfile。然后,在任何适当的Notes视图中,您都可以添加该DocType列来代替正在显示的表单列。我不确定Ytria是如何工作的,但希望您可以通过表单字段之外的另一个字段查看


如果您确实需要为此使用表单字段,您可以尝试通过PostSave事件更新表单字段,但我不确定这是否可行。

在开始解决问题之前,我认为解决您关于问题原因的问题很重要。有几个可能的原因:

1) 在数据库设计中没有名为“UserProfile”的表单,“MasterProfile”表单是数据库中的默认表单。如果是这种情况,那么每次在Notes UI中打开文档时,都会加载MasterProfile表单作为默认表单。因此,当您保存文档时,表单字段中的值将更改为加载的表单名称,即“MasterProfile”

2) 数据库中确实有一个“UserProfile”表单,但它的别名设置为“MasterProfile”。在Notes UI中保存文档时,表单项实际上将根据表单的别名而不是主名称进行设置,因此这将导致表单字段更改为“MasterProfile”

3) 数据库中确实有一个“UserProfile”表单,但表单上有一个名为“form”的计算字段,该字段的公式实际上是“MasterProfile”。在Notes UI中保存文档时,表单字段的计算值将覆盖加载表单的名称和别名,因此这将导致表单字段更改为“MasterProfile”

4) 您的应用程序正在使用一个很少使用的Notes功能,称为“表单公式”。即,打开文档的视图的设计有一个值为“MasterProfile”的表单公式。视图中的表单公式会导致UI使用公式结果覆盖存储在文档中的表单字段。使用表单公式的一个令人讨厌的副作用是,当您保存文档时,表单字段中的值将被保存为覆盖的名称,即“MasterProfile”

实际上还有其他几种可能性,但我认为它们比上述任何一种可能性都要小

#1的解决方案是创建一个名为“ProfileSubform”的子表单,并将“MasterProfile”的全部内容(字段和事件脚本)复制到其中。然后将MasterProfile表单完全擦拭干净,并将新的子表单插入其中。然后创建一个“UserProfile”表单,并将MasterProfile表单插入其中。(Ken Pepisa的建议也很好,但是我建议的优点是,您可以在不对应用程序进行任何其他更改的情况下完成此操作。)

#2的解决方案是去掉或更正“UserProfile”表单的别名

#3的解决方案是删除或更正“UserProfile”表单上的表单字段


#4的解决方案问题更大。如果您可以在视图中删除表单公式,请执行以下操作。。。但这可能是有原因的。您可能必须使其更智能,并且/或者您可能必须接受Ken的建议。

在开始解决问题之前,我认为解决您关于问题原因的问题很重要。有几个可能的原因:

1) 在数据库设计中没有名为“UserProfile”的表单,“MasterProfile”表单是数据库中的默认表单。如果是这种情况,那么每次在Notes UI中打开文档时,都会加载MasterProfile表单作为默认表单。因此,当您保存文档时,表单字段中的值将更改为加载的表单名称,即“MasterProfile”

2) 数据库中确实有一个“UserProfile”表单,但它的别名设置为“MasterProfile”。在Notes UI中保存文档时,表单项实际上将根据表单的别名而不是主要名称进行设置,因此这将导致表单失败