Get server environment variables from a script running on a workstation

This tip is for getting the full directory path on which Domino is installed (on the server), in a querysave done from a Notes Client. The database itself resides on the server.

To do this, create an agent to get the directory using session.getenvironmentvariable("Directory",True) and write the value to a profile document in this agent. Then in querysave, execute an agent.runonserver and grab the value from the profile document.


The code for the getdirectory agent is:

Dim s As New notessession
Dim directory As String
directory = s.getenvironmentstring("Directory", True)

Dim db As notesdatabase
Set db=s.currentdatabase

Dim doc As notesdocument
Set doc=db.getprofiledocument("Directory")
doc.directory=directory
Call doc.save(True,False)

The relevant code in the querysave:

Set currdb = s.currentdatabase

Dim agent As notesagent
Set agent=currdb.getagent("getdirectory")
stat = agent.runonserver

For i=1 To 10000

Next

Dim doc As notesdocument
Set doc=currdb.getprofiledocument("Directory")
Messagebox doc.directory(0) 

This was first published in August 2001

Disclaimer: Our Tips Exchange is a forum for you to share technical advice and expertise with your peers and to learn from other enterprise IT professionals. TechTarget provides the infrastructure to facilitate this sharing of information. However, we cannot guarantee the accuracy or validity of the material submitted. You agree that your use of the Ask The Expert services and your reliance on any questions, answers, information or other materials received through this Web site is at your own risk.