Link to home
Start Free TrialLog in
Avatar of art44
art44

asked on

Visual Basic & Lotus Notes

What is the best way to develop a VB & lotus notes program? Is using MAPI the best way and does Lotus have any codes that are used with the MAPI? Any examples would be helpful.
Avatar of dirtdart
dirtdart

Lotus Notes isn't MAPI compliant.  The Notes mailboxes are actually "Databases" that reside on a central server (or can be localized).  One way would be to try using ODBC on the database (I haven't tried this yet, so I don't know if it will work).  Notes is also DDE compliant, so you can share information in that way.  If you have the notes documentation, there is also a set of Notes API calls that can be helpful in developing Notes applications.
Avatar of art44

ASKER

Lotus Notes in the manual says it supports MAPI.It allows mail integration between Notes and a MAPI-complaint messaging application.
It supports the Lotus Notes Application sending MAPI compliant mail.  This lets it interface with another mail server to send and receive messages.  It doesn't use MAPI sessions like Outlook or Eudora.
Lotus Notes is reputed to be an ActiveX container application, so you have some leverage via that route.  Also, notes is extendable using their own component(s) architecture, so bridge building potentials exist there.  Go to Lotus.com andcheck out their component architecture area for other ideas.  
ASKER CERTIFIED SOLUTION
Avatar of sachinkas
sachinkas

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Hi Art,

I have send you one more code. Check your mail.

Else this is the code,

Actually there should be no question of names.nsf as this file is the address book database and is no way related the program.
Is notesclient loaded on the m/c where this program from vb is running,
and is your notesclient getting connected to the server
If it is, and still there are problems then do these simple steps:
1. Create a database named say trials.nsf
2. In trial.nsf create a form named sample and a textfield say txtsample
3. Go in VB and paste  the following code:

* if your database is on your server then specify the server name in
*the statement
* Set db = session.GetDatabase("<servername>", "c:\notes\data\f.nsf")  
'Put here the path  of your database.

*or else make sure your data base is local and put in it,
Set db = session.GetDatabase("", "c:\notes\data\f.nsf")   'Put here the path



Private Sub Form_Load()
Dim session As Object
Dim db As Object
Dim doc As Object

Set session = CreateObject("Notes.NotesSession")
Set db = session.GetDatabase("", "c:\notes\data\f.nsf")   'Put here the path
of your database.

MsgBox "connection established"
Set doc = db.CreateDocument()
doc.Form = "sample"
doc.txtsample = "hello"



Call doc.Save(True, False)
End Sub

Just give a proper path.
This works.

From sachinkas@hotmail.com
Hi Art,

1. Change the name f.nsf to trials.nsf in the VB code
2. Go in Notes and open the database trials.nsf
3. In that open the document and you will see Hello.

Check your mail

From sachinkas@hotmail.com
 


Avatar of art44

ASKER

I had to make a few changes to the code but it was very helpful.