benwillies.com

News

Ad Hoc Report Computed Columns
 Sunday, December 18, 2022

Reports can now have computed columns which are the product of a formula similar to a spreadsheet. For instance, you may want to show the percent of two other columns, such as ROUND(gross_gain_loss / cost_basis * 100, 1) which would be entered in the Computed option for a new column called gross_percent with format Percent on the Column Properties page. Although you could simply have your SQL statement output this percent column directly, you may want to have this percent shown in the totals line of the report, which would have to be computed using the totals of gross_gain_loss and cost_basis. Only arithmetic and a few text functions are allowed in the formula so this feature is of limited use outside of this percent example and putting as much logic as possible in the SQL statement is still preferred.
Ad Hoc Report Totals
 Sunday, December 18, 2022

You can now generate an extra row on any Ad Hoc Report that shows the count, total, percent, minimum, maximum or average of the values in one or more columns via the new Aggregation option on the Column Properties page. Only columns containing numeric data can be aggregated. And the totals row will always appear as the last line of a filtered or sorted report and is not exported so your spreadsheets will still work as expected.
PHP Session Collisions
 Wednesday, December 14, 2022

When hosting multiple web applications on the same server you will need to specify a different SESSION_PATH location in the configuration file for each application if either the SESSION_IDLE or SESSION_TIME are not zero in any configuration file. This is necessary because PHP periodically deletes all of the old session files within a given SESSION_PATH according to the minimum SESSION_TIME or the default of 24 minutes, so if you have one application that does not expire sessions for two hours then another application will very likely wipe-out the session data anyway unless the session data is stored in a different directory. For instance, the default location for session files is the /tmp directory but a much better configuration would be /tmp/sessions/application1, /tmp/sessions/application2, etc so just specify /tmp/sessions/application1 for the SESSION_PATH in application1's configuration file and /tmp/sessions/application2 for the SESSION_PATH in application2's configuration file and the framework will take care of building all of the directories with the proper permissions. And having a different SESSION_PATH for each application is a good idea even if you use the system defaults for SESSION_IDLE and SESSION_TIME.
No Pagination Option
 Friday, November 18, 2022

When an Ad Hoc Report is expected to always return no more than a thousand or so rows, rather than breaking-up the results into pages you can now specify that all of the results should be displayed each time the report is run by checking the No Pagination box on the SQL Statement page under Additional Report Options. Note that the RESULT_SET_LIMIT in the configuration file still applies but you would definitely want any report that large to be paginated anyway.
Auto-Submit Filters
 Friday, November 18, 2022

Ad Hoc Reports now support an auto-submit option on any filter in the left side panel, which simply means that as soon as a filter value is entered, checked or selected the report will refresh without having to click the Go button. However, if your site is a little on the slow side, you will not want to use this feature except in very limited circumstances and only if there are just a very few filters for the report. But for internal applications, having the select filters in particular refresh the page automatically is very snappy, even if other filters need to be checked. The new AutoSubmit option is located next to the other filter options on the Column Properties page.
HTML5 Compliance
 Sunday, August 15, 2021

The framework has been significantly upgraded to be fully HTML5 compliant and all of the old workarounds have been removed, particularly concerning how the buttons work. However, only the more recent browser versions are supported now, beginning with Internet Explorer 10 and Safari 13 (Mac OS X High Sierra). Also, any custom applications built with the framework will require some changes to the CSS files and perhaps a few minor code changes. The best approach is to make a copy of your application along with the old framework directory, making sure to point the symlinks to the framework copy, and then install the new framework directory and slowly work through your custom application php scripts repointing each one to the new framework code to see if anything breaks (typically it will only be cosmetic issues requiring a change to your custom stylesheet). Note that the method of supporting custom CSS files in the framework has changed. Instead of making a copy of the entire basic CSS file and then modifying it for your application, the new approach is to create your new stylesheet and then import the basic.css file. The CSS design tool will then automatically copy any classes as you modify them into your new stylesheet. You will also notice that the index scripts no longer use tables for layout but this necessitated that some of the markup functions return their html inside DIVs instead of TDs so that will require a script change (see markup_main_banner).
1 2 3 4 5 6 7 8 9 10 Next
 Results 1-6 of 109
Advertisement