Copyright 2008 by gINT Software. All rights reserved worldwide.

gINT Update README.TXT file

gINT 8 README.TXT

NOTES:
Some of the documentation below is in tabular form and requires that you view this document in a fixed font, e.g., Courier New.  If in Windows Write, place the cursor at the beginning of the document, hold down the Ctrl and Shift keys and then press the End key.  This will highlight the entire document.  Or use the Edit menu, Select All.  Then use the Character:Font menu item to select a fixed font (e.g., Courier).

====================
8.2.002 30Sep2008
====================
1. (Requires current VIP status)
The LandXML Site Map Import command, located under the File:Import/Export menu in all gIDraw applications, will import site map entities. Currently these are:
  Boundaries
  Breaklines
  Data Points
  CG Points
  Contours

Alignments and TIN surfaces are ignored and can be imported into the Alignments table and the Surfaces application in Input, respectively.

On invoking the command a dialog appears requesting the following information:
  File Name:  Select the file to import.

  Major Contour Increment:  Optional. If specified, the program places major contours in one layer and the others in another. This allows you to turn off the minor contours by making that layer hidden. If blank, all contour entities will be placed in one layer.

  Unspecified Text Height:  Optional. All of the entity types have text associated with them. However, only CG Points actually provide a text height. With the other entities, the text height is unspecified. If a value is not provided "1" is used. The value is in coordinate units. Therefore, if the site map units are meters, the text heights will be in meters.

In applications that allow layers, the entities, by default, are imported the following layers:
  BOUNDARIES
  BRAKELINES
  DATAPOINTS
  CGPOINTS
  CONTOURS_MAJOR
  CONTOURS_MINOR
  CONTOURS

CONTOURS_MAJOR and CONTOURS_MINOR are used if the Major Contour Increment is specified, otherwise the CONTOURS layer is used for all contours.

These default layers can be overridden using with properties specified under the File:System Properties dialog, LandXML Site Map Import tab. The follow three properties are specified for each entity layer:
  Layer Name
  Layer Color
  Entity colors same as Layer Color

Regardless of whether the default or user-defined layer names are used, the program creates a layer for text entities associated with each of the entity types named ENTITY_LAYER_NAME_TEXT. For example, if your boundary entities layer is called BOUNDARIES, the associated text layer will be called BOUNDARIES_TEXT. The text layer is given the same layer color as the main layer and its entities inherit the layer color if the main layer's Entity colors same as Layer Color property is marked. This configuration allows you to turn off the associated text, if you wish.

For gIDraw applications that do not support text entities (symbols), text entities are not imported.

2. (Requires current VIP status)
The gINTRules.BatchModeType property informs you of the type of batch process that is running by returning one of the following values:
  gr_BatchMode_Convert:  Convert Projects
  gr_BatchMode_Import:  Importing data
  gr_BatchMode_Recalc:  Recalculating current table
  0: No batch mode running.

For example, you might wish to not run gINT Rules during a project conversion. To do so, place the following code at the top of your Sub Main procedure:
  If gINTRules.BatchModeType = gr_BatchMode_Convert Then
    Exit Sub
  End If

The property is a finer-grained version of the gINTRules.BatchMode property which merely returns True if any batch process is running, False if not.

3. (Requires current VIP status)
The "Plot order of bars and lines" property of the column bar chart vs depth entity (under the Data Representation tab) specifies whether the data scale and vertical scale ticks print before or after the bars. This has significant visual effect if the bars are solid filled. In this case, with the bars plotting over the lines, the lines will not be seen where the bars plot. With the lines plotting over the bars, the lines will always be seen, regardless of the fill type of the bars.

4. (Requires current VIP status)
The gINTRules.GoogleEarth.AddScreenOverlay method allows displaying a logo or any other graphic image to a specific screen location on the Google Earth interface. The "Google" logo at the lower right of the screen is an example. The arguments are:
Name As String: Name associated with the image. This appears in the folder list at the right of interface. This can be empty ("").

Description As String: Description associated with the image. For example, your company name, Web site, and phone number. This appears in the folder list at the right of interface. This can be empty ("").

ImageFile As String: The name and location of the image file. The formats supported are:
  JPG BMP TIF TGA PNG JPEG TIFF PPM PGM

The location can be either on disk or a URL on the Internet:
  g:\my images\google earth\my logo.jpg
  http://www.gintsoftware.com/downloads/ge_icons/gint_logo.gif

