Difference between revisions of "Why are there three report ranges?"

From Catalyst
Jump to: navigation, search
(Bulk update)
(Bulk update)
 
(3 intermediate revisions by 2 users not shown)
Line 5: Line 5:
  
 
== More Information ==
 
== More Information ==
Each range screen is processed in order from 1 to 3 and '''all''' [[What is a Report Generator variable?|variables]] on a range are evaluated before the range is executed. Variables on range 2 are '''not''' evaluated until range 1 has passed and variables on range 3 are '''not''' evaluated until range 2 has passed.
+
Each range screen is processed in order from 1 to 3 and '''all''' [[What is a report generator variable?|variables]] on a range are evaluated before the range is executed. Variables on range 2 are '''not''' evaluated until range 1 has passed and variables on range 3 are '''not''' evaluated until range 2 has passed.
  
 
Using this information you can split up your ranges so that you spread your variables, save any time expensive evaluation variables (period totals, period balances etc) for ranges 2 or 3. Keep range 1 for simple variables such as codes, names, addresses, descriptions etc - these variables are usually entered on a "Property Screen" - their value doesn't require any calculations.
 
Using this information you can split up your ranges so that you spread your variables, save any time expensive evaluation variables (period totals, period balances etc) for ranges 2 or 3. Keep range 1 for simple variables such as codes, names, addresses, descriptions etc - these variables are usually entered on a "Property Screen" - their value doesn't require any calculations.
Line 35: Line 35:
  
 
== See also ==
 
== See also ==
* [[Column Types in the Report Generator]]
+
* [[Column types in the report generator]]
* [[Hidden Report Generator Columns]]
+
* [[Hidden report generator columns]]
* [[How do I use Calculation Sequence?]]
+
* [[How do I use calculation sequence?]]
* [[What is a Report Generator variable?]]
+
* [[What is a report generator variable?]]
 +
* [[How do I enter a report range?]]
 
* [[REF:rprgvc01|Accessing the values of other columns.]]
 
* [[REF:rprgvc01|Accessing the values of other columns.]]
  
 
{{KB_Tags|report range, three ranges}}
 
{{KB_Tags|report range, three ranges}}
 
{{MClass}}{{KB_RGen}}
 
{{MClass}}{{KB_RGen}}

Latest revision as of 05:31, 12 April 2019

Summary

The three range screens in the Report Generator can speed up some reports considerably if used correctly.

It is advisable you only use ranges 2 and 3 for complex reports.

More Information

Each range screen is processed in order from 1 to 3 and all variables on a range are evaluated before the range is executed. Variables on range 2 are not evaluated until range 1 has passed and variables on range 3 are not evaluated until range 2 has passed.

Using this information you can split up your ranges so that you spread your variables, save any time expensive evaluation variables (period totals, period balances etc) for ranges 2 or 3. Keep range 1 for simple variables such as codes, names, addresses, descriptions etc - these variables are usually entered on a "Property Screen" - their value doesn't require any calculations.

  • Period totals and balances have to be calculated and can therefore take a while, there is no reason to calculate these for the range if the data is for a stock line or account that falls outside the range.

Example

A report to list all customers in account group 'MAIN' with a period turnover in the last 3 months over £2000.

  • A01 = Account Ledger.
    • Every transaction knows if it is on the Sales Ledger 'S' or Purchase Ledger 'P'.
  • A07 = Account Group.
    • Each account has it's group recorded.
  • A08 = Period Balance. (D1 is a date range for the last 3 months)
    • Time taken to evaluate is data dependent - Lots of transaction will take a while.

Range 1

  • A01 = "S" AND A07 = "MAIN"

Range 2

  • A08{D1} > 2000

If A08 on range 2 was on the first range screen it would be evaluated even when A01 wasn't "S" and A07 wasn't "MAIN", so potentially (dependent on the amount of transactions you had) taking lots of extra time. Putting this on the second range would mean the Report Generator would only evaluate the period balance when the account was a customer in account group "MAIN".

Implementation

Serious amount of gather time can be saved if your report has two evaluation style variables (e.g. Sales in a period and Purchases in a period) if you place one variable on range 1 and the other on range 2 you could save evaluation time on the second range (remember range 2 will not be evaluated unless range 1 passed).

  • Any time saved time is always dependent on the data, with small amounts of information it probably isn't worth splitting the range filters.
It is important to note that your report will finish with the same information on it if you use 1 or all 3 ranges. All you are doing is assisting the Report Generator in the speed at which it gathers data for the report. The second phase (Sorting) will not be affected by anything you do with the ranges.

See also


Feedback
Thank you for using our Knowledge Base, we value your feedback. Did you find this article useful? 'Yes' or 'No'
Keywords AND Misspellings
report range, three ranges