Structure of a Server/Views .ilv File
An .ilv file is made of a dynamic view type specification and a graphic description.
-
The dynamic view type specification details how the Server types are mapped to the Server/Views representation object types, namely IlsSwRepresentation, IlsSwTable and IlsSwRow, or their subtypes.
-
The graphic description is typically made of three kinds of graphic objects or gadgets defined in Server Studio.
-
IlsSwTableGadget or IlsSwHRefGadget objects,
-
Typically, this results in one Server data source and one or more table gadgets or other gadgets.
Reading an .ilv File
When reading the .ilv file, the representation:
-
stores the Server data sources found, detects all server-related callbacks, and registers the appropriate functions with the correct user data.
-
adds Activate callbacks to gadgets so that the data sources to which they are connected are immediately modified when the user modifies the gadget.
This is not the default behavior of Views gadgets, which would normally wait until the whole row is committed. This behavior can be modified from Server Studio by declaring the data source as “autocommit”.
-
The other gadgets are read and displayed normally.
Server Data Sources
The Server data source handles the contents of all representations. For each representation, the Server data source holds two memory data sources (instances of the class IliMemoryDataSource): the Main data source and the Properties data source. These are the data sources that must be connected to gadgets via Server Studio.
Multiple Server Data Sources
You can have more than one Server data source in an .ilv file. However, the behavior is then slightly different. Since only one Server data source can be present in a representation, the mvsw library uses the appropriate Server data source when opening a new representation.
For this scheme to work, you need to declare all the Server data sources as view parameters in the representation, as explained in Server Data Sources Used as View Parameters. If a Server data source is supplied as a view parameter, the IlsSwRepresentation object is initialized in a slightly different way: instead of fetching the name of the .ilv file and reading it into an IlvGadgetContainer object, the representation assumes that this has already been done. Although the .ilv file is an Views resource file, it is also used by the server to parse the view specification attached to the Server data source.