Hallo,
ich möchte folgendes Erreichen:
Ein User soll über eine Anpassung in seinem Mailfile einen Request, zur Erstellung eines Volltxtindex für diese Datenbank, anfordern können. Dieser wird per Mail an eine zentrale DB gesendet wird.
Die User haben nur Editorzugriff auf Ihre Maildatenbank, daher können Sie das nicht selber machen. Ebenso sollen die Indexart/ Zeit für alle gleich sein.
Der Request landet als in der Datenbank, dort öffnen die Admin dieses Dokument und darin soll eine Schaltfläche sein, die dem Admin ermöglicht diesen Index zu Erstellen. Der Index soll dann ohne weitere Aktion aufgebaut werden, das heisst also nicht in die Datenbankeinstellungen des Mailfiles reingehen und das manuell einstellen.
Was ich bisher versucht habe:
Der Scriptbefehl: Call db.CreateFTIndex(loptions,True) geht nicht da er nur für lokale Datenbanken genutzt werden kann.
Daher habe ich es mit der API versucht:
Hier die Codefragmente:
Ich rufe einen Agent auf dem Server auf (RunOnServer) und übergebe das Requestdokument als Parameter.
Dim NULLHANDLE As Long
Declare Function NSFDbOpen Lib "libnotes.so" Alias "NSFDbOpen" (Byval dbName As String, hDb As Long) As Integer
Declare Function NSFDbClose Lib "libnotes.so" Alias "NSFDbClose" (Byval hDb As Long) As Integer
Declare Function FTIndex Lib "libnotes.so" Alias "FTIndex" (Byval hDb As Long, Byval options As Integer, stopfile As Long, stats As Long) As Integer
*****CODE ****
Print agent.name & ": Working on " & dbFilename
rc=NSFDbOpen(dbFilename, hDb)
Print agent.name & ": Open Database..."
If rc=0 Then
Print "Create FT Index"
Call FTIndex (hDb, FT_INDEX_ATT, NULLHANDLE, NULLHANDLE)
End If
Leider schmiert der Server bei der Call FTIndex voll ab.
Das ganze läuft nicht auf einem Windows Server sondern auf AIX und Z/Linux
Für Tips wäre ich sehr dankbar.