RichardStarkey
asked on
Getting an external Common Name / Not a member : Evaluate
Hi All,
I've got a small problem. I'm trying to get the common name of an external e-mail address. I'm using the From field on the memo form and it's not as easy as doing Left and Rights due to the unpredictable format of the external email addresses. For example the From field could be:
"Richard Starkey" <rstarkey@mail.com> or
Richard Starkey <rstarkey@mail.com> or
richardstarkey@mail.com
I've been trying to use the evluate statement to get the Given Name to see how this would work but keep getting a script error: "Not a member : Evaluate". Below is the pertinent code in my script..
--------------
Dim sess as New NotesSession
Dim externalPrincipal as Variant
externalPrincipal = sess.Evaluate("@Name([G]; From)", maildoc)
-------------
Anybody know what I'm doing wrong or a better way to do it?
If you want to play around with names, use the NotesName object.
Dim nn= New NotesName(maildoc.From(0))
There are many properties that can be retrieved from a NotesName. Please see the Help-db.
Dim nn= New NotesName(maildoc.From(0))
There are many properties that can be retrieved from a NotesName. Please see the Help-db.
Use @Name(Phrase];From) to get Richard Starkey or "Richard Starkey"
For internet address.. use @Name([Address821]; From).. which returns rstarkey@mail.com
~Hemanth
For internet address.. use @Name([Address821]; From).. which returns rstarkey@mail.com
~Hemanth
Why use Evaluate in this case?
ASKER
I tried using maildoc.Principal at first but the external mails don't always have a Principal field.
I've also tried playing around with the NotesName option. But I found a problem with this is in that the From field wasn't recognised as a names field on an external mail so I got a type mismatch error.
I would give the @Name([Phrase]; From) a go but when I try to save I still get the "Not a memeber : Evaluate" error message!
To be honest, having looked at it I don't think it is that simple anyway. I basically need the value that is displayed in the 'Who' column of the users Inbox and formula for that is pretty complicated.
I've also tried playing around with the NotesName option. But I found a problem with this is in that the From field wasn't recognised as a names field on an external mail so I got a type mismatch error.
I would give the @Name([Phrase]; From) a go but when I try to save I still get the "Not a memeber : Evaluate" error message!
To be honest, having looked at it I don't think it is that simple anyway. I basically need the value that is displayed in the 'Who' column of the users Inbox and formula for that is pretty complicated.
ASKER
Hi All,
I've worked out the "Not a member : Evaluate" error message. Evaluate is a standalone function and is not a member of the NotesSession class. So just using the following does not through an error:
externalPrincipal = Evaluate("@Name([G]; From)", maildoc)
Unfortunaltey, the From field on an external mail is not recognised as a notes name so none of the @Name abbreviations work anyway!
I've worked out the "Not a member : Evaluate" error message. Evaluate is a standalone function and is not a member of the NotesSession class. So just using the following does not through an error:
externalPrincipal = Evaluate("@Name([G]; From)", maildoc)
Unfortunaltey, the From field on an external mail is not recognised as a notes name so none of the @Name abbreviations work anyway!
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Even script object NotesName has phrase component... Check Addr822Phrase property in NotesName class
No one restricts you from not going for evaluate.. there is no reason.. that simple.
> Unfortunaltey, the From field on an external mail is not recognised as a notes name so none of the @Name abbreviations work anyway!
This is confusing... If you are working on the mail document then you should have from field , no matter where it is generated !
No one restricts you from not going for evaluate.. there is no reason.. that simple.
> Unfortunaltey, the From field on an external mail is not recognised as a notes name so none of the @Name abbreviations work anyway!
This is confusing... If you are working on the mail document then you should have from field , no matter where it is generated !
Hemantha, it almost makes you think that maildoc isn't a mailed document at all!
that is what it looks like...when he mentions about @name not recognizing the parts of the name
ASKER
Thanks! I think we've got it working. Sjef - I pasted in the longer version of the code from above and it seems to get the values. I can then use notesname.common to get the part of the name I want.
Great! Thanks for the points. Eh, are you in any way related to the, eh, drummer...? Or a big fan?
ASKER
Alas no relation! Just a fan of the band!!
tmpname=doc.Principal