Performance Issue Scenarios and Best Practice Guidelines

The following table lists common performance issue scenarios you may encounter in OpenAir per area and the best practice guidelines you can use to resolve them.

Area

Scenario

Best Practice

General

OpenAir shows 'Script running too long – want to stop script?' errors, and pages with large dropdown lists load slowly.

This may occur when dropdown lists in the page include several thousands of options.

You should limit the number of options in dropdown lists that are populated dynamically based on OpenAir records and use the search feature to ensure best performance. To do so, change the Number of entries to display in <record type> dropdowns to anything other than All in Personal Settings under Display Options. For more information, see Personal Settings.

General

Lists, including project lists, booking lists, or time entry lists, return large amounts of data, resulting in slow performance.

Lists such as the projects, bookings, or time entries lists, for example, can include a large number of records.

For best performance, you should use advanced filters to reduce your list view data and only include the data directly relevant to your task. See Advanced Filters.

Advanced filters are server-side filters. When applied to a list, the OpenAir server returns the list data already filtered, and reduces amount of information that your browser needs to process. Column filters are client-side and do not give the same performance boost as advanced filters.

General

Administrators and other All Access users experience slow performance in an OpenAir account with large amounts of data, especially when loading lists.

When the All Access filter set, or another filter set returning large amounts of data is assigned to an employee, you should assign multiple filter sets and include filter sets that return significantly less data on lists. See Filters Hierarchy Overview.

If you have multiple filter sets assigned to your user account and you want to speed up loading times and improve the performance of list views, you should change the active filter set to one that returns significantly less data. To do so go to User Center > Change filter set. See User Center.

General

Data growth is degrading performance as the number of completed or inactive projects increases.

You should create an "Archived" project stage for completed or inactive projects, and exclude this "Archived" project stage from all filter sets except the “All Access” filter set (project stage access control type). If employees have access to a large amount of completed or inactive projects, restricting access to these projects significantly reduces the amount of data processed and may improve performance.

For more information about creating a project stage, see Project Stages.

For more information about using filter sets to control data access, see Filter Sets Overview.

General

A list with a large number of columns does not load or produces script errors in the browser.

For best performance, you should reduce your list view data to include only the data directly relevant to your task. To do so:

  1. Change the active filter set to one that returns significantly less data for this list. To do so go to User Center > Change filter set. See User Center.

  2. Use advanced filters to reduce your list view data and only include the data directly relevant to your task. See Advanced Filters.

  3. Change the list view configuration and include only the columns directly relevant to your task. See Selecting List View Columns and Saving and Using Custom List View Configurations.

General

The Home screen takes a long time to load and the My Status or Company Status show a high number of incomplete tasks.

If you are using tasks mainly to manage access to timesheets and expenses, you may accumulate a high number of open or incomplete tasks over time. Showing a high number of incomplete tasks in the My Status and Company Status portlets impacts the performance of the Home screen. Excluding this information should improve Home screen loading time.

To remove the number of incomplete tasks from the My Status and Company Status portlets, contact OpenAir Customer Support and ask for the following switch to be disabled: “Display incomplete tasks on dashboard”.

Projects

The projects list loads slowly when it includes an Internal or PTO project and various Hours columns.

If your employees record internal time or PTO against one or more primary projects in OpenAir, the number of time entries and hours recorded against these projects grows large over the years. When the number of hours recorded against an Internal time or PTO project reaches 1 million hours, you should archive or deactivate the project, and create a new project to continue tracking internal time or PTO. See Replace Internal or PTO Projects with Time Entries Totaling Over 1 Million Hours.

Projects

Many or all users need access to many or all projects or tasks for time and expense entry.

Assignment groups are a convenient way to manage assignments for sets of users. However, excessive usage of assignment groups will lead to performance issues. See Assignment Groups Best Practice Guidelines under Assignment Groups.

Projects

The project outline or Gantt view loads slowly, especially after modifying tasks and phases on projects with hundreds/thousands of tasks.

OpenAir has several features which let you optimize project recalculation when adding or modifying tasks to projects. The optimization improves loading time for task list, outline and Gantt views after creating, duplicating, deleting, or modifying a task associated with the project you are viewing, or after moving or copying a task to another project. See Project Recalculation Optimization.

Projects

Auto-billing and auto-recognition are delayed, or project recalculation slows down your system usage substantially.

Automated billing and revenue recognition runs may be delayed when too many are scheduled to run at the same time. Project recalculation on completed projects which are still marked as active in OpenAir can also use substantial system resources. Configure the performance console and review the conditions under which these processes should no longer run or run less frequently. See Performance.

Resources

When creating or editing bookings using the Advanced Booking Worksheet, performance is slow and the worksheet does not the changes recently made.