ImageHandlePointX As Double: The X coordinate point on the image that will be moved to the screen coordinates defined below. The value unit can be a fraction or number of pixels (see description below).

ImageHandlePointXUnits As grGoogleEarthImageUnits: See description below.

ImageHandlePointY As Double: The Y coordinate point on the image that will be moved to the screen coordinates defined below. The value unit can be a fraction or number of pixels (see description below).

ImageHandlePointYUnits As grGoogleEarthImageUnits: See description below.

ScreenX As Double: The X coordinate point on the screen to which the image handle point will be moved. The value unit can be a fraction or number of pixels (see description below).

ScreenXUnits As grGoogleEarthImageUnits: See description below.

ScreenY As Double: The X coordinate point on the screen to which the image handle point will be moved. The value unit can be a fraction or number of pixels (see description below).

ScreenYUnits As grGoogleEarthImageUnits: See description below.

grGoogleEarthImageUnits can be one of the following constants:
  gr_GE_ImageUnits_Fraction
  gr_GE_ImageUnits_Pixels

That is, the unit values can be a fractional part of the image or screen (1 = far right/top, 0 = far left/bottom) or a number of pixels.
  Call gINTRules.GoogleEarth.AddScreenOverlay("gINT Logo", _
                                              "www.gintsoftware.com", _
                                              "http://www.gintsoftware.com/downloads/ge_icons/gint_logo.gif", _
                                              1, _
                                              gr_GE_ImageUnits_Fraction, _
                                              0, _
                                              gr_GE_ImageUnits_Fraction, _
                                              0.8, _
                                              gr_GE_ImageUnits_Fraction, _
                                              20, _
                                              gr_GE_ImageUnits_Pixels)

The above will place the gINT logo (located on our Web site) lower right corner (ImageHandlePointX = 1, ImageHandlePointY = 0) at 80% of screen horizontally and 20 pixels above the bottom of the screen.

5. (Requires current VIP status)
Fence alignment lines can have scales placed on them anywhere alignments are shown. In all locations, the following properties are associated with the scales:
Major Division:  Distance between major division ticks and numbers in coordinate units.

Major Tick Length: Length in coordinate units.

Number of Minor Divisions:  The number of minor divisions for each major division. The minimum value is 2.

Minor Tick Length: Length in coordinate units.

Number Height:  The text height of the scale numbers in coordinate units. Scale numbers print at each major division.

Number Font:  Text font

Number Offset:  Offset of number above the major tick in coordinate units.

Number Angle Offset: The angle of the scale numbers relative to the alignment at the location of the number. The default of 0 degrees indicates that the baseline of the number is parallel to the alignment section. The allowable values are 0 to 90 degrees.

The only required properties are the Major Division and the Major Tick Length. If you wish to see the station numbers, you will need to provide the Number Height. If you wish to have minor divisions, you will need to provide the number of minor divisions and the minor tick length.

For specifying alignment scales in the Input:Site Map application and in all Site Layout views in Output, the properties are set in Input:Site Map under the Site Map:Alignment Scale Display menu. The properties here are stored in the library and require literal values, that is, no expressions can be used.

For showing alignment scales on site map entities (log and fence reports), there is an "Alignment Scales" tab under the entity's property dialog. Here all the properties, except the font, can be expressions.

For showing alignment scales on fence, graph, and site map reports, there is an "Alignment Scales" tab under the report's properties dialog. Here all the properties, except the font, can be expressions.

On fence reports, alignment scales only when a site map is shown in a 3D view.

On graph reports, alignment scales only apply when a site map is shown on the graph.

6. (Available to all gINT version 8 clients)
The Print Order property is now exposed for all entities in the Symbol Design:Data Marker application.

7. (Requires current VIP status)
At output time if the report variables dialog is canceled, the output is terminated. This is new behavior but makes it consistent with all other behavior in the program. This behavior only occurs with the new dialog structure which is supported if VIP is current under version 8.2.

8. (Available to all gINT version 8 clients)
gINT requires that your regional settings use a period (.) for a decimal separator and a comma (,) for a thousands separator. If this is not the case, on startup the program will give you the option to have gINT change them for you. If you agree, the program will restart with the modified settings. On exiting the program your original settings will be restored.

=================
8.2.001 10Sep2008
=================
1. Initial release of 8.2. See Help:Contents:What's New in Version 8.2 and www.gintsoftware.com/upgrades.html.

