Summer diet for your Notes Forms
The title I wanted to give this post was Spring clean your notes forms, but then it did get delayed....
One hallmark of Notes applications is their durability. It is quite common to find applications being in use, that root back into R3 or R4. Quite a number of these applications still look like that too. That's the flip-site of not needing to rip-and-replace. Sometimes you also will find, that older forms load slower and behave odd at times. Before you start beautifying your applications, it is a good idea to do some spring cleaning. To do so I use Domino's DXL to extract a form in XML, filter it through a XSLT transformation and reimport that into the database.
The LotusScript code is very straight forward, has been well covered on developer works and the help file and looks like this:
Set importer = session.CreateDXLImporter(stream, dbCopy)
importer.ReplicaRequiredForReplaceOrUpdate = False
importer.DesignImportOption = DXLIMPORTOPTION_CREATE
Call importer.Process<
The "meat" is in the transformation. The XSLT file consist of 4 principal sections that contain templates. In section 1 we find the start of the output including the wrapper and calls to various templates. In section 2 design elements are filtered out, in section 3 design elements are tweaked, finally in section 4 the remaining DXL is copied 1:1 to the resulting document; . The sequence of the sections is not relevant, since XSLT uses priorities not sequence to determine what element to apply. What are the elements you can or should spring clean:
- In DXL I found NotesItems between the
</body>
and the</form>
tag. Removing this from the form makes the form smaller, load faster without any change in behavior. - Font information is encoded inside the
<run>
tag. The<run>
tag is similar to HTML's<span>
. When you designed and re-designed forms over and over, there will be<run>
tags that only contain a font change, but not actual any characters. Filtering that out lightens the form - Filter out all paragraph formats and/or fonts to be able to apply a new look & feel more easily - Convert access controlled sections into subforms (to work in the web)
- Remove (all) LotusScript code and move it to libraries (see an upcoming SnTT post on "Classical Forms" about that).
Let us look at some code....
Read more
Posted by Stephan H Wissel on 27 April 2007 | Comments (1) | categories: Show-N-Tell Thursday