Anyone who has tried to open a database to a specified frameset knows that the @Opendatabase command followed by the @Openframeset command does not work. So, how can you do it? If formulas are an option, you can do it by setting an environment variable and using computed frames.
By submitting your personal information, you agree that TechTarget and its partners may contact you regarding relevant content, products and special offers.
Let's say in your target database (the one you want to open), you have two framesets: Employees and Supervisors. From your originating database, you wish to have two outline entries -- one to open the Employees frameset and one to open the Supervisors frameset. First, your outline entries will use a formula similar to the one below:
For the Employees outline entry: @Environment("variablename";"Employees"); OpenDBName := "targetdatabasename.nsf"; Server := "servername"; @Command([FileCloseWindow]) & @PostedCommand([FileOpenDatabase]; Server : OpenDBName))
The first line sets the environment variable in the user's notes.ini file. The remaining lines close the current window and open the target database.
For the Supervisors outline entry: @Environment("variablename"; "Supervisors"); OpenDBName := "targetdatabasename. nsf"; Server := "servername"; @Command([FileCloseWindow]) & @PostedCommand([FileOpenDatabase]; Server : OpenDBName))
The second part of the solution is to set computed frames in the target database. Create a new frameset, "Main." The Main frameset should only have one frame (you'll have to create it with two and then delete one of the frames). The frame properties should be set to a Named Element of type Frameset and a computed value something like:
@If(@IsNull(@Environment("variablename")); "Employees";@Environment ("variablename"))
This formulas says that if the environment variable is null, use the Employees frameset as the default, otherwise use the value of the variable.
Lastly, set the database Launch properties of the target database to open the Main frameset. The database will always open with the Main frameset, but the frameset that displays within Main will depend on the environment variable.
Do you have comments on this tip? Let us know.
This tip was submitted to the SearchDomino.com tip exchange by member Tammie Miller. Please let others know how useful it is via the rating scale below. Do you have a useful Notes/Domino tip or code to share? Submit it to our monthly tip contest and you could win a prize and a spot in our Hall of Fame.