=================
8.1.026 11Jun2008
=================
1. Maintenance release.

2. Updated Help file, dated 03 June 2008, is now available for download.

3. The "View Text" command caption (Correspondence Files under the File menu) has been changed to "View as Text" for clarity.

4. Clarification of the use of "" and <<Omit>> in export correspondence files:
Specifying a Source Expression of "" will export a blank into the target file. Specifying a Source Expression of <<Omit>> will suppress the export of that field to the target file when the target is not a database. For example, if exporting to Excel, target fields with the Source Expression of <<Omit>> will suppress that column in the final Excel file. With export to a database <<Omit>> acts exactly like "" since the fields in the target database already exist and <<Omit>> will not delete those existing fields.

5. Clarification of the use of the Output Condition property with repeating text entities:
The Output Condition of repeating text entities is evaluated once per output, not once per repetition. This is evaluated before the repetitions are generated so all the repetitions are output or nothing is output depending on whether the Output Condition expression returns False or True, respectively. If you want to suppress specific repetitions based on some criteria, do not use the Output Condition property. Instead, you must build the criteria into the text expression. In general:
  <<IIf(some condition,repeating text expression)>>

If "some condition" returns False, nothing will be output in the above expression. For example:
<<Let(Value = <<Lookup(<<ATTERBERG.Liquid_Limit>>,_
                       <<DataSetKey(<<#>>)>>_
              )>>_
)>>_
<<IIf(<<Get(Value)>> > 0,<<Get(Value)>>)>>

The above will only output liquid limits greater than 0.

6. If you build a .NET DLL for use with gINT Rules and include an installation project within your .NET solution, on building the solution, you will see the following warning:
Unable to find dependency 'GINT_LICENSE' (Signature='(null)' Version='1.2.1.1') of assembly 'Interop.gINT.dll'

Ignore this warning. The installer is looking for dependent files that you need to ship with your DLL. It sees a dependency within gINT for its license DLL and the installer can't find it. This is OK.

7. Clarification on offsets values generated on fence diagrams:
The FenceOffset system field generates a positive value when the borehole is left of the baseline, negative when right. Left and right are defined when you are standing on the baseline looking towards the end point, that is, when the starting point is at your back.

8. When exporting to a raster image file (JPG, BMP, etc.), setting the resolution too low can result in loss of information on the output, for example, text or lines not showing. The limit depends on color depth, page size, and your system. A resolution of 300 dpi appears to work in all cases.

9. In the Site Layout view of Output:Fences, on drawing a baseline (Fence Spec menu) the Draw Baseline menu, the repeat command button at the bottom of the screen are disabled. If the various baseline editing commands are executed from the Fence Spec menu and then the baseline is erased, the Draw Baseline menu is enabled and the editing commands are disabled. You will see this both under the Fence Spec menu and in the repeat command buttons. The general context menus will reflect the enabled/disabled properties of these commands as well.

10. On exporting to DXF in the Site Map application gINT exports all entities, including the PointIDs. These are exported to a layer called "POINTIDS". This layer is a gINT system layer in this application and is not seen in the Site Map application. You will see PointID entities (configured as text and polyline entities) when imported into a CAD application or any gIDraw application in gINT that supports text. In gIDraw applications that support layers you will also see the "POINTIDS" layer. If a DXF file exported from the Site Map application is reimported into that application, all entities on the "POINTIDS" layer will NOT be imported. System layers are only populated by the program.

11. Help Topic clarification:
The "Import Grid File (command)" help topic states:
"You can import a grid file of the form:

X<delimiter>Y<delimiter>Z

where there are no header or footer lines to the file, just coordinates. The <delimiter> can be a space, tab, or comma. For example:
625.3 205.3 1.063
625.3 305.3 6.662
625.3 405.3 10.42
725.3 205.3 2.345
825.3 205.3 2.889
725.3 305.3 2
725.3 405.3 9.706
....

This example has a space as the delimiter. The lines can be in any order but the X and Y values must be on a regular spacing."

"...the X and Y values must be on a regular spacing." Means that the points provided must fall on a rectangular grid with equal spacing in the horizontal and vertical directions and there can be no holes in that grid.


=================
8.1.025 30Jan2008
=================
1. Maintenance release.

2. In Input, in the File:Import/Export:Export to Database dialog, if a "Template to create database" is specified, by default the data in the template file is removed after the target database is created. By marking the "Do not remove data from Template" property the data remains in the template file is kept in the target database.

3. You have a table of chemical results (let's call it CHEMICALS) with one field for each chemical. For example:
Depth FERFS   ANTHN  etc.
(m)   (ppm)  (mg/kg)

You need to export to the CNMT group of an AGS file which requires the following structure:
...,"*CNMT_TYPE","*CNMT_RESL","*CNMT_UNIT",...

You would do this by creating one CNMT export group in the Data Design:Correspondence File application for each chemical. That is, you will be exporting as many times as chemicals to this group. Each group would have the following structure in the correspondence file:
CNMT,CHEMICALS
...
CNMT_TYPE,"FERFS"
CNMT_RESL,<<ExportKey>><<FieldUnits()>><<CHEMICALS.FERFS>>
CNMT_UNIT,<<FieldUnits()>><<FieldUnits(<<CHEMICALS.FERFS>>)>>
...

CNMT,CHEMICALS
...
CNMT_TYPE,"ANTHN"
CNMT_RESL,<<ExportKey>><<FieldUnits()>><<CHEMICALS.ANTHN>>
CNMT_UNIT,<<FieldUnits()>><<FieldUnits(<<CHEMICALS.ANTHN>>)>>
...

  A. Each group would map the CHEMICALS table to the CNMT group.
  B. The chemical type would be the literal name of the chemical.
  C. The result would be the contains the data fields for that chemical. The <<ExportKey>> tells the program not to export the record if there is no result for the current chemical. The <<FieldUnits()>> says that the unit for this field is nothing. If this is omitted the program would use the field unit for the first chemical that is exported.
  D. The unit exports the field unit for the current chemical. The first <<FieldUnits()>> says not to insert a unit header for this column. The second extracts the actual unit from the field for the current chemical.

An alternative to the units data is the following:
CNMT_UNIT,<<FieldUnits()>>"ppm"

This will work but if you changed the field units for a chemical you would have to remember to change the correspondence file as well. The first solution with <<FieldUnits(<<TABLE.Field>>)>> would change automatically.

Note the above samples show how the expressions will look in the Correspondence File application. Viewing the above in an ASCII editor the CNMT_TYPE expressions would look like:
CNMT_TYPE,"""FERFS"""

gINT stores the expressions using CSV (comma separate values) rules. These state that if a data field has quotes, the quotes must be doubled and the entire field surrounded in quotes.

4. The following construction in an expression will work:
  ...<<TABLE.Field1>> < <<TABLE.Field2>>...

This evaluates whether the value of Field1 is less than the value of Field2. The following will fail:
  ...<<TABLE.Field1>> <<<TABLE.Field2>>...

This is the same expression but with the space missing from the right side of the "<". The expression evaluator will not pick up Field2 properly. "<<<" will be flagged as an error. You will be instructed to either remove the third "<" if it is a typographical error or insert a space after the first "<".

Both of the expressions below will work:
  ...<<TABLE.Field1>> > <<TABLE.Field2>>...
  ...<<TABLE.Field1>>> <<TABLE.Field2>>...

The expression evaluator has no problem with the trailing ">>>". However, the program will still flag this as an error since we have seen clients who type the expressions manually (not a recommended practice; use the data tool!) inadvertently insert an extra ">". This will fail the expression under certain conditions. Further, it makes the expression more difficult to read. As with "<<<", you will be instructed to either remove the third ">" if it is a typographical error or insert a space before the last ">".

5. The behavior of the Web browser on the initial screen in gINT has changed due to popular demand. Previously, the initial Web page in a session was set to the last page accessed at the end of the previous gINT session. Now it is reset to the Home page.

6. Toolbox positioning capabilities were added to preview applications.

=================
8.1.024 20Dec2007
=================
1. Maintenance release.

2. Some multiple purpose network printers caused gINT to crash on printing or soon afterwards. This has been fixed.

3. The "PgAddl" system data item returns the additional page number on log reports. This is used in conjunction with the "Number of Additional Pages Expression" property. Returns 0 if the current page is within the main pages. If there are 3 main pages and 2 additional pages, when the page number is 1 to 3, PgAddl = 0. With Pg = 4, PgAddl = 1. With Pg = 5, PgAddl = 2. This allows writing expressions that determine which photo is to be printed on which page when photos are appended to the end of a log report. A sample test pit log report will be posted to the Web site in the next few weeks that illustrates the usage of this item.

4. Excluded zones in Site Layout view at output: If a zone is selected as "Excluded" in the Zone Filter picklist in an output application, moving into the Site Layout view, the excluded zones will be drawn in very light blue (or very light cyan if very light blue is selected as the override mark color in System Properties). Selected zones (Exclude property not marked) will be in very light green (or the override mark color in System Properties) and unselected zones in very light red. Clicking on an excluded zone will make it selected and not excluded. There is no way in the Site Layout view to mark a zone as excluded. This can only be done in the Zone Filter picklist in the main Output application view.

=================
8.1.023 29Sep2007
=================
1. Maintenance release.

=================
8.1.022 19Sep2007
=================
1. Maintenance release.

=================
8.1.021 10Sep2007
=================
1. During some technical support sessions, the support technician may need to show you something on his screen or may need to see your screen. gINT Software maintains an Internet Meeting site. This can be accessed quickly via the Help:Internet Links:gINT Software Internet Meeting Site menu item anywhere in the program.

=================
8.1.020 16Aug2007
=================
1. Clarification on some behavior of grid ticks around data frames (fences, graphs, histograms, site maps):
  A. If there is no line type specified for the data frame and a side does not have division numbers, ticks will not be shown.
  B. If a side does not have division numbers and the ticks are negative in length (are drawn outside the data frame), ticks will not be shown whether there the data frame is shown or not.
  C. In graph applications, cut out boxes will trim full length grids but not ticks.

The above applies to both the major and minor grid ticks.

2. The User Report Variables subdialog in the report properties dialog in Output applications does not allow addition of new variables nor the changing of the existing variable names. These operations can only be done in the Report Design applications. At output time only the variable values can be changed. Like all changes to report properties made at output time, none of the changes will be saved. The changes will only be in effect until the report is changed or the application is exiting. Then the properties specified in the Report Design applications will be restored.

=================
8.1.019 01Aug2007
=================
1. We have made a number of changes to the way our output engine evaluates expressions. Theoretically these changes should lead to significant reductions in output time. The amount of time depending on the expressions used by the report forms. We have found up to 50% time savings on some forms. Our test script outputs over 200 pages using about 150 forms. That script run has been reduced about 20%. However, for the vast majority of forms of low to moderate complexity you will not notice any difference.

The biggest change is in the way our expression evaluator handles conditional functions. The idea being that only the parts that need to be evaluated will be evaluated. For example:
  <<IIf(<conditional expression>,<expression to return if condition is True>,<expression to return if condition is False>)>>

With the previous coding, all three expressions were first processed before the IIf function was evaluated. Now, the code first processes the conditional expression, if that is True then only the True expression is evaluated, otherwise the False expression. This change applies to the following functions:
  Case
  DelimitData
  FirstData
  HasData
  IIf
  IsDate
  IsDateOnly
  IsNumeric
  IsTimeOnly
  Iterate
  Like
  Switch

You can use this new behavior to speed up some operations. For example, follow is a typical component model text expression:
<<FirstData(_
  <<ComponentDesc([SOIL DESCRIPTION])>>,_
  <<ComponentDesc([ROCK DESCRIPTION])>>,_
  <<LITHOLOGY.Description>>_
)>>

The two ComponentDesc functions can entail very large expressions to be evaluated at each depth in a borehole. Previously, all three expressions were evaluated before the FirstData function was processed. Now, if there are data in the SOIL DESCRIPTION then the ROCK DESCRIPTION and the LITHOLOGY.Description will not be evaluated. However, if there are no data in the SOIL DESCRIPTION, it will still be evaluated before moving onto the ROCK DESCRIPTION.

If the SOIL and ROCK DESCRIPTIONS are each handled in one table each, the above can be optimized with:
<<FirstData(_
  <<HasData(<<STRATA SOIL.Depth>>,<<ComponentDesc([SOIL DESCRIPTION])>>)>>,_
  <<HasData(<<STRATA ROCK.Depth>>,<<ComponentDesc([ROCK DESCRIPTION])>>)>>,_
  <<LITHOLOGY.Description>>_
)>>

The above assumes that all the soil description component fields come from one table and the rock description from another. If there is not value for the TABLE.Depth, then there is no use executing the ComponentDesc function.

WARNING: It is possible that the new evaluation process for conditional functions will cause some functions to fail that previously worked. Here is how it could happen:

<<IIf(Some condition,_
  <<Let(Some Variable = XXX)>>_
  Expression to evaluated if Some condition is True,_
  Expression to evaluated if Some condition is False_
)>>

Now let's say that without the expression to evaluate when the condition is False has "<<Get(Some Variable)>>" as part of it. With the previous behavior the Get would return the value set in the Let, even when the condition was False. With the new behavior, the True expression, including the Let will not be evaluated and the Get in the False expression will fail. The solution to the above is simply to move the Let above the IIf:
<<Let(Some Variable = XXX)>>_
<<IIf(Some condition,_
  Expression to evaluated if Some condition is True,_
  Expression to evaluated if Some condition is False_
)>>

The above problem is prototypical. It can be much more complex. For example, the True expression could be a complex User System Data expression with a Let buried in it that is used by both the True and the False expressions. If an expression fails after this update and you cannot track down the problem, please contact Support for assistance.

2. If the Depth Units Page 1 property of a log report is a number or empty, that property appears on the output screen and can be modified. The program obtains this property only from the screen version of the property, not the log report property. To enforce that, the report property is disabled in the output application. If the property has an expression, the screen version of the property is suppressed and the report property is editable.

The above behavior also applies to the Axis minimum, maximum, scale, and number of divisions for both axes and in both the Output:Graph and Output:Site Map applications. That is, if the original report property was a number or blank, it will appear on the output screen and the report property will be disabled at output.

3. Clarification on some behavior of grid ticks around data frames (fences, graphs, histograms, site maps):
  A. If there is no line type specified for the data frame and a side does not have division numbers, ticks will not be shown.
  B. If a side does not have division numbers and the ticks are negative in length (are drawn outside the data frame), ticks will not be shown whether there the data frame is shown or not.
  C. In graph applications, cut out boxes will trim full length grids but not ticks.

The above applies to both the major and minor grid ticks.

=================
8.1.018 03Jul2007
=================
1. Previously with repeating text entities only the Text property was searched for replacement of the repeat variable (<<#>>). Now the program also allows insertion of the repeat variable in the Height Override Expression property so that text heights can be adjusted for each repetition.

2. If a hot key is not assigned in a gINT Rule Add-In (e.g., My &Command would allow Alt+C to execute the command), the program automatically assigns one to one of the characters in the command label. It ensures that the hot key is not duplicated. If all the characters in the command label are used in the commands above the current command, no hot key is assigned.

=================
8.1.017 06Jun2007
=================
1. The "Horizontal Lines w/Data Edge options" property of the bar chart vs depth entity and associated column entity (Data Representation tab) draw horizontal lines at the depths of breaks in the data between the minimum and maximum data at those depths. This option only affects the three Data Edge options of the "Border Line Options" property.

2. To avoid confusion with "Trial" mode, "Demo" mode is now called "Viewer" mode. The behavior is the same.

3. The Reverse Scale property has been added to Plot vs Depth and Bar Chart vs Depth column entities. This property works exactly as it does with the non-column entities and it also reverses the data scale.

=================
8.1.016 04May2007
=================
1. The <<OutputZoneFilter>> system data item prints the list of zones used to filter the output, if any. The structure of the output is:
  zone name 1(incl or excl), zone name 2(incl or excl), ...

where "incl" means the PointIDs in the named zone were included in the output and "excl" means the PointIDs in the named zone were excluded from the output.

=================
8.1.015  22Mar2007
=================
1. If you have written gINT Rules save code that is only triggered if a field value has changed (see GR010), be warned that no field will appear to change during an import. The way import is handled is that first all the data are imported and then the save code is run. The same applies when running the Recalc Current Table command. Therefore, you may wish to run this block of code if a field has changed value or the current data entry mode is not manual entry. To that end, use the gINTRules.GridData.IsManualEntryMode property. This returns True if in manual entry mode, False otherwise (import and recalc).

=================
8.1.014  15Mar2007
=================
1. In the report properties dialog of Graphic Text Documents, the "Retain Layering" property under the "Layers" tab forces the report layering to be maintained at output. If unmarked (default), all entities are placed on layer "0" regardless of the layering in Report Design.

=================
8.1.013  05Mar2007
=================
1. Software licenses can no longer be deactivated via the Internet, only by telephone or e-mail. This facility was halted because of numerous stability and security issues associated with it. Software licenses can now be transferred using a process initiated on the computer without a license. See the License book under Help:Contents. Then move to Software License and then Activating a Software License by Transfer from a Standalone License.

2. The Sentinel Protection Installer shipped with gINT 8 has been updated from version 7.3.0 to 7.3.2. According to Safenet, this new version is Vista compatible. In addition, the Sentinel Protection Server installed with this package does not crash Microsoft Internet Explorer 7.x when Internet Explorer is used to display the Sentinel License Monitor.

3. When any group is hidden the Group Sequence command is disabled. Currently groups can only be hidden using gINT Rules.

4. Correspondence Files:
  a)  When making a Correspondence File with multiple source groups for a target table, <<Omit>> can NOT be used on any field that will be in the final output.  Fields without sources in the current group must have an empty literal as the source expression, written as six quote marks """""".

  b)  Multiple groups are not necessary (at least in most instances.)  A group can have source field expressions from different tables.  Use System Key items for the key fields, as <<PointID>> and <<Depth>>.
For fields other than PointID provide a units spec.  Example:
CLSS,ATTERBERG
HOLE_ID,<<PointID>>
SAMP_TOP,<<Depth>><<FieldUnits(<<LAB SPECIMEN.Depth>>)>>
SPEC_DPTH,<<Depth>><<FieldUnits(<<LAB SPECIMEN.Depth>>)>>
CLSS_NMC,<<WC DENSITY.Water_Content>>
CLSS_LL,<<ATTERBERG.Liquid_Limit>>
CLSS_PL,<<ATTERBERG.Plastic_Limit>>
CLSS_BDEN,<<WC DENSITY.Wet_Density>>
CLSS_DDEN,<<WC DENSITY.Dry_Density>>

5. In the report properties dialog of Graphic Text Documents, the "Retain Layering" property under the "Layers" tab forces the report layering to be maintained at output. If unmarked (default), all entities are placed on layer "0" regardless of the layering in Report Design.

6. When there are more tabs than can fit on the screen, scroll buttons appears at the left/right sides of the tab area. Holding down the mouse on a scroll button moves the tabs continuously. You will see this in Input and in multiple tab dialogs.


=================
8.1.012 12Feb2007
=================
1. The sieve analysis tables in the native gINT Lab Testing facility assumes that there is only one or two tare weights used for weighing the soil retained on each sieve. One weight (from the Wt_Sieving_Tare_Coarse field in the parent grid) if the specimen is not split, two (Wt_Sieving_Tare_Coarse and Wt_Sieving_Tare_Fine) if the specimen is split. This works for labs where the procedure is to place the material in each sieve into a tare for weighing. Some labs will place the entire sieve with the material retained onto the scale. In this case the tare for each sieve will be different and the tare weights in the parent grid do not apply.

If you add a field called "Wt_Sieve_Tare" in the SV READINGS table (must be a numeric field; you can caption anyway you wish), you can input tare weights for each sieve in the test. If this field exists and all the data rows (a data row has entries for sieve size and weight of soil plus tare) have values in this field, the program will ignore the sieving tare values in the parent grid and use these values. If some of these fields have values in the data rows but not all, you will receive an error message to fill in this field for all the data rows or leave them all blank and use the sieving tares in the parent grid.

2. PDF Export:
  A. The checkbox to 'View document after export' is now enabled when exporting each dataset to an individual file. When exporting each dataset to an individual file, in the displayed export file path, the file name is now replaced with "*.pdf" to signify that the created file name(s) will be based on file name expression and not on the selected file name.
  B. When exporting all datasets to a single file, if a bookmark location and type is specified and then a new export file location is selected, previously selected bookmarks will be added to the newly selected file upon export.

=================
8.1.011 05Feb2007
=================
1. PDF Export:
  A. We have upgraded the PDF export drivers. You must run the PDF Exporter update to export to PDF from this build forward. These new drivers also allow the new properties below.
  B. PDF export attributes in File:System Properties, "Output" tab:
    1. PDF image compression (low, med, high) - combo - sets compression level for raster images printed to PDF doc. Lower compression gives the best quality, higher compression gives lower quality.
    2.  Do not embed fonts - checkbox - If checked,  fonts are not imbeded in the PDF document. This can make the documents smaller.
    3.  Do not add international character sets - checkbox - If checked, international character sets are not added to the PDF document. This can make the documents smaller.

2. The OHDOT_Symbol function has been updated to support the Soil and Bedrock Classification appendix dated 19 January 2007 from the OH DOT Web site. This specification adds the two new classifications: A-8a and A-8b. The former are soils that would classify as A-4a or A-4b soils but are organic. The latter are soils that would classify as A-5, A-6a, A-6b, A-7-5, or A-7-6 but are organic.

The new syntax is:
  <<OHDOT_Symbol(<<Table.Size (mm) Field>>,<<Table.% Passing Field>>,<<Table.PL>>,<<Table.LL>>[,<organic True/False>])>>

The last argument, <organic True/False>, is optional (to support backwards compatibility with previous implementations). In this argument you would pass a boolean field that indicates the soil is organic or not or an expression that determines whether the soil is organic. For example:
<<OHDOT_Symbol(_
  <<Union(<<SV READINGS.Reading>>,<<HYD READINGS.Particle_Size>>)>>,_
  <<Union(<<SV READINGS.Percent_Finer>>,<<HYD READINGS.Percent_Finer>>)>>,_
  <<ATTERBERG.Plastic_Limit>>,_
  <<ATTERBERG.Liquid_Limit>>,_
  <<ATTERBERG.Organic>>_
)>>

Whether a soil is organic would be indicated by checking the "Organic" field check box in the ATTERBERG table.
<<OHDOT_Symbol(_
  <<Union(<<SV READINGS.Reading>>,<<HYD READINGS.Particle_Size>>)>>,_
  <<Union(<<SV READINGS.Percent_Finer>>,<<HYD READINGS.Percent_Finer>>)>>,_
  <<ATTERBERG.Plastic_Limit>>,_
  <<ATTERBERG.Liquid_Limit>>,_
  <<Calc(_
    (<<ATTERBERG.Oven Dried LL>> / <<ATTERBERG.Liquid_Limit>>) < 0.75_
  )>>_
)>>

In the above example you would add a field called "Oven Dried LL" to the ATTERBERG table and the above calculation classifies it as organic if the oven dried liquid limit is less than 75% of the natural moisture liquid limit.

3. gINT Rules method LookupListGetDataFnB:
Description
This method returns the value(s) and description(s) of a gINT Lookup List.

Arguments
The Lookup Name argument is the input to the method. The Lookup Value Array and Lookup Description Array arguments are for the result output.
  Lookup Name, String:  The name of a lookup list.
  Lookup Values, String Array (output):  Array of Values in the lookup list.
  Lookup Descriptions, String Array (output):  Array of Descriptions for the values in the list.

Return Value
The method returns True if it successfully retrieves the Lookup List values, otherwise it returns False.

Sample Usage
The following will return two string arrays containing the Values and Descriptions for Lookup List "LLTableName".
  Dim bResult as Boolean
  Dim sLookupValueV() As String
  Dim sLookupDescriptionV() As String
  '----------------------

  ReDim sLookupValueV(0)
  ReDim sLookupDescriptionV(0)

  bResult = gINTRules.LookupListGetDataFnB("LLTableName", _
                                           sLookupValueV, _
                                           sLookupDescriptionV)

=================
8.1.010 22Jan2007
=================
1.  If a table has a hidden key, for example, a library table with the "Hidden Key" property marked, clicking on column headers will not sort the table by that column.

2. The RTrim function returns the passed in value with any trailing spaces removed. The syntax is:
  <<RTrim(<expression>)>>

=================
8.1.009 09Jan2007
=================
1. Ctrl+Arrow Right and Left now moves to the first punctuation character or space. Previously these shortcuts stopped only on spaces.

2. Double clicking on text now highlights the characters left and right of the click up to the first punctuation character or space. Previously highlighted all characters up to the nearest space.

3. A new optional argument has been added to the following two functions:
  <<LatLongConv(<<expression>>[,insert spaces][,pad w/0s])>>
  <<LatLongDisplay(<deg>,<min>,<sec>[,format][,pad w/0s])>>

The optional "pad w/0s" argument (True/False) inserts 0s in front of single digit minutes and seconds in components, e.g., 48°02'03.66" instead of 48°2'3.66". Default is False.

This argument only applies in the LatLongConv function when converting from a decimal value to a component value. For the LatLongDisplay function, it only applies when converting to the two component formats (LLD_CMP and LLD_CMPSPC).

4.  The menu item Help:View License A&greement (EULA) displays "gINT EULA 8.pdf" in the system PDF viewer.

5. The "Minor Grid Horizontal: Tick Length" and "Minor Grid Vertical: Tick Length" properties in graph report properties (Grid Minor tab) sets the length of minor grid ticks. If blank the minor grids will be full length across the graph frame.