I am writing a content management system for our web site. I have a frameset createdfor the back-end management that I want to open a specific saved document.
I have a @DbLookup that retrieves the current users Department name, then I want to
the frameset to do a @DbLookup to open a document in a view that has that Department name in a field.
Is this possible in a frameset? I’ve looked around on here and haven’t found any details
Every department has a “home page” that is created with a notes form. This form has a bunch ofembedded views on it and I want them to only access this form after they’ve created it. When
the DB Launches, I want to have a navigator on the left side, and this homepage form to open. I don’t
want to open a new form though, I want it to open an existing form based one what their computed Department
name is. So, what I’ve tried to do so far is have a @DbLookup on names.nsf to retrieve the department name
but I don’t know how do get the frame to get a document and open it for viewing.
Is there a formula from a frameset that will allow me to open the first document in a view in a frame?
I’m not sure of your knowledge level so I’ll start at the basics…
If you view source for any frameset you’ll see it’s very simple…typically less than 10 lines. (note: not view source for a frame inside the frameset…that’ll be complex…but just the frameset itself…typically view source from a menu in IE and not right-clicking).
If you copy the source from an existing frameset you can paste it into a form. Set the form’s content type as HTML. and then you can view the form by previewing it, but use ?ReadForm instead of ?OpenForm.
Now that you’re convinced that you can serve up an exact copy of your original frameset from a form instead of just a frameset design, have a look at the frameset code in the form you designed. You’ll notice that the default content for each frame is specified in the frameset html.
Since you’re now serving up the frameset from a form, you should know that you can pass any set of values to a form through appending “&keyA=blahblah&keyB=xyzabc” and the like. These values can be accessed in the form design through Query_String…and you can read up about it in the Designer Help. Also, take a look at @WebDbName and @URLQueryString (R6 features by the way, but any version of Domino can get at the Query_String and simulate @WebDbName through longer methods…the R4/5 forum should have lots of answers there).
It’s pretty simple to change the hard-coded frame source references to a “Computed Text” element that uses @WebDbName and @URLQueryString to display whatever default content you want for each frame.
For example, if you always want a top navigation frame that is static you’d have that frame src always compute to “/” + @WebDbName + “the rest of the url”. However, if the content frame is variable the src reference would be along the lines of “/” + @WebDbName + “/maybeotherstuff” + @UrlQueryString(“contentId”) + “the rest of the url”. You’ll have to assemble your own URLs and I can’t give you much more advice here without knowing more. The URL that would launch your frameset with custom content would be along the lines of “http://www.acme.com/path/database.nsf/framesetForm?ReadForm&contentId=whateveryouwant”. You’d use “/” + @WebDbName to get the first part dynamic and then you can set the rest up however you want. I typically pass a doc UNID and then assemble my frame source to go to the document through a view sorted by UNID. You can pass multiple variables/values if you need to.
I hope this helps. It’s a very powerful tool once you get the hang of it.