【发布时间】:2014-10-21 19:00:42
【问题描述】:
基本上我想做的是在另一个表单中创建一个表单并将值从早期表单传递到第二个表单。我知道很复杂,但这就是我得到的。
@Do(@Command([Compose];"LPK"); @SetField("PR_Make"; PR_Make))
两个表单中的字段具有相同的名称,并且在尝试保存第一个文档时调用此代码。 我认为不是在第二个表单上编辑字段,而是将字段保存为本身。任何帮助表示赞赏。
【问题讨论】:
基本上我想做的是在另一个表单中创建一个表单并将值从早期表单传递到第二个表单。我知道很复杂,但这就是我得到的。
@Do(@Command([Compose];"LPK"); @SetField("PR_Make"; PR_Make))
两个表单中的字段具有相同的名称,并且在尝试保存第一个文档时调用此代码。 我认为不是在第二个表单上编辑字段,而是将字段保存为本身。任何帮助表示赞赏。
【问题讨论】:
最好和常用的方法是在第二种形式“LPK”中启用表单属性“公式从选定文档继承值”。
将默认值公式添加到您要继承的第二个表单的字段中,并将字段本身的名称放入其中。对于您的示例默认值公式,它将是
PR_Make
确保先保存文档,然后再创建新文档。
【讨论】:
@Command([FileSave]); @Command([Compose];"LPK");?如果没有,请将您的完整公式添加到您的问题中。
Knut Hermann 的答案是实现此类目标的“标准”方式,但还有其他方法 - 例如,您可以使用环境变量..
类似:
@Environment("PR_Make") := PR_Make;
@Command([Compose];"LPK");
然后将新表单中 PR_Make 的默认值设置为 ..
@Environment("PR_Make")
仅供参考 环境变量被写入用户的 Notes.ini 文件,因此即使在 Notes 关闭并重新打开后仍然存在。 @Environemt 不能很好地与 Web 应用程序配合使用,因为它使用服务器的 notes.ini。
另一种方法是使用配置文件:
@SetProfileField( "PRDefaults"; "PR_Make" ; PR_Make;@Username);
@Command([Compose];"LPK");
.. 在新表单上 PR_Make 的默认字段中:
@GetProfileField( "PRDefaults"; "PR_Make"; @Username);
个人资料文档作为一种隐藏文档存储在 Notes 数据库中,并与数据库保持一致。最后一个参数按用户名设置进一步细分,因此每个用户都有自己的个人资料文档 - 有点像“PRDefaults”的个人资料。您可以错过最后一个参数@Username,每个数据库都有一个配置文件文档,但存在两个人同时尝试使用它并发生冲突的风险。
个人资料文档也适用于网络应用程序。
【讨论】: