Processing results from a Revenue Dynamic Smart Query takes much longer to run as a non-system administrator. The more results there are the greater the difference in process time.
This increase in run time is a result of security checks that must be run for non-system administrator users. The solution is to increase the timeout value for smart query types through an update of the web.config using the 'SmartQueryTimeOutSecondsDefault' app key.
Steps to resolve: 1. Locate the web.config file on your web or application server under the installed directory. ie. C:\Blackbaud\bbappfx\vroot\ 2. Scroll down to the <appSettings> section of the config file. This is where all the app key entries exist. 3. Determine if you already have this app key entry added to the file. By default it will not exist yet. If it doesn't exist copy and paste the below app key into the web.config's <appSettings> section.
4. Modify the value as appropriate for your organization. This value is in the form of seconds. ie. 1200 seconds = 20 minutes. 5. Save the web.config file.
*NOTE* Modifications to the web.config file will force a recycle of the IIS app pool which will terminate any actively running business processes. It's suggested to make these types of changes after normal business hours.
Steps to Duplicate
1. Create a smart query with the record type: revenue dynamics 2. For the Previous Period, select today's date, two years ago up to today's date one year ago. For example: 7/21/14 to 7/21/15 3. For This Period, select today's date, one year ago to the present date. For example: 7/21/15 to 7/21/16 4. In Status, check all the boxes to include all constituent behavior. 5. For Revenue Types, select Gift and Recurring gift payment. 6. Process results from the smart query as an admin. 7. Process results from the smart query as a non-admin.