Cat State with Selection Criteria


This framework is described in much better detail in the Financial Model Framework paper. These descriptions might have also changed somewhat so the the above mentioned paper takes precedence over anything written on these pages.


CatState is a common repository for information that all other components might need to access. CatState has four principle components:
  1. values - a Dictionary of ReportValues on the instance side
  2. selectionBox - a SelectionBoxValues on the instance side
  3. windows - an OrderedCollection of Windows on the instance side

Details from Joe about the new implementation.
These will need to go into the class comment also.
Holds the current selection criteria. See Selection Criteria below.
Identifies the windows open for the this application. Unlike the VisualLauncher's windows menus, this collection does not include development windows or windows for other applications. These windows are listed in under the Windows menu of a CatModelWrapper. This part of CatState should work without changes, for any new business unit.

Selection Criteria

Selection criteria represent the set of values selected by the application user, and are implemented via the SelectionCriterion class. The class has only one instance variable:
  1. values -- a Dictionary of items used for selection
The purpose of the class is to "project" user desire for information upon the queries on the database, thus providing the data corresponding to the selections made.

The GUI for doing this is (and ought) to be written anew for every new application unless it closely resembles the existing interface class SelectionBox. Luckily, creation of such classes is greatly simplied by the Canvas tool.

For more detailed information related to adjusting the SelectionCriterion class to the requirements of a new application, see the Porting to New Business Unit section.

Relevant classes and categories:

If you have any questions or changes, please contact:

Joseph W. Yoder at:(217) 244-4695 or by email:

Return to Financial Model Documentation Page