Trinzic Corporation
Forest & Trees for Windows
Version 3.1A
May 30, 1994
Release Notes

Dear Forest & Trees User:

Thank you for purchasing Forest & Trees for Windows!

***********************************************************************
                I M P O R T A N T    I N F O R M A T I O N
***********************************************************************

VIEW FILES SAVED BY FOREST & TREES FOR WINDOWS VERSION 3.1 AND 3.1A ARE
NOT READABLE BY VERSIONS OF FOREST & TREES PRIOR TO 3.0.

PLEASE BACK UP YOUR VIEW FILES FROM PREVIOUS VERSIONS SO THAT   
THEY ARE STILL ACCESSIBLE VIA PREVIOUS VERSIONS.

NOTE THAT REPORT SAVE AND GRAPH SAVE WILL NOT WRITE TO DISK;   YOU
MUST USE FILE SAVE TO WRITE THE INFORMATION TO DISK.

============================================================================
What's New?
-----------

The following items are new to F&T Version 3.1A.  For details on new
features found in F&T Version 3.1, please see whatsnew.txt.

Reports
-------

-  Report Variable Attributes
   The report variable attributes feature allow you to color and/or shade 
   report variables based on specific data or expression values within the 
   report.  In this manner, report variable attributes are similar to 
   Forest & Trees alarms.

-  Bitmap Attributes
   Bitmap Attributes allow you to variably control the bitmap that you are
   displaying in your report.  For example, your report may show bike sales
   by bike type with a break on bike type.  With bitmap attributes, you can
   show a bitmap of each bike type at each break.  

   To use bitmap attributes, simply define a report variable that references
   different bitmaps based on another report variable (for example, define
   a variable as "c:\ftw3\demo\acme\"||employee||".bmp" to variably
   reference the employee bitmap at each employee break).  Then, when you 
   place the bitmap in your report layout, select the variable that you have 
   just defined (instead of a fixed bitmap file).  Each time the report
   writer encounters that bitmap variable, it will interpret it using the
   current value of the employee report variable.  We've included an example
   of this in the ACME demo file.  In the "Sales Rep Tracking" group, there
   is a report that demonstrates this feature.  The owner password for the
   ACME view file is "owner".  Simply click the left mouse button on the
   bitmap (in the employee break section) to look at the definition of the
   bitmap attribute.

-  You can now call Report( 'Print' / 'Export' / 'CopyToClip' / 'Show' ) 
   without having calced report first.  Function will calc report on the 
   fly and throw away datafiles when done.  Note that Report( 'Calc' ) 
   still stores the data and forces the SaveDataToFile switch on.

Graph Views
-----------

-  Graph Attribute Control
   With version 3.1a, we've added the ability to have greater control
   over your graph views.  In the graph layout dialog, there is a
   new button called "Attributes" that will allow you to modify the color,
   the symbols, the patterns, and the line patterns of your graphs.  Through
   this dialog, you can also modify the background color.

Providers
---------
-  There have been some changes made to the Forest & Trees providers. 
   Please review the SKREADME.TXT and CKREADME.TXT files for more 
   information on providers.

============================================================================
Sample View files
-----------------

-  Several sample view files are included with this release.  Some
   of these utilize Security features, including User Menus.  Press
   Shift-F5 after loading these files to access File Setup and
   Passwords.  The default password in most cases is 'Owner'.

Sample Add-ins
--------------

-  There are two sample add-ins included with F&T that may be optionally
   installed.  The circle add-in, is to provide you with a simple example
   of an F&T add-in.  The Ticker Tape add-in lets you display view
   results in a ticker tape fashion (similar to stock quote data). The
   layout dialog for this view type allows you to specify the frequency
   with which the result moves across the view, the relative distance the
   result moves each time, the text separator that is inserted between
   the result rows, and the direction of movement.  If you spend some
   time with it, you can even make the result stay in place and flash.

============================================================================
You should be aware of the following issues:

Conversion from Forest & Trees 3.0 or 3.0A
------------------------------------------

-  Column Title colors that were set in F&T 3.0 will be lost and will
   have to be reset in F&T version 3.1A (or 3.1).

-  The way in which view borders are handled in F&T 3.1 and 3.1A is
   different than in F&T 3.0 and 3.0A.  Because of this, you may notice 3.1
   or 3.1A that some data may not fit exactly as it had in 3.0 or 3.0A.

Kernel
------

-  There is a 255-character string limit on all text information.

-  You must allow for the height of 3D borders when sizing Edit Fields.  
   Data display and/or alignment problems can arise if the object's 
   height is too short.

-  Any view that returns a list by combining two or more view results
   will take on the data type of the first view reference.  For example, 
   a formula view like this...
      View1   [Integer]
      View2   [Text]
   ...will return a column of numeric values, with the text values 
   represented as 0. But note that List, Edit Field, Check Box, and 
   Radio Button views always return data type Text, regardless of the 
   source type.

