2005-09-26

Python から COM 経由で Lotus Notes にアクセス

Lotus Designer で、データベースの Category と Subject を操作するスクリプトを書いていました。ついさっき、Python から COM 経由で簡単に実現できると気づいてしまって、がっかりです。言語ではなく、Lotus Designer という開発環境に慣れていないことが、時間がかかる理由だと思います。



下のコードは、Lotus Notes のデータベースから、Task ドキュメントつまり TODO を抜き出すジェネレータです。




def tasks():
session=win32com.client.Dispatch("Lotus.NotesSession")
session.initialize(password)
db=session.GetDatabase("","hoge.nsf")
documents = db.AllDocuments
for i in range(documents.count):
doc = documents.GetNthDocument(i)
if doc.GetItemValue("Form")[0]==u"Task":
yield doc