vReports is an enterprise-grade reporting module for SuiteCRM that is easy to use, but hosts many advanced features. It includes helpful functions like Orgcharts, Bookmarks, and interactive graphics.
Release Notes
Release Notes vReports
v.2.1.0
- Suitecrm v8: Changes to legacy routing at installation.
v.2.0.3
- Suitecrm v8: changed Administration presentation functions so that the admin panels appear correctly in admin view.
- German language was = English
v.2.0.2
- Error in queries resolved when the same table was used in a subquery through link-chain (e.g. User table accessed twice through a hierarchy)
- In subqueries, if a SQL was included in a field, that had a reference to another field that had also a reference to another field, only the first reference was "translated".
- Combination of setting "ignore empty filters" and filters "starts with" and "ends with", did not work properly when fields had the value NULL.
- REGEXP usage for MSSQL removed (still no support for dynamic tables).
- SuiteCRM 8: vh (viewport height) does not work well in SuiteCRM 8 (clash with new Angular/zone functions used by Suite). Changed to fixed size for various elements.
v.2.0.1
- Internal streamlining
v.2.0.0
- License management included
v.1.7.7
Issue with colors and MetaReports.
Solved issue when multiple groupings are used.
v.1.7.6
- Issue with charts resulted in orgchart, parallelcharts and timeline not to work.
v.1.7.5
- Number of changes to harden chart generation, specially when using Detail grouping.
v.1.7.4
- Cleanup naming of module.
v.1.7.3
Transpose reports gave errors under certain ciscumstances.
Added Belgium as geo-map (4 levels)
MetaReports could not be edited.
In editView, MetaReports allowed to choose table/charts (erroneously). Deactivated.
Queries with "html visible" fields ( </> visibility ) resulted in automatically grouping while not in the
v.1.7.2
- Issues with html charts and php 8.2 resolved.
v.1.7.1
- Charts did not work properly (commit issue)
v.1.7.0
Now compatible with SuiteCRM 7.14 (Support for 7.11 - 7.14)
Migration to PHP 8.2.
Totals did not appear correctly aligned when executed from Edit-mode
In List View, the "meta-report" filter did not work properly: when not set, meta-reports did not appear. Now they do.
Additionally, now when a module is selected, and meta is set to "yes", no results are shown: meta reports are not related to a specific module (sub-reports are...)
If you clicked on the edit-icon from list-view, the "send-email link" check-box was not populated properly (and lost if you saved the report)
An issue was introduced in a previous version which made the link sent as "send-email link" unusable (applies to scheduled reports)
For scheduled only reports, the form with max number of stored reports was not shown.
In EditView, when report is private, roles do not longer appear.
v.1.6.2
Configuration of sub-chart for colors and wizard-config got lost when you edited a report (Report worked fine but Edit view was not properly loaded)
Orgcharts for "Accounts" module can now also be edited.
Orgchart Edit buttons were not translated.
v.1.6.1
- If you now delete the "dummy entry" of Target (in editView), and perform a save, it also results in the target entry to be deleted.
This is therefore now equivalent to "Clear" and "Save".
- Issue with creating new Chart (+-sing did not work) resolved.
v.1.6.0
- Introduction of a new Report type: "orgchart" for the apex library. This enables the presentation of organisation structures with some extra features (see documentation)
- Supports organizational structures for in principle any module, although users/employees are the most obvious ones
- Takes into account elements that are not in structure (no parent and no children) as well as filtered out parents
- Supports color presentation (as expected)
- Supports extra configuration options
- You can edit Employee and User hierachies using drag&drop
Please check out the vReports User manual for all facilities and usage.
Resolved issue in Report Edit view: multi-select in Y-axis (applies to a few report types, including timeline) did not handle well if 2 fields were added that used the
same source field (e.g. 2x id field)
To determine the size of the more complex charts, the type of chart was not taken into account.
Introduced the possibility to show vde Elements (vReport, Form, View) as extra info for nodes in Orgcharts.
Transpose functionality (Table configuration in EditView) was supported for only very specific cases. Now supported for non-multi group outputs
If fiscal or natural year was not filled in, system automatically assumed current year. Now: empty is empty.
When executing a report, and using filters, when performing an export, only the data of the first executed report was used.
orgchart now takes into account that ID of SuiteCRM elements can be of fixed-size and if empty can be "full of spaces".
v.1.5.6 (bugfix)
If fiscal or natural year was not filled in, system automatically assumed current year. Now: empty is empty.
When executing a report, and using filters, when performing an export, only the data of the first executed report was used.
Report router is not initialized if user is not within Router module
v.1.5.5
- Access to Virtual Relations did not apply correctly. Now: edit only if correct rights. Execution: everyone who has access to report can "benefit".
This is in line with standard vReports access rights.
- Access to global variables ($GLOBALS) in sql only worked for non-array variables. Now you can access things like:
${global->sugar_config->import_max_records_per_file}
- Single quotes in filters did not work properly for MSSQL.
v.1.5.4
Virtual Relations did not work properly for non-id fields (note that for non-id fields, only one virtual relationship is supported)
Charts did not work correctly under very specific circumstances (when SQL was used in Detail, AND grouping applied) (Logic "broke" after last changes to "Group By" generation)
this resulted e.g. in heatmap example graph not to work.
v.1.5.3
Virtual relations gave an error in MSSQL.
Hardening "Order By" generation.
v.1.5.2
Deleted unnecessary migration actions at installation
In editView, if a module had a field that included a double quote label, module fields would not show.
When saving a report, if multi-byte characters were included in Report (e.g. ë), the Report did not save.
json btoa function rewritten in all code (to support multi-byte characters)
v.1.5.0
Max number of columns for filters increased from 4 to 5.
PHP with variables can now be used for Detail-grouped fields (for example, you can now present html in the Detail headers...)
Cleaned up handling of "Detail *" grouping in case of Grouped reports.
Multiple Details in one report were oddly ordered. Now ordered in order of appearance (as with other fields)
When using multiple Details, paging works now properly.
Removed automatic ORDER BY for subqueries when using MSSQL
Virtual relationships did not appear in EditView, when the module with the relationship was not the main module.
One Virtual Relation for each module is now supported for field "id". This is particularly useful for parent_id type of relationships.
**TODO: in the future we want to support multiple virtual relationships for the id-field (and further in the future for other fields too)
EditView: You can now map a URL parameter (e.g. record) to more than one filter. You may need this for more sophisticated filtering reports.
EditView: single quotes in SQL resulted in errors in browser. Specifically important for MSSQL deployments.
"GROUP_CONCAT" now recognized as aggregated function (and therefore now no automatic group by).
When using SQL in fields, with underlying MSSQL DB, Group BY was done on alias. This is not allowed in MSSQL (it is in MySQL: better looking sql statements...)
MSSQL does not allow group by on Subqueries. This is now taken into account when creating automatic Group Bys.
If in a subquery, information was retrieved via link-chains > 1 then table aliases were not properly calculated and the query broke.
css changes:
- style.css is now also loaded when executing report in preview mode (as happened already in Detail view).
- pagination buttons that are disabled are now "softer" (less dark)
Clear filters did not work for Reports in pop-ups.
Facy multi-enum disappeared after first search (and only then !) when report was in pop-up
Cleaned up some logic when report was reloaded to not duplicate generated data.
Element style file was replicated at each refresh, which resulted in ever increasing size of report html files
Collapse icon with simple reports did not work. (icon appears above results)
Cleaned up code to cover proper reload in various scenarios.
v.1.4.5
- potential issue with str_starts_with resolved.
v.1.4.4
- #57 Search filter omits meta reports in certain cases
Various issues where resolved in List-view. Also: after clear, module filter did not work.
- #58 When defining "Targets", the "Clear"-button doesn't do anything
Note: if you delete the first target row, you need to (currently) click again on "Clear" to "clean up properly".
- #59 : No subtotals shown on a SUM-field with sql enabled
Please check out the documentation for correct use of aggregated fields.
v.1.4.3
- Upgraded ApexCharts library from 3.40 to 3.41
Now funnel like charts are supported (using Advanced Configuration)
v.1.4.2
Upgraded ApexCharts library from 3.19 to 3.40
For Charts, not including a "Grouped", resulted in error.
When selecting "Detail" on an integer value, formatting went wrong and data was not properly presented.
Slightly more breathing room in Edit View, Charts tab
Added Counters module
Finetuning in Graph queries to cope better with ordering.
If virtual relationships is fully empty (fully empty: also the deleted entries have been removed), when you install vReports, some standard,
counter related data is inserted.
- Kill query for long outstanding queries did not work when standard DB used (admin option).
v.1.4.1
- Extra support for checks on JSON strings.
v.1.4.0
- For advanced users: introduced support for INNER and Right Join when creating a report with multiple tables (magnet icon next to target icon)
INNER Join: will only show results for the entries when there are values in the left and right entry
Right Join: will show values when the right entry is NOT NULL.
Left Join: default. Will show values when left entry is NOT NULL.
Example: Choose Table accounts and do a Group by Account, and Count the Opportunities. (main table is the "left table")
Left join: will show Accounts with 0 Opportunities (useful when you want to filter on 0 opportunities (note that this would be a Function filter)
Inner Join: will only show Accounts with 1 or more opportunities.
Right Join: would show Nr of Opportunities without account associated, and Accounts with 1 or more Opportunities
- Changed behavior when in Fields Management "Deleted Usage" was checked. Before, this meant that ONLY entries where deleted was not NULL applied.
Now, this is left open (you can now use ignore emtpy filters also for "Deleted", or select explicitly true, false or NULL).
Technical: deleted superfluous custom/extension/modules/Administration: this is now properly managed in the manifest in a different way.
Automatic GROUP BY did not work correctly for subqueries (resolved) (for MSSQL now automatic MAX insert is removed: this is now taken care by automatic GROUP BY,
...when no aggregate function is defined in a subquery)
- Subqueries (editor-mode) now support properly use of variable references
This is handy when you want to include for example a filter on a date-function that returns something different than a date (e.g. dayofweek)
When editing SQL in a subquery, the visibility button logic for the filed was lost (you could have more than one visible element in a subquery)
Order by anything else than the X-axis resulted in Graphics not to appear.
"percentage" is now also supported as a format type for graphic representation (this needs additional work as values are now presented 0..1)
When you use aggregated functions in SQL, the system will now recognize this and allow you to add function filters (HAVING).
If you choose for a field filter, the system will assume that you are using ONLY an outer-aggregated function, e.g. SUM(opp.counter)
The system will not look for complex calculated aggregated constructions (please use another construction if the need arises)
CROSS JOIN (AllxAll added) **
Basic extended Chart configuration now supported for Apex chart engine. Lots of examples in the documentation.
Virtual Relationships now supported: you van create "Virtual Relates" between two modules. Specially interesting in combination with future "Counters" module.
v.1.3.2
- mssql related issues:
- granularity beyond seconds is dropped.
- there was an error in list view
v.1.3.1
Placeholder for multienum is now also translated (in user input filters)
Filters in dashlets did not work. Now they are fully functional, also supporting "save search".
v1.3.0
My items (edit view, filters): added explanation to documentation AND normalised.
Issue with "My items" in filters. When changing from "My Items" to another operator, Select field was still visible.
cleaned up some html generation for report execution: some divs where created unnecessarily multiple times
Group By, parting from "Date" resulted in issues (now, if the calculated field is not a date, it is handled properly)
Sometimes when working with the graphical editor in subquery mode (and no SQL defined), the changes were not saved.
When executing a report with a Form from the editView, there was a clash in function names which resulted in various issues. Resolved.
When applying a filter on "My items" using "User Input", only 2 values were permitted (radio-button). This is changed now to standard "boolean" including "not defined".
This is now in line with normal filtering, and allows for constructions like "I don't care who created this" for filter.
v.1.2.11
In Edit-view not all relate information appeared if the user was not admin. This was due to a bug in config AllowedModules and ForbiddenModules
Added Labels for all standard apps using vReports as basis (and Forms&Views)
Improved translation label handling for enum values.
If Report is imported with absolute id, name is now always kept (before only if same id already in system)
More reports added to standard pack (only bundled)
v.1.2.10
Icon presentation for Add dashlets moved to common.
Added apply automatic GROUP BY for fields with "html" visibility
Pop-ups do not longer change color when "hover".
Further finetuning for positioning of pop-ups
It's now taken into account that the total nr of entries can be more than the entries in main table, when Joins apply.
Before, this could result in insufficient number of results presented when no explicit Detail or Grouping was applied
v.1.2.9
- For DBs with "sql_mode=only_full_group_by", although correctly, BD would give an error if a report-field did not include a function or a Group By.
This would result in "No Results" when report was executed.
As of this release, an automatic Group By is performed for those cases. This means that now potentially more results are shown than expected
although, again, this would be correct. Note that aggregate functions in SQL are also taken into account (i.e. hardened code).
Previous item solves #48
Introduced MAX as a standard function for all types. If you GROUP data, depending on your DB setting, you MAY HAVE TO use a function
for all fields displayed (it has a certain logic). In those cases you can (consciously) use MAX (see documentation).
You can now, in Report edit mode, also add a field to the report table by clicking on the name (previously you had to click on the icon)
Currency elements in Report Edit mode, show now a "numeric" icon (instead of generic string).
You can now define for Reports an absolute reference (needed if you set-up reports that reference other reports)
see manual for details on name convention (the name part starting with # and up to first space or next # will be used for absolute reference)
note that if before exporting the father report, you have to (now) export first all the children and import them back-in
(in this way the children get the absolute reference before you export the "father").
In follow-up releases, this mandatory intermediate step will be removed.
Max length of id is 30 characters (excluding hashes) (system adds an internal prefix of 6 characters).
In List View, admin can now properly filter on modules
In List View, module filter was lost when doing a refresh.
New feature: Support for "inline" presentation extra info (used to be only pop-up) (in common module)
Bug: when using charts, if you selected a field with "Detail" (non-date) grouping, ORDER did not work. (e.g. stacked chart of cases -by e.g. state/status-
using as X-axis calculated nr of days open).
In list-view: when no APIs or alternative databases are defined, now, a simplified view is shown to filter on modules.
In Edit View, if Format "Date" was used, the "add time" option did not work correctly. If not marked, no time will appear now.
Translation of Labels simplified in line with Forms&Views. Any Alias translation can now be defined in the vde_Reports language file.
Just include the LABEL id as alias. In-element translation takes precedence.
18: lightweight styling did result in non-readable tables.
22: first week of year is now the first week with 4 or more days in the year (used to be first week with a Sunday or Monday)
This is done now for both MySQL and MSSQL databases. Note that week of year did not work before for MSSQL.
41: Draggable in edit mode is made a bit less sensitive so that a click for example "add filter" is not mistaken for a start drag event.
38: Filtering with "equal" using Calendar did not work.
Tables ordered on multiple and/or calculated fields, do not work together with paging (SuiteCRM also does not support multi-ordered tables "as is").
However, for tables without headers, this is resolved.
Previous item: now also supported in case of reload report.
Includes new package of more business oriented standard reports
(need to be uploaded separately, see documentation)
v.1.2.8
- #47: Meta reports could not be edited.
- Grouping by date for MSSQL had issues for weeks, days, hours, ...
v.1.2.7
- #43 "Missing JOIN when adding custom field of related module via a relate field". The logic did not take properly into account custom relate fields
both linked from and linked to.
v.1.2.6
- For subqueries defined using graphical editor, if no function is defined for visible field, MAX is assumed (this avoids error in MSSQL)
v.1.2.4
admin is now allowed to make reports of all modules (no restrictions)
if vdeAllowedTables (sugarconfig) is not defined it is assumed that there are no further restrictions.
enhanced functionality around forbiddenkeywords (delete, insert, ...). The check is now more finetuned.
resolved some additional MSSQL compatibility issues
hardened single quote processing by taking into account optional 0, using: preg_replace("/�*39;/i", ...
enlarged SQL and PHP workspace (number of rows)
resolved some single quote issues that affected presentation (sql, php).
v.1.2.2
vReports can be upgraded without uninstalling first.
29, #30 fix: tinyint(1) boolean and bool are not treated the same.
NL language-pack updated.
31 solved (in Common). Module for related fields was retrieved from wrong place. This resulted in issues in vReports with non-standard modules: pop-up to select related fields did not work in execution.
v.1.2.1
- When "new" records are created, more scenarios are now supported. This is specially relevant to support Forms&Views.
v.1.2.0
- Support for MSSQL (Note that some example reports are now database dependent: various versions are available)
v.1.1.4
- Multi-enum dropdown was too wide.
v.1.1.3
BUGS:
- Draft Reports did not open correctly
v.1.1.2
New:
Map-charts allow now for more interaction (zoom, click, drag)
Improved support for filters in Meta-reports
Added more documentation on Meta-reports.
Improved support for multi Y-axis for Apexcharts.
BUGS:
Various small bugs solved.
Maps were not properly scaled when data was available.
Charts did slightly overflow into next elements
Tooltips in maps were considerably off when sidebar was open.
Title did not show in Apex-Charts
In case of advanced format "Multimedia", content indicator (blue-wheel) was active, even after a "Clean" format.
In edit mode, if you did an execute real quick "while loading" the report in edit mode, you got "no results"
In Edit mode, when executing a report, the "paging" buttons broke the execution when clicked.
Config option for charts now works: you can now present up to 4 graphs in a row.
v.1.1.0
New:
Support for ApexCharts, including new graph "timeline".
Support for PHP 7.4 (now supports consistently __construct for classes initialization).
v.1.1.0
New
Various css improvements
Filters with roles restrictions now do NOT apply to admin users.
Bugs:
- Various small bugs resolved.
v.1.0.4
Bugs:
- Scheduler-Tasks were not automatically created.
v.1.0.3
Bugs:
- Metareports: when including more than one report with Target, error occurs.
v.1.0.2
Bugs/Code improvements:
Code improvement: Simplified activation of Ajaxban, and removed that section from language files to clean-up code.
Improvement: Now, in edit view, after selecting an icon for a button, you can de-select it (and use plain text instead of an icon).
Bug: Non saved reports did not execute well in edit mode (an error message was presented) (issue introduced in v.1.0.1)