Lotus notes 如果在对任何文档进行更改后未正确阅读

Lotus notes 如果在对任何文档进行更改后未正确阅读,lotus-notes,lotusscript,Lotus Notes,Lotusscript,我在表单中有一个按钮,使用If-else检查查看的文档列表中是否有“If”状态为“Lock”的文档,我将提示messagebox“首先完成PC检查!”。所以 首先,单击按钮后,代码运行,一切正常。然后我尝试再次单击按钮,但没有做任何更改,它将提示messagebox 但是,当我更改任何文档并将状态更改为其他文档(如“活动”)时,我返回表单并单击按钮,它不会提示消息,但会跳过第一个If并继续执行else 下面是我的代码: If doc.PStatus(0) = "Lock" Then Ms

我在表单中有一个按钮,使用If-else检查查看的文档列表中是否有“If”状态为“Lock”的文档,我将提示messagebox“首先完成PC检查!”。所以

首先,单击按钮后,代码运行,一切正常。然后我尝试再次单击按钮,但没有做任何更改,它将提示messagebox

但是,当我更改任何文档并将状态更改为其他文档(如“活动”)时,我返回表单并单击按钮,它不会提示消息,但会跳过第一个If并继续执行else

下面是我的代码:

If doc.PStatus(0) = "Lock" Then
    Msgbox "Complete PC Inspection first!"
    Exit Sub
Else
    answer% = Messagebox("Do you confirm with this infomation?", 4,"Batch Number")
    Some code...
    ...
End If

我想做的是,如果视图中的任何文档仍处于“锁定”状态,则该按钮将不会转到“else”。当视图中没有“锁定”状态时,它将继续执行“其他”。任何帮助都将不胜感激。谢谢

最好使用包含所有锁定文档的视图,按PC键排序。或者使用按键和状态排序的视图,这样您就可以为特定的PC挑选所有锁定的文档。如果没有,GetDocumentByKey将不返回任何内容。

Notes中内置了调试器。工具->调试LotusScript。在打开数据库并单步执行代码之前激活它。然后你可能会发现为什么你的对象会被刷新。什么是文档?您在哪里访问视图?您的代码不完整。您需要重新编写问题。MsgBox和Messagebox是同一个函数,所以我不知道你说“它将提示Messagebox”和“它不提示Messagebox”是什么意思。它提示哪个Messagebox?它不提示哪个Messagebox?你需要显示所有代码。你至少需要显示整个循环。我希望在某个地方一定有一个循环。