You are here:

Foxfire! presents many areas where you can insert your own customizations. The Event Manager (available under the System Admin tools) lets you control each specific event in the entire Foxfire experience. You can also customize individual requests on the External tab.

Important: your Foxfire! License prohibits you from de-compiling and/or altering any executable files containing Foxfire! functionality. Doing so is a violation of U.S. and International Copyright law. 

Warning: do not change the Foxfire! executable files. Doing so could invalidate your software warranty and/or interfere with future upgrades. 

Recommendation: we strongly recommend that you follow the guidelines presented below when customizing Foxfire! Doing so will insure that your customizations will be carried forward to new versions when you upgrade. 


Purpose: (1) Allow a developer to customize Foxfire! by modifying Foxfire!’s regular processes and behaviors. (2) Provide a single module for this custom processing, so the developer can quickly find it in the future. (3) Support future upgrades of Foxfire! by encapsulating Foxfire! customization in a single module. 

How This Affects The Reporting Experience: Foxfire!’s regular processes can be changed as needed, by inserting custom code that will be executed when key Foxfire! events fire.

The customization is accomplished by placing custom code into the various entry points in this module. This has the same effect as inserting the code into the main Foxfire! program. Placing you custom code here leaves the main Foxfire! program unchanged and makes it easy to replace the main Foxfire! program when an upgrade or maintenance release becomes available. See the Foxfire! Custom Processing Options for further details 

Note: This help topic addresses how the Event Generator works.


Foxfire! Event (Phase) Specifies the Foxfire! Event whose behavior you are modifying. You may modify Variables associated with the event or the source code to be executed when the Event fires. 

If you aren’t sure if your Foxfire! uses customizations, click Import and specify the FFCONFIG.PRG file. This will import all of your existing customizations so you can modify them in the Event Editor.

Variables Tab: Presents the list of Variables for this Event. Allows you to modify the Variables or add your own new Variables. 

Sequence: Foxfire! assigns a sequence number to each Variable to control the order in which the Variables are presented. 

Variable: Specifies the name of the Variable. 

Purpose: Specifies the purpose of this Variable. 

Value: Specifies the current value of this Variable. 

Find: Clicking the Find button will search for the Variable name specified to the right of the button. 

Add: Adds a new user-defined Variable. 

Remove: Removes a user-defined Variable. If you click remove while highlighting a Foxfire! defined Variable, the Variable is reset to its Default Value. 

Comments: Specifies the purpose of this Variable. 

Default Value: Specifies the Default Value of this Variable. This value is fixed by Foxfire!. 

Reset: Resets the value for this Variable to the Default Value. 

Value: Specifies the current value for this Variable. This could be the Foxfire! default or a value that you set. 

Pre-Assignment Code: Specifies code to run before setting the value for this Variable. 

Build: Builds the FFConfig program with your changes. The original version of FFConfig is saved. 

Cancel: Cancels your changes to the FFConfig program. 


The Source Tab:

Source Code: Displays the source code Foxfire! will execute for this event. You may make changes to this code in order to customize the event. 

Build: Builds the FFConfig program with your changes. The original version of FFConfig is saved as Foxfire.OLD.

Cancel: Cancels your changes to the FFConfig program. 

Table of Contents