We help IT Professionals succeed at work.

We've partnered with Certified Experts, Carl Webster and Richard Faulkner, to bring you a podcast all about Citrix Workspace, moving to the cloud, and analytics & intelligence. Episode 2 coming soon!Listen Now


Looking for suggestions on creating a menu of databases for easy access by users.

cinamitton asked
Medium Priority
Last Modified: 2013-11-16
I have about 10 databases for a business unit that they have requested a menu in Notes that will just present their databases to choose from.  Need some suggestions on the best way to create    
a menu or list for the users to access these databases.
Watch Question

Well, the easiest way is to simply rely on the server's database catalog (catalog.nsf).

Each database has a property on the design tab that allows you to automatically list the database in the catalog.  Plus, you can set a category so that your users can find grouped applications.
Another idea is to create your own "portal" database that lists all resources in your organization.  I have something similar to this in my environment.  Not only does it list and launch databases, but can also organize external resources such as web sites, network shares, etc...
If you already have a database, and just want to add a menu to it, you can implement this in many different ways:

1) Create a Navigator where each entry opens a different database.
2) Create a page or form, then add links for each database.
3) Create an agent that will allow the user to choose the database from a picklist.

... there are many more ways to do this.  I'll wait until I hear back to continue.
Oops, #1 above should read...

1) Create an Outline where each entry opens a different database.

Navigators are clunky.  I haven't used them since R4.

This function is from well known database in Lotus world - AdminACL.

The function fills its arguments with database names which resides on strServer, of type iDBType (nsf or ntf - for values see GetFirstDatabase in Designer help).

Then display the list using dialogbox in multivalue field on subform. When the dialog closes the value of the field will hold selected entries...
Function GetDBNamesList( strErrMsg As String, strServer As String, iDBType As Integer, strDBsList() As String, strDBsPathList() As String ) As Variant
	Dim dbdir As NotesDbDirectory
	Dim db As NotesDatabase
	Dim iCountAccess As Integer
	On Error Goto ErrorHandle
	On Error 4072 Goto ErrorServerNotExist
	GetDBNamesList = False
	'Count how many we have
	iCountAccess = -1
	Set  dbdir = New  NotesDbDirectory( strServer )
	Set db = dbdir.GetFirstDatabase( iDBType )
	While Not( db Is Nothing )
		iCountAccess = iCountAccess + 1
		Set db = dbdir.GetNextDatabase
	'Erase all old values if exists
	Redim strDBsList( 1 )
	Redim strDBsPathList( 1 )
	'allocate space for new values
	Redim Preserve strDBsList( iCountAccess )
	Redim Preserve strDBsPathList( iCountAccess )
	iCountAccess = -1
	Set db = dbdir.GetFirstDatabase( iDBType )
	While Not( db Is Nothing )
		iCountAccess = iCountAccess + 1
		If Len( Trim( db.Title ) ) > 0 Then
			strDBsList( iCountAccess ) = db.Title
			strDBsList( iCountAccess ) = "-No Title-"
		End If
		strDBsPathList( iCountAccess ) = db.FilePath
		Print "Collecting information from database no. " & Cstr( iCountAccess + 1 ) 'Started with zero - so add one
		Set db = dbdir.GetNextDatabase
	GetDBNamesList = True
	Exit Function	
	strErrMsg =   "An error occurred :" &  strNewLine & "Line : " & Cstr(Erl)  &  strNewLine & "Number : " & Cstr( Err ) & strNewLine & "Text : " & Error$ 
	Print   "Error( SetDBNamesFromServer ):" & "  Line : " & Cstr( Erl )  & ", Number : " & Cstr( Err ) & ", Text : " & Error$ 
	Goto EndScript	
	strErrMsg = "Unable to connect to server!"
	Resume EndScript	
End Function

Open in new window



Thanks for the input.  The executive making the request does not like having to sort through all the databases using file open database on the server he wants to just see his business units databases in a single list.  I would like to create a button or menu drop down or folder icon that just lists their databases that can be easily pushed out to the individuals that work in that area.  Does that help narrow down the options?
>> "Does that help narrow down the options?"

Not really.  The menu has to reside somewhere, usually in a Notes Database.  It is possible to extend the Notes client's main menu using C, but I've never done it.

>> "The executive making the request does not like having to sort through all the databases using file open database on the server he wants to just see his business units databases in a single list."

That is what the catalog is for.  Open one database (the catalog), and you see all of the databases on your servers grouped by category.



Could I create and outline or page with links in one database and have it appear in all their databases in a frame?


Using an outline what is the procedure for opening another database?
First, you will need the Domino Designer client.  Are you familiar with Lotus / Domino development?


I have been a Notes Admin for 10 years but just recently been asked to work on some databases but have used the designer some creating some simple Call tracking and warranty databases.  Worked a little with Lotus Script also.
OK, there are many ways to create an outline entry that opens another database, but the easiest way is to just copy a database link to the clipboard and paste it directly into the outline entry.

First, create a new outline in your application database.
Then, for each database...

1) Copy a database link to your clipboard (or any type of link for that matter).
2) Click the "New Entry" button to add an entry to the outline.
3) Give the outline a Label.
4) Change the Type setting to "Link".
5) Click the "Paste" button next to the "Value" setting.  The name of the database will appear in the "Value" setting and the "Link Type" will be set to "Database".

That's it.  Once you're done creating the outline, just add it to a page or form, set the outline's display properties, and your done.

Not the solution you were looking for? Getting a personalized solution is easy.

Ask the Experts



Thanks for the instructions.  Tested it and it works great.
Access more of Experts Exchange with a free account
Thanks for using Experts Exchange.

Create a free account to continue.

Limited access with a free account allows you to:

  • View three pieces of content (articles, solutions, posts, and videos)
  • Ask the experts questions (counted toward content limit)
  • Customize your dashboard and profile

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.


Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.