The Company
Products
Solutions
Services and Support
Customers
Partners
News
Events
Home >> News >> WebFOCUS Newsletter >> Current Issue >> GUI Schmui! Cool Things in the GIS Definition File

GUI Schmui! Cool Things in the GIS Definition File

by Bob Hazelton

The GUI interface is a wonderful thing but it seldom takes care of all the features that a product can perform. The GIS Definition Editor is a case in point. With a bit of knowledge, though, you can make some little changes to the definition file that can yield impressive results.

The WebFOCUS GIS Definition Editor is a product feature used to edit the XML-based definition file that the WebFOCUS GIS Adapter uses. The XML file contains details about the WebFOCUS Application, the FEX files associated with the map service, layering information and other components of a Geographical Business Intelligence Solution.

A Kinder, gentler map display

Someone once described the way the map images appeared as "too harsh" because as the image became available the map viewer instantly switched to display it. We were asked if the new image could gradually fade in to view. Well, ask and ye shall receive.

Navigate to the WebFOCUS application directory you wish to work in and locate a file named esriinfo.xml. Open the file with a text editor and search for mapwindow. If the file was created prior to 7.6 you will need to add the following attributes:
fadedelay="50"
fadefactor="20"

The value for fadedelay controls the pause between the phases of fading the image into view. A good number is 50, as in milliseconds.

The value for fadefactor controls the trans-parency of the image that will occur with each phase of the image appearing. A recommended value is 20, as in one-fifth or 20 percent.

These two attribute settings together mean that the new map image will smoothly appear in 250 milliseconds or one-fourth of a second. It is a nice effect. Experiment with the two values and see which your users like best.

More, more, MORE selected map features

The default maximum number of features that can be selected from the map is 2,000. This is due to most RDBMS's translating the WHERE or IF clauses to WHERE columnName in (value1, value2,…,value2000);

Each relational DBMS is slightly different but they all have limits on the length of the values for a WHERE…IN list. A default limit of 2,000 was a safe value that would work in the vast majority of situations.

But you are the guru of your database and you know that 2,000 is a mere pittance, a veritable drop in the bucket. Search for the attribute name maxfeatureitems in the esriinfo.xml file. You may change the value to accommodate the largest map feature query result that you allow.

Keep in mind that with great power comes great responsibility. Increasing the value will mean additional processing on the GIS side as well as the WebFOCUS side of the processing equation. Proper testing will help you gauge the effect of the change you make.

Become a legend in your own display

The default settings for the map legend display are contained within the defaultlegenddisplay tag in the esriinfo.xml file. Here are the default values:
<defaultlegenddisplay
setAutoExtend="true"
setBackground="255,255,255"
setCanSplit="false"
setFont="Verdana"
setLayerFontSize="10"
setTitleFontSize="12"
setValueFontSize="8"
setWidth="180"
/>

Here are explanations of what these functions can change:

setAutoExtend extends the legend to accommodate information for all layers.

setBackground sets legend background color using RGB values.

setFont sets the font to use for all the legend text.

setLayerFontSize sets font size for the layer labels.

setTitleFontSize sets font size for the legend title.

setValueFontSize font size for the map feature titles.

setWidth= sets the width in pixels of the legend image.

Since you as the developer have control over the content of the legend when a map procedure is invoked, you get to decide if the default legend display values are acceptable for your purposes. The value that is most frequently changed is the number of pixels for the setWidth function. The default is pretty thin. Setting the value higher means that the text your FEX generates is more likely to fit on one line of the legend and not wrap to the next line.

In the next installment of the ongoing GBIS adventure we will begin to explore the world of "synthetic layers."