Enable the Restrict Utilization Recalculation to Resources Impacted by the Changes on the Advanced Booking Worksheet optional feature. See Restrict Utilization Recalculation to Resources Impacted by the Changes on the Advanced Booking Worksheet.

Timesheets

Timesheet entry or approval is slow when particular projects, especially internal tracking projects with many or all users assigned, appear on the timesheet.

Skip task recalculation for timesheet approval. To do so, create a checkbox custom field associated with project records with Field nameskip_task_recalc. You then check the box on the project properties form to skip calculation of daily hours and task duration when a task is modified.

Important:

This feature is useful if the project is used only internally for assignment or task-tracking purposes, and when task recalculation is not critical for project management. You should not use this feature if the project is used for utilization, planning, or billing.

Charge/Revenue Projections

Global charge projection transaction generation takes several hours to run no matter when it is scheduled to take place.

Do one of the following:

Reports

A report runs for a long time due to its size, the browser times out and the connection is reset before the run completes.

Run reports in the background.

To do so, edit the report and check the Run the report in the background box in the report form. If you are using the Report Management and Editor feature, the Run the report in the background box is located in the Settings subtab.

When you run the report, a message appears indicating that the report is running in the background. Click OK to continue working in OpenAir. You will receive a notification email with a link to the report results when the report run completes.

Note:

You must have an active OpenAir session in the same browser to go to the link provided in the email.

You can also download the report directly from the list of saved reports or schedule the report to run automatically.

Reports

The Report form loads slowly when an account has many currencies enabled though not all of them are used for reporting. The extra values from the unused currencies slow OpenAir.

Reduce the number of currencies used in reporting.

To do so:

  1. Go to Reports > Options > Multiple Currencies.

  2. Select only the currencies which you need to report on.

You may only need to report on selected currencies even if you have a large number of currencies enabled on your account. Reducing the number of currencies can reduce load time for report forms, particularly if you are use many calculated fields based on monetary values.

Note:

Reporting options are user preferences. They do not impact other users running reports on your account.

Monetary values in a specific currency do not show at all on reports if that currency is not selected as a currency you report on.

Reports

The Report form loads slowly due to many values being loaded for pickers.

Use Find instead of List in report filters. To do so, click the filter on the report form and change the display from 'List' to 'Find'.

Note:

Performance gains will be most noticeable in situations where you previously had multiple filters trying to load 20,000 or more records.

Reports

Scheduled reports in an account are delayed due to having too many scheduled reports at the same time.

OpenAir does not allow more than one scheduled report per account to run at the same time. Account administrators and users with the appropriate role permissions can go to Reports > Status, and perform the following maintenance tasks:

  • Check the frequency of scheduled reports, and delete a report, reschedule a report, remove a report from schedule, or change the owner of a report (Reports > Status > All).

  • Stop a running report (Reports > Status > Running).

For more information, see Reports Status.

Note:

Cleaning up and rescheduling reports is not always straightforward and it is not a cure-all for this class of issue.

Reports

Multiple users running a large report at the same time causes it to run slowly.

When multiple users run the same report at the same time, all instances of the report compete with each other for locks in the database, and slow each other down.

To avoid this, share the report with all stakeholders and schedule the report to run and send the report automatically to "All the employees who share the report". For more information, see Configuring OpenAir to Run and Deliver a Report Automatically.

Reports

Reports run slowly when tag group filters are used.

Using filters to filter by user tag groups can result in a long report runtime.

If filtering by user tag groups cannot be avoided, you should enable the Optimize User Tag Group Filtering Algorithm feature. To do so, contact OpenAir Customer Support.

Reports

Reports take a long time to run when a large volume of data needs to be processed.

One way to speed up reports is to reduce the number of records which need to be processed.

You should use filters to reduce the volume of data processed, and include only the information you need to report on. For example, you can exclude "Internal" project stages on a Billed/Billable hours report.

Make a decision on what information to include, and what information to filter by, for each report.

Reports

Reports with large numbers of columns and subtotals take a long time to run.

You should include only the necessary columns and subtotals in reports. Adding columns and subtotals can increase the report runtime. For some reports, detail fields are a suitable replacement for a subtotal with the same detail, and have a lesser impact on performance.

Reports

Complex reports take a long time to run because they include many custom calculations.

Where possible, reduce the number of values used in custom calculations to the minimum necessary, and avoid using custom calculations as operand in other custom calculations.

Custom calculations are generally more performance-expensive than standard reporting values and may increase report run times significantly. For more information, see Custom Calculations Overview.

Reports

You want to improve report run times for users.

Long-running reports can cause performance to degrade across the account.

A long-running scheduled report can delay the start of other scheduled reports. OpenAir does not allow more than one scheduled report per account to run at the same time.

To identify the longest running reports and take remedial action, go to Reports > Status. You can configure the list to show the number of runs, maximum and average run times for each report in the last 24 hours, 7 days, or month.

For more information, see Reports Status.