我有一个可编辑的字段。另一个计算字段值取决于可编辑字段的值。
在可编辑字段的退出事件中,我添加:
Dim workspace As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Set uidoc = workspace.CurrentDocument
Call uidoc.Refresh
但它仍然不起作用。如果我检查表单属性Automatically refresh fields
,它就可以了,但表单性能下降,速度非常慢。
有什么建议吗?谢谢!
答案 0 :(得分:3)
Lotus Notes始终从左到右,从上到下计算整个表单。 如果计算字段位于字段上方,触发刷新,则它无法访问第一次刷新时可编辑字段的“新”值。
您需要2x Call uidoc.refresh
才能使计算字段反映更改。
或者您将计算字段移动到可编辑字段以下,然后只需一次刷新即可。
或者,您可以选择使用onBlur- Event而不是exiting-事件作为“on” - 事件旨在替换Lotus Domino / Notes版本6以来的“Classic”Field事件。检查this link to Designer Help以查看类似的提示
The corresponding LotusScript-only events still occur, but their continued use in Release 6 applications is discouraged.
onBlur: New for LotusScript with Release 6
和
Exiting: Preferred is onBlur
答案 1 :(得分:1)
在可编辑字段的事件“OnBlur”中,切换到Client / LotusScript)并仅添加:
notesuiuiworkspace.CurrentDocument.Refresh
不要忘记删除现有的那个。