Question

I wanted to connect to the lotus notes database, so I am using COM

$session = new COM("Lotus.NotesSession");

Now I want to know which methods are supported in this object and How to use them. Actually my intention is to scan all the data for a particular pattern of data.

Was it helpful?

Solution

Here is a link to the doc for the NotesSession class, and an index for all the other related classes available for working with data from Notes and Domino.

As the concepts of Notes and Domino development are somewhat different from what most people are used to, I recommend that you look for some tuturial material. Unfortunately, you're not going to find any tutorials specifically directed toward PHP, but the programming model is going to be essentially the same regardless of the language. Although it's quite old, this free IBM Redbook probably covers all the basics of the programming model. Also, PDFs of an even older Java-oriented book by the original developer of these classes, who gives a lot of clear insights into the concepts of Notes and Domino, is posted here.

As far as the way to "scan all the data for a particular pattern goes", the NotesDatabase.Search or NotesDatabase.FTSearch methods could be of interest to you -- but it's really difficult to know exactly what you mean by that. Doing what you actually need to do, and doing it efficiently, may require a completely different approach.

OTHER TIPS

I don't know anything of COM in php. If there is no documentation for COM using Lotus, maybe you can use Reflection to get information of it.

http://www.php.net/manual/en/class.reflectionobject.php

try com_print_typeinfo
E.g.

<?php
$obj = new COM('Word.Application');

com_print_typeinfo($obj);

$obj->Quit();

prints

class _Application { /* GUID={00020970-0000-0000-C000-000000000046} */
[...]
/* DISPID=386 */
/* VT_BOOL [11] */
var $FocusInMailHeader;

/* DISPID=1105 */
function Quit(
    /* VT_PTR [26] [in] --> VT_VARIANT [12]  */ &$SaveChanges,
    /* VT_PTR [26] [in] --> VT_VARIANT [12]  */ &$OriginalFormat,
    /* VT_PTR [26] [in] --> VT_VARIANT [12]  */ &$RouteDocument 
    )
[...]

Here is a link to the documentation for COM in IBM Notes: http://publib.boulder.ibm.com/infocenter/domhelp/v8r0/index.jsp?topic=%2Fcom.ibm.designer.domino.main.doc%2FH_4_LOTUSSCRIPT_NOTES_CLASSES_REFERENCE.html

Below is a list of methods and properties of the NotesSession class. But you need to use other classes as well, lithe the NotesDatabase class and the NotesDocument class, and possibly others (depending on what you want to do, and what approach you take to it). You should attempt to get an understanding of the DOM (Domino Object Model) before you start.

Anyway, here is the list:

Properties

AddressBooks

CommonUserName

ConvertMime

CurrentAgent

CurrentDatabase

DocumentContext

EffectiveUserName

HttpURL

International

IsOnServer

LastExitStatus

LastRun

NotesBuildVersion

NotesURL

NotesVersion

OrgDirectoryPath

Platform

SavedData

ServerName

URLDatabase

UserGroupNameList

UserName

UserNameList

UserNameObject

Methods

CreateAdministrationProcess

CreateColorObject

CreateDateRange

CreateDateTime

CreateDOMParser

CreateDxlExporter

CreateDxlImporter

CreateLog

CreateName

CreateNewsletter

CreateRegistration

CreateRichTextParagraphStyle

CreateRichTextStyle

CreateSAXParser

CreateStream

CreateTimer

CreateXSLTransformer

Evaluate

FreeTimeSearch

GetDatabase

GetDbDirectory

GetDirectory

GetEnvironmentString

GetEnvironmentValue

GetPropertyBroker

GetUserPolicySettings

HashPassword

Initialize

InitializeUsingNotesUserName

New

ResetUserPassword

Resolve

SendConsoleCommand

SetEnvironmentVar

UpdateProcessedDoc

VerifyPassword

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top