IBM Support

How to allow the user to delete the iNotes profile in iNotes

Technote (troubleshooting)


At times it is necessary to recreate the iNotes profile, as action buttons will not work in iNotes, the best way to delete the iNotes profile is by creating the agent on the server, then having the users access it ,

It is also possible for the administrator to delete the various profiles of the user using the administrator client via the steps listed in tech-note #1088892 or using the "All-in-one Admin Tool" as listed in technote #1459332

What is stored in the iNotes profile:

    The iNotes profile is used to store settings that are either unique to iNotes or had to be duplicated by iNotes as the comparable Lotus Notes client setting is not accessible by iNotes because the setting resides on a Lotus Notes client workstation and not the Domino server (used only by Lotus iNotes).

Administrators / Users should be aware of the following when deleting the iNotes profile:
    Deleting the iNotes profile from a users mail file will mean that some settings may be lost, but only if they have been changed from the default settings, e.g. a signature. Once the profile is deleted iNotes itself will re-create it with the default settings. Meaning that some settings may need to be set again.

Resolving the problem

1. Create a database on the server (with any name e.g. BagOTrix)
2. Create an agent (using the following LotusScript) that is scheduled to Run "Never" with a target of None
Sub Initialize()
On Error GoTo ErrorLand

Dim session As New NotesSession
Dim thisDB As NotesDatabase
Dim targetDB As NotesDatabase

Dim targetServer As String
Dim targetDBStr As String

Dim docContext As NotesDocument
Dim prof As NotesDocument

Dim errorStr As String
errorStr = ""

Set docContext = session.Documentcontext

targetServer = StrRight(docContext.HTTP_Referer(0),"//") ' gets rid of
targetServer = StrLeft(targetServer, "/")
targetDBStr = StrLeft(docContext.HTTP_Referer(0), ".nsf")
targetDBStr = StrRight(targetDBStr, targetServer + "/") + ".nsf"
'Print "<br>targetServer: " + targetServer + "<br>targetDB: " +

Set targetDB = session.Getdatabase(targetServer, targetDBStr, false)
Set prof = targetDB.Getprofiledocument("iNotesProfile")
'Print prof.Universalid
Call prof.Remove(True)

If (errorStr = "") Then
GoTo Success
GoTo Failure
End If

errorStr = "Got error " & Error$ & " on line " & CStr(Erl)
Resume Next
Print "<html><body>"
Print "Your profile document has now been deleted from database: " +
targetDBStr + " on server: " + targetServer
Print "</body></html>"
Print "<html><body>"
Print "<p>An error occurred while deleting the profile document from
database: "_
+ targetDBStr + " on server: "_
+ targetServer + ":<br>" + errorStr + "</p>"
Print "</body></html>"


End Sub

3. Set Anonymous Access to the database to 'No access', and default access to Reader.
4. Send an email to the iNotes user with a link to the agent on the server for e.g where "" will be your servers fully qualified hostname (FQHN) and "BagOTrix.nsf" is the name of the database you created earlier.
5. When the end user clicks on the link they may be asked to log in again and then the agent will delete the profile document from their mail database

Document information

More support for: IBM iNotes

Software version: 7.0, 8.0, 8.5, 9.0

Operating system(s): Linux, OS X, Windows

Reference #: 1512367

Modified date: 30 November 2012

Translate this page: