mvm835
asked on
If..Then..Else Statements - Multiple statements
I need to "enhance" the evaluation method used in setting the end result of a field. The following script evaluates the rich text field to determine if there is an attachment (see below). If there is an attachment, the status is changed to Status = "6 - Appraisal Completed" (and Statusflag5 = "1"); if the attachment is not found the Status = "5 - Management Review" (and Statusflag5 = "0").
I need to keep the functionality already in place, plus add the following evaluation:
If field "Level" equals "Review" change Status to "5 - Management Review)(and Statusflag5 = "0").
This step needs to be added to the current evaluation process that's already in the script. (After the field "Level"is evaluated, the attachment field needs to be evaluated (same as current).
Function ValidateAppraisal_Report (Field As String) As Variant
'Validation to find if there is atleast one attachment in this document
Dim ws As New NotesUIWorkspace
Dim uidoc As NotesUIDOcument
Dim note As NotesDocument
Dim rt As NotesRichTextItem
Set uidoc = ws.CurrentDocument
Set note = uidoc.Document
AttachmentFound = False
Call uidoc.Refresh(True)
Set rt = note.GetFirstItem( Field )
' Check for attachments in the richtext item
emobjs = rt.EmbeddedObjects
If Isarray(emobjs) Then
Forall emobj In emobjs
If (emobj.Type=EMBED_ATTACHME NT) Then
AttachmentFound = True
End If
End Forall
End If
' Set the flags
If AttachmentFound Then
note.Status = "6 - Appraisal Completed"
note.Statusflag5 = "1"
Else
note.Status = "5 - Management Review"
note.Statusflag5 = "0"
End If
Print "Attacment Found: " & AttachmentFound
ValidateAppraisal_Report = AttachmentFound
End Function
I need to keep the functionality already in place, plus add the following evaluation:
If field "Level" equals "Review" change Status to "5 - Management Review)(and Statusflag5 = "0").
This step needs to be added to the current evaluation process that's already in the script. (After the field "Level"is evaluated, the attachment field needs to be evaluated (same as current).
Function ValidateAppraisal_Report (Field As String) As Variant
'Validation to find if there is atleast one attachment in this document
Dim ws As New NotesUIWorkspace
Dim uidoc As NotesUIDOcument
Dim note As NotesDocument
Dim rt As NotesRichTextItem
Set uidoc = ws.CurrentDocument
Set note = uidoc.Document
AttachmentFound = False
Call uidoc.Refresh(True)
Set rt = note.GetFirstItem( Field )
' Check for attachments in the richtext item
emobjs = rt.EmbeddedObjects
If Isarray(emobjs) Then
Forall emobj In emobjs
If (emobj.Type=EMBED_ATTACHME
AttachmentFound = True
End If
End Forall
End If
' Set the flags
If AttachmentFound Then
note.Status = "6 - Appraisal Completed"
note.Statusflag5 = "1"
Else
note.Status = "5 - Management Review"
note.Statusflag5 = "0"
End If
Print "Attacment Found: " & AttachmentFound
ValidateAppraisal_Report = AttachmentFound
End Function
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
I wherent able to repost my correction, but here it is zvonko :-)
If AttachmentFound And Not(note.Level(0) Like "Review") Then
If AttachmentFound And Not(note.Level(0) Like "Review") Then
Do you know that Like operator is used for Regular Expressions?
OptionCompare Text?
You mean instead of "=" in LotusScript, no i didnt.
But syntatical it get more explicit reading using Like...
But syntatical it get more explicit reading using Like...
That's the point: Like do not compare Text, it compare text against a pattern.
You use an exception that your pattern is the text itself, but be aware of special characters when used in pattern string.
You use an exception that your pattern is the text itself, but be aware of special characters when used in pattern string.
I thought it compared using Text (upper/lower/wild) comparison, provided using the option compare text..?
As long as you do not use this chars: ?*#[]!
you get your readability by driving huge machine for simple compare.
Read here more:
http://doc.notes.net/domino_notes/5.0.3/help5_designer.nsf/078c27b23262ffff852566dd0029426a/4ade97d29a4ea80b8525687e0058971b?OpenDocument&AutoFramed
you get your readability by driving huge machine for simple compare.
Read here more:
http://doc.notes.net/domino_notes/5.0.3/help5_designer.nsf/078c27b23262ffff852566dd0029426a/4ade97d29a4ea80b8525687e0058971b?OpenDocument&AutoFramed
If AttachmentFound Or (note.Level(0) Like "Review") Then