What's new in Report Engine 2.0 ?

Introducing an array of exciting new features in Smart Report Engine 2.0:
  • Calculated Columns: These virtual columns aren't physically stored in your database table; their values stem from calculations involving one or more other columns.
  • Subtotals and Grand Totals: Conveniently generate subtotals and grand totals for thorough data analysis.
  • 'filter_is_current_active_user' Function: Employ this fresh filtration function to exhibit solely the records linked with the currently logged-in user ID.
  • New Date Filters: Amplify your reporting capabilities with date filters such as 'Is Today,' 'Is Current Month,' 'Is Current Quarter,' and 'Is Current Year.' These filters streamline the creation of daily, monthly, quarterly, and annual reports.
  • Dynamic Filtration Functions: Effortlessly craft parameterized reports. These functions enable the effortless generation of a sales report based on a date range, empowering each user to define their preferred range.
  • Community Edition: We currently offer a downloadable community edition that provides a subset of features. This enables you to evaluate some of the fundamental features of the Smart Report Engine or utilize it in free open source projects. For more details click here
Listed below are the new functions now accessible within Smart Report Engine 2.0:
Method Description
sub_totalsThis function adds subtotals to your report to get the sum, average, minimum, maximum, or count of any column(s) for each group of records. Additionally, at the end of the report, grand totals should be listed.
filter_not_nullThis is one of the filter functions. Applying this function on any column should return records with NO null values in this filtered column.
filter_is_todayThis is one of the dynamic date filters. Applying this function on any date-type column should return records of the current day which is very helpful if you want to create daily reports.
filter_is_nullThis is one of the data-filtration functions. Applying this function on any column should return records with null values in this filtered column.
filter_is_current_yearThis is one of the dynamic date filters. Applying this function on any date-type column should return records of the current year which is very helpful if you want to create an annual report.
filter_is_current_monthThis is one of the dynamic date filters. Applying this function on any date-type column should return records of the current month which is very helpful if you want to create a monthly report.
filter_is_current_active_userThis data filtration function should filter any report by the current user ID so that each logged-in user sees only their records. In other words, this function should make each user sees only their records even when multiple users are accessing the exact same report. In the following code example, any logged-in user when accessing the "orders" report, should see only the records related to them. Smart Report Engine should implements this by querying the "Orders" table with a where clause for filtering the "Employee_id" column by the value of the "user_id" session key which Smart Report Engine will expect to find in the logged-in user's PHP session. Please note that usually, on logging in, any session-based login system stores some reference identifying the user (often the user's ID) in their PHP session.
dynamic_filter_not_equalThis is one of the dynamic filters supported in the Smart Report Engine to filter your report by parameters entered by your end users. In other words, your end users can change the output of generated reports based on the parameter values they enter before previewing the reports. For example, using this type of filter you can easily create a sales per region report where each end user can select the regions they don't want to see. And, you can combine many filters in the same report. This filter should be used to filter any column you specify and return all records that are not equal to the filter parameter entered by each end user. Please note that you can combine multiple filters for the same report.
dynamic_filter_moreThis is one of the dynamic filters supported in the Smart Report Engine to filter your report by parameters entered by your end users. In other words, your end users can change the output of generated reports based on the parameter values they enter before previewing the reports. For example, using this type of filter you can easily create a performance report where each end user can set certain indicators. This method should be used with a numeric, date, or DateTime column to get all records that are more than the parameter entered by each end user. Please note that you can combine multiple filters for the same report.
dynamic_filter_lessThis is one of the dynamic filters supported in the Smart Report Engine to filter your report by parameters entered by your end users. In other words, your end users can change the output of generated reports based on the parameter values they enter before previewing the reports. For example, using this type of filter you can easily create a performance report where each end user can set certain indicators. This method should be used with a numeric, date, or DateTime column to get all records that are less than the parameter entered by each end user. Please note that you can combine multiple filters for the same report.
dynamic_filter_equalThis is one of the dynamic filters supported in the Smart Report Engine to filter your report by parameters entered by your end users. In other words, your end users can change the output of generated reports based on the parameter values they enter before previewing the reports. For example, using this type of filter you can easily create a sales per region report where each end user can select the region they want to see. And, you can combine many filters in the same report. This method filters any specific column by a parameter entered by your end user. So all you need to specify is just the column you want to filter and the table containing it.
dynamic_filter_betweenThis is one of the dynamic filters supported in the Smart Report Engine to filter your report by parameters entered by your end users. In other words, your end users can change the output of generated reports based on the parameter values they enter before previewing the reports. For example, using this type of filter you can easily create a sales report by date range where each end user can define the date range they want to see. And, you can combine many filters in the same report. This method filters any specific column between two numbers or two dates entered by the end user(s) of the report. Therefore, all you need to specify is just the filtered column and the table containing it. You don't need to specify filter values, this will be done by your end user in a dialogue box before displaying the report.
calculatedcolumnsCalculated columns are virtual columns that are not physically stored in your database table Instead, their values are calculated from one or more other columns. In each generated report by Smart Report Engine, you should find a configuration file named “calculated_columns.php”. This file is for configuring any number of calculated columns needed for any report generated by Smart Report Engine. You can find this file at: /{Smart-Report-Engine-PATH}/SRM8/SRM/Reports8/rep{report-name}/calculated_columns.php where: {Smart-Report-Engine-PATH}: The path in which you uploaded Smart Report Engine on your local or remote server. {report-name}: Your generated report's name. Inside the "calculated_columns.php" configuration file, you should find the "$calculated_columns" predefined array. In this array, you can define each calculated column you want to add to your report along with the method to calculate it as shown in the code example below. In the following code snippet, we define one calculated column “total_price” and linked it to the function that should be used to calculate its value. Please note that the value of any calculated column is calculated by the function linked to it and which should accept only one parameter “$row” which represents any row in the report. Therefore if we need to include any column in the calculation formula we should refer to that column as $row[“name_of_the_column”] For example, $row[“unit_price”]. Once we save the calculated_column.php file changes and refresh the browser we should be able to see the calculated columns displayed in the report.