Suppose you have written some agents (pull-down actions) that you want to install into another Notes database. How do you do this?
The options are limited. You can modify the design template for the target database and then ask users to refresh their database design from the template. But this forces all users to receive the new actions whenever they refresh. Another method is to send the agents to selected users in a temporary container database, along with instructions for how to copy-paste the agents into the target database. But this is an error-prone process for novice users. What we really want is a "Notes installer" similar to InstallShield that automatically, by pressing one button, performs the complete installation process. This tip describes just such an installer, which is available here from my web site: http://www.chc-3.com/downloads/agentinstaller.zip
Later in the tip I will explain how the installer can be modified to install other design elements also, such as forms and views. The installer is a Notes database consisting of four parts: the agents that will be copied into the target database; a special view that shows the agents; an Install button that copies agents from the installer database into the target database; and an Uninstall button to reverse the process.
- The agents that will be installed in the target database simply sit in the normal Agents list within the installer.
- The special view of agents is used by the install code to treat agents as documents, so they can be copied to another database. The view is stored in the standard view list, but it has been modified to make it show agents instead of documents. To see the code that creates the agent view, select the database on your Notes desktop, and then go to View / Go To / Documents / Fix Agent View / CTRL-E to enter edit mode / right-click the button / Edit Button. (These instructions are for R5; R6 may be slightly different.)
- The Install and Uninstall buttons live in the Help/About document. To see this code, select the database from Notes, then right click and choose Open In Designer / Resources / Other / About / right click on a button / Edit button. This installer always performs the installation into the local NAMES.NSF database. It is easy to see how the code can be modified though to allow the user to enter the path of the target database. The installer can also be modified so that it installs other design elements, such as forms, views, or icons. For information about how to do this, you can refer to an article in Dominopower.com by Dan Velasco.
Have fun, and please let me know about interesting ways you have used or modified this tool!
My thanks to Dan Velasco for his coding tips, Chris Pepin for his ideas, and to Paul Wiebe at PK Innovations for his support of this work.