July 18, 2018
To celebrate the release of new version, we would like to offer 15% DISCOUNT For All KoolReport Pro Licenses. The promotion starts today and will last for a week until 26th July, 2018. Seize the chance!
KoolReport Pro
KoolReport Pro is an advanced solution to make data report or dynamic dashboard in PHP. Building on top of the core, KoolReport Pro is powered by various extended packages that make it features rich, capable of handling almost all reporting tasks such as data processing, data analysis, visualization, exporting and more.
Let Your Data Speak
Data visualization is one of the most important factors to make a successful report. Intuitive charts or graphs will let your data communicate. KoolReport Pro provides you many chart types to choose, from the basic ones like PieChart, BarChart, LineChart to the advanced ones like GeoChart, Histogram, GranttChart and more. Those charts are from the best chart libraries in the world which we can name some such as Google Charts, ChartJS or Morris, all are unified in the same settings so you can switch between them in a flash of second.
Data Processing Power
KoolReport Pro is able to deal with your complex data and ultimately turn them into useful information. You need to summarize data in pivot table? Need calculate statistics or perform regression? All can be done with KoolReport Pro.
Simple, Fast and Extensible
Designed to be simple and easy to use, KoolReport only take you 10 minutes to install the framework and create the first report. It is very fast and able to handle large amount of data. Furthermore with plug-and-play structures, KoolReport is designed with high stress on ability to scale and extend functionality.
Work Seamlessly With Other Frameworks
“If you want to go quickly, go alone. If you want to go far, go together.”
We want KoolReport to go far so we designed it since the beginning to work well with its big framework brothers such as Laravel, CodeIgniter, Symfony and others.
Why Should I Get KoolReport Pro?
Beside all great features of KoolReport Pro, you also get the following:
- Full Source Code for customization
- One(1) year of Priority Support from data and software experts
- One(1) year of Free Upgrade
- One(1) year to get new commercial packages free
- Right to distribute to unlimited clients
- 50% OFF when renewing license
- Fully refund if things go wrong
Thank you very much and if you have any questions, feel free to reach us at support@koolreport.com.
<3 koolreport team
July 16, 2018
LET PARTY to celebrate the new version of KoolReport 2.78.0. We are very proud because we thought everything was just perfect in the previous version but still this new one comes with a lot of improvements. We have been working hard to find every enhancement point even tiny. So here come the new version, all are backward compatible so you need not to worry. Please upgrade!
The core
In this version, we have reviewed all datasource classes once more time to assure they are totally safe from any security threats. Furthermore, we have improved datasources for MySQL, Postgre, SQLSRV and Oracle to reduce their response time and memory usage by enabling the connection sharing. It means that, if you have multiple queries to the same database, connection will be shared between them thus reducing the unneccessary of re-connecting time. This technique has been implemented for PdoDataSource but have not done for others.
We have improved the src($name)
function as well. Previously, this method requires us to specify the name of datasource. However we found that 80% of the cases, we have only ONE datasource. So we thought that it would be nicer to just write src()
without any parameter, KoolReport will automatically get the first datasource to use. A tiny improvement but it can free our mind and reduce the typo of datasource name which resulted in error.
We have also enhanced the SubReport feature. In the previous version, we use HTML comment tags to mark subreport section but we found that some web servers remove the HTML comment tags for the purpose of optimization which will cause big issue for SubReport so we change to use HTML element. As a result, SubReport now works perfectly.
In previous version of KoolReport, we may need to remove the resources folder when upgrade to new version. It is quite troublesome and easy to forget. In this version, we use KoolReport's version and widget's version as a factor to generate widget's url. It helps us to reduce the unneccessary work when upgrade library, KoolReport will make sure all generated resources files stay updated.
Another great improvement in this version is the ability to write Javascript function inside Widget creation. We have created an advanced jsonEncode()
function which able to detect javascript string and later turn them into javascript function at client-side. As a result, we can write PHP and Javascript in an unified block of widget creation. Furthermore, this feature will unleash features of many widgets with heavy client-side code. Please check our case of DataGrid usage in this forum post to understand better this enhancement.
Last, we have improved the event of Google Chart
and Table
. Now in those events like rowClick or itemSelect, we will receive selectedRow with associate data beside the array one. For example, you can access the row id by selectedRow[0]
or by selectedRow['id']
. This will add convenience to get data cell value for further processing.
Above are highlights, you may view the full release note.
Packages
Together with the new core, we have release below new package version:
- DataGrid 1.5.0: Adding formatValue for footer and enable data-search and and data-order feature.
- Pivot 4.1.0: Add count percentage and sum percentage to pivot process
- Cube 2.1.0: New
SuperCube
widget
- Excel 3.0.0: Change to advanced
PHPOffice/PHPSpeadsheet
library and discard the deprecated PHPExcel
library.
- ChartJS 1.2.0: Return associative array on event
- SparkLines 1.20: Add ability to write js in widget creation.
- Inputs 3.5.0: Add ability to write js in widget creation.
- Morris Chart 2.0.0: Use advanced jsonEncode() function.
- DrillDown 2.0.0: Ability to work with
Table
and ChartJS
.
Beside the new version of above packages, we have add two brand new packages
- Codeigniter 1.0.0
- Laravel 1.0.0
Those two packages are free and born to make KoolReport work seamlessly in CodeIgniter and Laravel environment. In the future, we will add more packages like those two to support KoolReport working in other PHP Frameworks like Symfony, Yii2 and etc.
KoolReport Pro
And not to forget, we released KoolReport Pro 2.78.0 containing all above released packages. If you own KoolReport Pro, you may upgrade now.
Wrap-up
Have thought that the previous version was perfect, we are proved to be wrong by this new releases with a lot of enhancements. Listening to users is the key point and we will continue to do so. We thank you so much for all of your suggestions, bug reports, your case of usages that you shared with us. That's priceless! Thank you!
If you have any questions or comments, please post on this forum topic.
Enjoy!
<3 koolreport team
April 20, 2018
We are very happy to let you know that KoolReport 2.43.0 has been released. We continue to make KoolReport the great reporting framework.
Core updates
It seems KoolReport core is quite stable now. Only a small change in this version compared to the previous one is the improvement for Google Chart when dealing with numeric column in string form. We were reported by one of our customers a mysterious error that broke his chart. Further investigation leaded us to the root cause. One of his column is supposed to be numeric type but stored in string form so Google Chart ran into trouble. In this version, if a column is specified type as number, we will enforce the rule by converting the value of that column to number.
Package updates
Beside the new version of core, we released new package version for QueryBuilder, DataGrid, Pivot and Excel.
QueryBuilder 1.4.0 has been fixed the WHERE statement when dealing with boolean type. In addition, we fixed the issue of wrong quoting name of table and column. Now the table.columnName
will be generated correctly as 'table'.'columnName'
in SQL statement.
DataGrid 1.2.0 contains improvement for cssClass
property to add custom css classes for th, tr, td, tf. We also add the formatValue
property to allow us to custom the display of column value.
Pivot 4.0.0 has biggest improvement for css. Now we can customize look n feel by overwriting its default css classes. Beside that, we added new command expand()
at client-side to expand any level we want.
Excel 1.2.0 has been added new properties sheetName
and sheetIndex
in ExcelDataSource to let us specify exactly what sheet of excel we want to load. This will help us to avoid problem of Memory Limit Exceeded
if we have large Excel file.
KoolReport Pro
Together with above releases of new core and extended packages, we released KoolReport Pro 2.43.0 containing all recent updates. If you own KoolReport Pro license, you may update now.
<3 koolreport team
March 19, 2018
We have released new version KoolReport 2.42.0 with some minor fixes. You may download and upgrade now!
PHP 5.4 Compatibility
In the last release KoolReport 2.41.3, we have used the class constant ::class
to get the full class name of a class. However this feature is available in PHP >= 5.5. Those who uses PHP 5.4 will get errors.
With the promise to support PHP >= 5.4, we have replaced those class constants with strings containing real class names. This will help to solve the issues.
We would like to thank bysystem to let us know this issue.
PdoDataSource
We have fixed an issue of PdoDataSource
with PostGreSQL
when we try to set charset
. Thanks Daniel Amamoo-Otchere for telling us this issue.
Summary
The new version 2.42.0 contains some minor fixes for KoolReport. For your information, we also release KoolReport Pro 2.42.0 containing above updates and new release of QueryBuilder 1.2.0.
Thank you very much!
<3 koolreport team
March 2, 2018
We have released new version of KoolReport 2.41.3. In this version, we added new processes AccumulatedColumn
and ColumnRename
, made KoolReport work with composer
's autoload and fixed several bugs.
Autoload
As you may know that in previous version, although KoolReport
can be installed through composer
but it was not able to use the default autoload provided by composer
. As a result, we still need to include the koolreport/autoload.php
file to make KoolReport
work. Not anymore in the new version! Now after installing KoolReport package though composer, all classes will be loaded automatically without any extra work.
AccumulatedColumn
AccumulatedColumn
is a process to help you generate a accumulated result from a column. Let say you have a sale_amount
column, you may create a sale_balance
with be easily with following code
->pipe(new AccumulatedColumn(array(
"sale_balance"=>"sale_amount"
)))
So you will have this result
date | sale_amount | sale_balance |
2018-01-01 | 50 | 50 |
2018-01-02 | 100 | 150 |
2018-01-03 | 50 | 200 |
2018-01-04 | 200 | 400 |
2018-01-04 | 100 | 500 |
ColumnRename
Although you may rename the column using ColumnMeta
process, we have made new process called ColumnRename
to do this job. Renaming a column is common task so it is deserved a separated process. Below is an example to rename column from cName
to customerName
:
->pipe(new ColumnRename(array(
"cName"=>"customerName",
)))
Bug fixed
The Group
process has a bug which happens when we count row in a group that has only one row. This error has been fixed so if you use Group
process, please upgrade to this version.
KoolReport Pro
Together with the release of KoolReport core, We also released KoolReport Pro 2.41.3 containing the latest core and all available packages. In this new version, there is following updated versions Pivot 3.3.0, Export 3.5.0 and QueryBuilder 1.1.0. If you own the KoolReport Pro license, you may login and download now. If not, please please consider to get one since it is the most valuable package you have ever found.
Summary
In this version, we continue to perfect KoolReport
to make it the best reporting framework for PHP and we will continue doing so. We thank you very much for using KoolReport
, for your trust and your endless support along the way.
<3 koolreport team