# Application Framework

Configuration Overview Programming

Application Framework contains the following interface elements:

## 1.1 Configuration options via the environment variables

Note: Comma could not be used as delimiter for the environment variables.

Delimiter | Description | Example
= (equal) | Name value pairs | dev=*
; | List of values | Sports=sports2000;rvdb;icfdb
| | Major groups | Sports=sports2000;rvdb;icfdb|mydb=db1;db2

Environment variable | Description
SuperProc | Delimited list of custom super procedures to be initialized.
SessionCookie | SessionCookie –Set a default session tracking cookie. This allows the application to automatically track anonymous/unidentified user 'movements' through the system. This is the prefix of the cookie. If it is non-blank the session tracking cookie will be used automatically.
WebRunPath | WebRunPath example. Allow specific resources to be accessed via the URL. This does not override the PROPATH. This is a string that uses a can-do() string to determine access right. WebRunPath=c:\webapps\apps\*;c:\program files\progress\tty\webtools\*; c:\program files\progress\tty\webedit\*; c:\program files\progress\tty\workshop.r
BatchInterval | Batch Interval Time – Batch routine ! Amount of time (in seconds) agents sit idle before breaking out of wait-for and running the “run-batch-object” custom procedure.
CompileOnFly | Compile On The Fly. OnTheFly: Does compile on the fly when in development mode. NoSave: Does not leave the r-code after running the program CheckTime: Check the time on source and R-code and compile if r-code is older than source.
CompileXCode | CompileXCODE -- Xcode to be used for compile.
SessionPath | Path for storing session information. It would otherwise default to TEMP directory. This option has no meaning when using database-driven session storage mechanism. Example SessionPath=logs
Databases | Databases that the application is to be aware of. Following each database is a program that will run if the database is not connected or simply the connection paramters. Databases=sports2000=sportsconnect.p|db1=-pf c:/databases/db1.pf If same databases is to be used for all code then DbGroup or DbObject does not need to be specified.
dbFailover | This should be the same list as for Databases, but just have connection programs or connection parameters to the respective backup databases.
DbGroup | DBGroup -- not used, should be replaced with something better. Organizes connected DBs into logical association sets. These can be used to maintain connections, or associate DBs with code objects. DbGroup=Default=webstate|sports=sports;webstate (Optional)
DBOject | DBObject. Associate code objects with their required DB(s). When a code object is run, and it is not found in any of the lists it is assumed that it does not require DB access. When a code object is run and it's DB is not connected, attempts will be made to connect the necessary db, then a controlled error message will result. DbObject=sports=c:/usr/apps/cart/ *;/app2/collect|sports2=c:/usr/apps/cart The specification of path follows a can-do() syntax in the same way as the webRunPath. (Optional)
MultiDevPropath | MultiDevPropath. Allow multiple developers to customize the propath for their use. The devpropath will be prepended to the existing propath for the duration of the run of the object, then returned to the default propath. MultiDevPropath=developer1=usr/dev1/apps/test;/usr/dev1/apps/test2 | developer2=/usr/dev2/apps/test;/usr/dev2/apps/test2
LogTypes | List of user defined log types to be in the current logs. Ie you may have lots of “debug” style messages but would not be interested in those for a production deployment situation. (warning;compile;error;run;note;batch) or * for them all. You may specify “NoCache” additionally, however this is not a logType, but a parameter that specifies that each message is to be stored to disk immediately rather than at the end of the web-request.
LogPath | Storage path of the log files, example LogPath=logs

Configuring the tools in Progress Explorer.