-  Picture Views and Hotspot Views will not appear in the Window
   menu and can not be tabbed to.

-  Iconized views that are dragged along the scroll bars or border of
   another view may not repaint properly.  Moving the view to a position
   that does not overlap the previous position will correct this.

-  The '.' (period) in data formatting represents a decimal point.  If 
   used, for example, as an abbreviation with numeric data (using a
   data format of DOL. $#,###), the decimal point may be misplaced.  

-  Active View or View File queries that go against an Edit Field, List,
   Check Box, or Radio Button view that has been manipulated by
   the user or by the builder so that nothing is selected will display an error
   message stating that there is no expression in the select clause.  For
   example, this will occur if the user de-selected all items in a multi-pick
   List view or Check Box view, or if the builder used
   view('setvalue','viewname',null) on the view  to clear all selections. In
   such cases, the view is not query-able--it won't appear in the Query
   tool's table lists--and queries that worked when something was entered
   or picked in the view will return errors like Invalid Column Name or
   Interface Returned Invalid Column.

-  Unpredictable results may occur when a scroll bar trigger
   calculates an active view query that queries the scroll bar's value.
   This behavior is not exhibited in the same scenario when the view that
   is triggered is a formula that accesses the scroll bar's value.

-  The Divide By Zero setting in the File menu reflects the INI file 
   setting (DivideByZero).  Therefore, if you plan to distribute your 
   view file, you should either distribute your INI file with it, or 
   specifically set the Divide By Zero item in the File menu to reflect 
   your desired setting.

-  Query Assist does not remove tables from the FROM clause if the only
   column from that table is removed from the SELECT.  Also, Query Assist
   will not update the ORDER BY clause if the "ordered by" column is 
   removed.

-  The on-line help description for the REPORT('EXPORT' ) function should
   read:
   "Used instead of TRUE/FALSE, the number 0 creates a file delimited by 
   tabs, 1 creates a file delimited with double quotes and commas, 
   2 creates a file whose fields are padded with spaces."


On-Line Help
------------

-  You can get specific help for an error number within on-line help by 
   going into the search dialog, typing error, and selecting error message
   index. This will give you a range of numbers which you can click 
   upon to get to the specific error number for which you information.

   
Functions
---------

-  Creating circular calculation references (infinite loops) using 
   Alarm or View Triggers between views can cause F&T/W to crash.  
   For example: 

        View A                          View B
        --------------------------      --------------------------
        VT: View( 'Trigger', 'B' )      VT: View( 'Trigger', 'A' )
        VT: Calculate( 'B' )            VF: View( 'Trigger', 'A' )
        AT: Calculate( 'B' )            VF: Calculate( 'A' )
        AT: Calculate( 'B' )            VF: View( 'ApplyAlarms', 'A' )

   Where VT = View Trigger, AT = Alarm Trigger and VF = View
   Formula.  Where Calculate( ... ) is shown, View( 'Calculate', ... )
   or the equivalent Trigger (View Name setting with Calculate option
   checked) will also crash.  In most cases, replacing Calculate( ... ) 
   with Autocalc( ... ) will avoid crashes (this is not the case when
   one of the views is a maximized graph).  Circular references that
   do not involve triggers will either cause a calculation error or
   stop calcing immediately.

-  Views can calculate themselves via Trigger.  This is only supported by 
   using the (Trigger) Execute Formula setting, and using AutoCalc() or
   View( 'AutoCalc' ... ) in the expression.  Using the Trigger View
   setting with the Calculate option turned on, or using the Calculate() 
   or View( 'Calculate' ... ) functions will cause an error.

-  Use View( 'SetValue', 'Viewname', values ... ) to set the value of a
   given view.  When used with List views, this functions will set the
   SELECTED (highlighted) items; use '' (empty string) or NULL to deselect
   all.  When setting the value of the current view (where the
   formula contains the SetValue call) set the "No Result" option in
   View Definition to "Rollback".

-  Do not use functions which produce Multi-column results 
   (ex: Database('Tables') ) with DIALOG, DIALOGM, GETINDEX or other 
   inappropriate functions.

-  The VIEW ('PASTE', 'view_name') function will paste the contents of the
   clipboard into a specified view. The specified view cannot be the view
   from which the function is executed.

-  The ROUND function used with a negative places argument now correctly
   rounds to the specified number of digits. ROUND (1666.66, 1) = 1666.70,
   ROUND (1666.66, 0) = 1667.00, ROUND (1666.66, -1) = 1670.00.

Windows 3.0
-----------

-  Windows 3.0 may not display directories correctly if an invalid 
   directory has been specified in the database tool.  Use caution when 
   using substitution strings.

-  Views may not repaint properly after using the VIEW( 'MOVE' ... ) 
   function call under Windows 3.0.  Use VIEW( 'PAINT' ... ) to 
   force the view to repaint.

Common Dialogs
--------------

-  FTW utilizes the Common Dialogs (COMMDLG.DLL) provided with
   Windows 3.1.  When you install FTW, the COMMDLG.DLL file will be
   installed in the FTW directory by default.  Windows 3.0 users should
   move this file to their Windows SYSTEM directory; Windows 3.1 users
   should delete this file.

============================================================================
Reports
-------

-  There is a new function REPORT ('SETERRORMODE', integer) that allows
   you to dictate how a report error will be displayed.  The integer
   parameter can take on the following values:

      -1  Restores the previous setting: the one that was in effect 
            before the last time REPORT ('SETERRORMODE') was used.
       0  Causes the appropriate error message to appear if the execution 
            REPORT function is not successful.
       1  Suppresses error messages.
       2  Enables error messages except if the report produces no result, 
            which will not display an error.

   By default, errors are returned. Once the function is used, the setting 
   stays in effect until the view file is reopened or the function is used 
   with a different parameter.

-  Occasionally, when exporting a report to an ASCII file, there will be
   blank lines in the report body.

-  You must have a valid print driver installed in order to use the report
   tool.  This can be done through the Windows Control Panel.

-  You can specify the default report font and layout colors in the 
   FTW.INI file (found in your Windows directory.)  Refer to the
   FTW.INI section in the Appendix of the FTW Reference Guide.

-  Report( 'Calc' ) will turn on Save Data to File in Report Definition.

-  Reports of view data will not correctly update the Column Totals 
   information from the view if View Column Totals were added AFTER 
   the report was created.  You must manually add or remove summary 
   variables in the report's layout.

-  Copying a report to the clipboard or exporting a report to a file
   can cause data to disappear or appear in an incorrect order.  
   Data is output in order of y-coordinate (height) within each section; 
   use the report layout alignment tool to reposition objects to insure
   appropriate ordering.  

   Positioning within exported files will also be affected by Font and
   Margin settings.  Exported reports override the fonts specified in 
   layout, using instead a 10 cpi, 6 lpi coordinate system.  Reports 
   created specifically for export should use the Courier 12pt font;
   objects and sections should be sized and positioned to align with
   this coordinate system.  

   A space-delimited export format is now available.  Objects will be
   centered, left- or right-aligned as specified in the report
   layout.  Full justification is not currently supported.  The first
   object within a given section will always be left-aligned.

   To support the new export format from the REPORT('Export',...) 
   function, the 5th argument supports numeric export format
   specifiers: 0=Tab-delimited, 1=Comma-delimited, 2=Space-delimited.
   Although boolean arguments are still supported, they will not be
   in a future release of F&T/W.  Please change these calls to use
   the new numeric specifier; change FALSE to 0 and TRUE to 1, or 
   for expressions use CONVERT((old_boolean_expression),'INT').

-  Report Summary variables appearing on a page where no report 
   records appear may not appear to have a value.  Values which can 
   not be determined in reports will appear as a ?.  

-  When using an expandable text column, do not overlay with other 
   columns - the expanded text may be overwritten by the overlapping 
   column.

-  Report functions such as SUM, MIN, MAX, COUNT and AVG cannot operate on
   view columns (ie. sum(viewname[0,2]))

-  When deleting the loaded report, you will not be prompted to save and
   the report will be displayed as uncalculated (ie., the existing data
   will be deleted, but the report layout will still exist). Only after 
   you select another report will the report layout be deleted from the 
   view.

============================================================================
Graphs
------

-  When using the log graph type in the graphics add-in, zero or negative
   values result in a meaningless graph.  This is consistent with the 
   definition of a log graph since these values are not allowed.

-  The Cancel button on the print dialog for graph views does not cancel
   the printing.  You need to click on the Cancel button that appears
   in the following dialog to actually cancel the printing.

-  Specific colors can be specified with specific combinations of the
   color values. In on-line Help, search for "colors" and select the 
   "Hue, Saturation and Luminosity" topic.

   The quality of the results you get will depend to some extent on the 
   resolution of your monitor and your system's graphics capabilities.

============================================================================
Export
------

-  View Export (menu or function call) will export hidden columns.

-  Database('Export' ) does not display the wait cursor.

-  Cancelling a Database ('Export' ) leaves a partially exported file.

-  The View( 'Export' ... ) function call will export the previous
   results if the view to export has a calc error.

-  Exporting views (either via a function call or menu action) that are 
   uncalced or have No Result produces an empty output file.

-  When Exporting to either Text format, F&T/W always uses -#, -#.0
   and -#.00 as Data Formats for Integer, Double and Currency data types.
   This is to avoid commas in the output file.  Default Data Formats 
   (under Customize menu) are used for other data types.  Column Data
   Formats are never used.  Column Width is ignored.

============================================================================

For more information on these and other issues, call our Technical Support 
department at 1-603-427-0444.

Thank you again for purchasing Forest & Trees for Windows!

Brad Haigis
Product Manager
