A lotus view open in a browser is very ugly but you can greatly improve using stylesheets (css); here I explain how to use the css in a lotus view in order to improve the look and feel and to display rows in alternate colors.
Category: Lotus
In this article I implement the Navigator and Dynamic View Panel controls of the XPages Extension Library in a similar way to the navigator and views in a frameset of a lotus database open using the lotus client.
In the xml code of the xpages the computed expressions begin with the character “#” or with the character “$”, ie they are one of the following types:
- value=”#{[language]:[expression]}”
- value=”${[language]:[expression]}”
where [language] is the name of the language, for example javascript and [expression] is the expression to compute.
The question is “what is the difference between the two cases?”.
In this post I test how to access via javascript to the following controls connected to a lotus field:
- Edit Box: a control for entering a single line of data
- Hidden Input: a control for hiding data to the user
A Hidden Input control is not such as an Edit Box control with “Visible” unchecked (or with property rendered set to False) because an invisible Edit Box control is not rendered in the page, not even in the html code with an attribute type=”hidden”.
The Form Layout Column control allow you to place the various controls (such as Form Layout Row) on multiple columns.
In the post The Form Table and Form Layout Row controls of the Extension Library I built a xpage with two Form Layout Row controls at different lines, using two Column Layout Form controls you can place the two Form Layout Row on two different columns on the same line.
The Form Table and Form Layout Row controls allow you to easily implement a form with the fields and their labels.
In this post I use these two controls to convert the form “Document” to xpage in a database that inherits from the template Doc Library – Notes & web (8.5).
In a lotus form you can hide the fields enabling the check box “Hide paragraph from Web browser” in the window of the properties of the field but in this way the field is not generated as a hidden field, i.e. a html tag input with attribute type=”hidden” is not generated and you can’t access to its value from a browser, for example using javascript.
This is a different behavior from that one using a lotus client where you can still access to the hidden fields using lotusscript and formula language.
I found this command to use on the console of the domino server to rebuild a specific corrupted view in a lotus database without rebuilding all the views of the database:
lo updall -R [database] -T [view]
where [database] is the path to the database and [view] is the name of the view.
The javascript and css code used in a lotus form can also be useful in other forms, and so it is best to save it only one time in a shared place.
The pages works well for this purpose and in this post I explain how to create page containing JavaScript code and css and attach it to a form.
Consider the following scenario:
a lotus form containing an embedded view and an embedded editor, the 2 embedded controls are linked together according to targeting by linking an embedded editor to an embedded view.
The embedded editor contains a button that tries to get the current document (often called uidoc) with the code:
Sub Click(Source As Button) Dim w As New NotesUIWorkspace Dim uidoc As NotesUIDocument Set uidoc = w.CurrentDocument End Sub
but this code returns the NotesUIDocument of the document linked to the embedded editor and not the NotesUIDocument linked to the main document.