Use efficient queries when you embed SQL in custom reports. Use clear and obvious syntax. If you extract report data for a large-scale system, avoid inelegant joins and unnecessary field synthesis or data expansion. In-line syntax that initiates data expansion, sorting, and value transformation can cause unintended report output. Heavy data processing within an SQL query can cause reports to timeout. Data processing done in the wrong sequence can result inaccurate or lost data.
If you perform custom queries on a large or scaled out MOVEit Transfer deployment, it is best practice to perform data field normalization (deduplication, for example), sorting, and and other sorts of curation after results are returned. Return results as XML or CSV, and then filter data with a suitable application or script.
The following table provides guidelines for running custom reports.
Report Parameter |
Tips |
Start Date/End Date |
Avoid long date ranges (such as range greater than two weeks), and be especially careful with:
|
Fields |
Column Fields. List column fields needed individually. |
Tables |
Use Join and (inner join). Cross Joins are very inefficient.
|
Criteria (works like WHERE) |
Avoid using LIKE for one or more wildcard expansions.
|
Limit |
Use of Limit (let's say a Limit=10) is helpful for:
|
If you generate (run) a report that exceeds the site efficiency rules, MOVEit Transfer halts report processing and returns an error message.