MS Access Client: LotusScript/COM/OLE to Web Access

Posted on 2005-04-15
Last Modified: 2013-12-18
We have a number of Access applications that include VBA code to reference LotusScript objects to carry out 2 main functions:

1. Search all available Lotus Notes Address Books for a particular name and return all matches. This functionality opens each of the ADDRESSBOOKS attached to the current Notes SESSION, then through the "people" VIEW cycles through each document to see if the name matches the search criteria, and if so the First Name, Middle Initial and Last Name, and the
FullName or MailAddress or ShortAddress are returned to be inserted in a list for the user to select from.

2. Send Email including attachment(s) if required. This functionality opens the default mail database within the current Notes SESSION and creates a new mail Document. If attachments are required these are attached to the document. Values are set for Subject, Body, SendTo, DeliveryReport and SAVEMESSAGEONSEND is set to true. The document is then sent.

The intention is to allow the sending of emails from within the application without having to switch applications. We did not use the SendTo method in Access because it insists on bringing up dialog boxes to select which Outlook Profile to use etc.

The users are now planning to move up to Domino 6.51 and away from the client version, preferring to go down the Web Access route. I would welcome any suggestions on how we can best replace the existing functionality that relies on the Lotus Notes client being on the PC, with similar functionality that does not.
Question by:Sean_B
    LVL 31

    Expert Comment

    Well, that IS a tough one.  There has to be some connection somewhere, and some protocol somewhere.  Currently, your connection is the Notes client to Domino server connection, and your protocol is the Notes COM API.

    So, what other connections and protocols are there?

    1) CORBA/IIOP. Requires that you have a library that VBA can use to access CORBA, and that you have the NCSO.jar (which describes the AP to the CORBA client).  You woudl also have to configure the server to allow IIOP requests.  So, you do need some components on the client side, and you do need some configuration on the server side.

    2) SMTP and LDAP.  For sending only, you can contact the Domino server as a standard SMTP server.  But you really have no way to do name lookups in SMTP -- for that you need to do LDAP lookups, because Domino can also be a standard LDAP server.  You will need components that suport SMTP sending and LDAP queries, and you will have to configure teh server to support LDAP.

    3) Web interface.  You can design a basic DOmino web application that supports querying the address book and sending messages.  Get it to work as simply as possible for a web browser.  Then, use the same underlying web calls that the user makes via the browser, but completely automated from VBA.  I did some things like this once.  It isn't that hard, but it is a bit of a weird setup.

    4) You MAY be able to do this with a DOLS client, which is really a slimmed down Domino server. Thing is, it does not register its Notes COM API, so you would have to figure out a way to register it and call it.

    Author Comment

    Thanks for your suggestions. It is reassuring to know that it is not just me thinks this is a tough one !

    If I was to go down the web interface route, you say I could make web calls completely automated from VBA. How would I go about that ? Are you talking about using an embedded web browser control, controlling navigation and reading the properties of the html documents ? I have done something like this for a totally different type of web application, and it is a bit flakey...
    LVL 31

    Accepted Solution

    You can do it with embedded controls.  You can also do it with external calls to the Windows API.  In WinINet.dll, there are several functions that alow you to do POSTs.  You just have to DECLARE them and call them.  Fairly simple and stable.  The ones of interest are:

    InternetGetCookie (used for session login)

    Write Comment

    Please enter a first name

    Please enter a last name

    We will never share this with anyone.

    Featured Post

    Better Security Awareness With Threat Intelligence

    See how one of the leading financial services organizations uses Recorded Future as part of a holistic threat intelligence program to promote security awareness and proactively and efficiently identify threats.

    I thought it will be a good idea to make a post as it will help in case someone else faces these issues. I trust this gives an idea how each entry in Notes.ini can mean a lot for the Domino Server to be functioning properly. This article discusses t…
    Notes Document Link used by IBM Notes is a link file which aids in the sharing of links to documents in email and webpages. The posts describe the importance and steps to create a Lotus Notes NDL file in brief.
    Sending a Secure fax is easy with eFax Corporate ( First, Just open a new email message.  In the To field, type your recipient's fax number You can even send a secure international fax — just include t…
    This video discusses moving either the default database or any database to a new volume.

    758 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    8 Experts available now in Live!

    Get 1:1 Help Now