Examples: IsReadOnly property (NotesStream - LotusScript®)
This agent opens a stream for a file and writes to it. If the file is read-only, the agent exits.
%INCLUDE "lsconst.lss"
Sub Initialize
Dim session As NotesSession
Dim db As NotesDatabase
Dim dc As NotesDocumentCollection
Dim doc As NotesDocument
Dim stream As NotesStream
Dim pathname As String
pathname = "c:\StreamFiles\"
Set session = New NotesSession
Set db = session.CurrentDatabase
Set dc = db.UnprocessedDocuments
Set doc = dc.GetFirstDocument
Set stream = session.CreateStream
pathname = pathname & doc.GetItemValue("Subject")(0) & ".txt"
If Not stream.Open(pathname, "ASCII") Then
Messagebox pathname,, "Open failed"
Exit Sub
End If
If stream.IsReadOnly Then
Messagebox pathname,, "File is read-only"
Exit Sub
End If
If stream.Bytes <> 0 Then
If Messagebox("Do you want to abort?", _
MB_YESNO + MB_ICONQUESTION, _
"File exists and has content?") = IDYES Then
Exit Sub
End If
If Messagebox("Do you want to replace the old content?", _
MB_YESNO + MB_ICONQUESTION, _
"Rewrite or append?") = IDYES Then
Call stream.Truncate
Else
Call stream.WriteText(Chr(13) & Chr(10))
End If
End If
Call stream.WriteText(doc.GetItemValue("Body")(0))
Call stream.Close
End Sub