Examples: Lock method (NotesDocument - LotusScript®)

This view action attempts to lock the current document for all members of the "Guys" group. Locking is successful if the document is not yet locked, or the document is locked but the effective user is a member of Guys. A provisional lock is allowed if the administration server is not available.

%INCLUDE "lsxbeerr.lss"

Sub Click(Source As Button)
  Dim session As New NotesSession
  Dim db As NotesDatabase
  Set db = session.CurrentDatabase
  
  REM Exit if locking is not enabled
  If Not db.IsDocumentLockingEnabled Then
    Print "Document locking not enabled"
    Exit Sub
  End If
  
  REM Get selected document
  Dim dc As NotesDocumentCollection
  Dim doc As NotesDocument
  Set dc = db.UnprocessedDocuments
  Set doc = dc.GetFirstDocument
  
  REM Lock the document
  REM Not locked if return is False or error is raised
  On Error Goto errh
  If doc.Lock("Guys", True) Then
    Print "Document locked"
  Else
    Print "Document NOT locked"
  End If
  Exit Sub
errh:
  If Err() = lsERR_NOTES_LOCKED Then
    Print "Document NOT locked"
  Else
    Messagebox "Error " & Err() & ": " & Error(),, "Error"
  End If
  Exit Sub
End Sub