Introducing BKeeney Shorts
BKeeney Shorts is a Reporting Tool for Xojo using classes. You can display them in a print preview, send to a printer, export it to HTML, or export it to PDF (if you are using the MonkeyBread Software DynaPDF plugin).
The classes work on Mac OS X and Windows desktop and console applications. It might work in Linux but we’re not supporting it simply due to the number of Linux distributions to support.
The following basic drawing elements are available:
Text, Line, Oval, Rectangle, Rounded Rectangle, Text, RTF Text (desktop only), Image
All of these elements can be used in any combination anywhere on a page, group, or in a document. Each page can be a different size and orientation.
Auto Line Height Adjustments
New in version 1.1 is the ability to have Text objects expand vertically to fit the text in the block. The new AutoHeightAdjust property is all you need to set to get this to work. Whenever you, or the rendering classes, request the bounds of the text object the text height is calculated. By adding an AutoHeightAdjust Text object to a GroupItem you automatically grow the GroupItem too! This makes it really easy to create ‘rows’ of variable height data.
The auto height adjustment isn’t perfect, though. One drawback is speed. We recommend that you limit the number of Text objects that get the auto height adjust set to true.
New in version 1.5 is the BKS Shorts Report Designer. This is a set of Xojo classes that allow you to embed a report designer into your own Xojo projects. Yes, that’s right, you can embed a full features report designer into your end desktop application. Now, instead of hours to create a basic report via code you can be done in minutes.
- Connects to any database that Xojo natively supports
- Easy formatting of all text objects
- XojoScript programming at the band level that allows runtime decisions based on data
- An intuitive interface for Xojo developers
- Works on Mac and Windows desktop apps (Linux isn’t supported but should work)
- Allows formatting of numbers to whatever the Xojo Format method allows
- Use the Designer as is, or make your own modifications. You get the FULL SOURCE CODE with it!
Overview of How BKS Shorts Report Works
Integrating the Report Designer Into Your Project
Create Unusual Reports
BKeeney Shorts allows developers to create reports that would be impossible (or very hard at the very least) to create in other reporting environments and even in the Shorts Report Designer. Shorts allows you to span rows with any of the elements. Matter of fact, Shorts really has no idea what a ‘row’ means since you get to control every aspect of printing.
The GroupItem makes it easy to group your report elements into logical groups. Perhaps your Header and Footer elements are groups. Perhaps a recordset row is a group. It really is up to you and your reporting requirements.
Many reporting tools offer SubReports, or the ability to add wildly different type of reports into one bigger report. Shorts doesn’t support Subreports only because it doesn’t need to. Again, because you control every aspect of the report you can code it to your exact specifications.
Do it With Style
BKeeney Shorts makes heavy use of inherited styles. Create one text style for the Document and each page and each text element inherits that style. No need to perform tedious formatting on each element. Of course, you can override any style and clone styles, when you need.
The Benefits of Coding Reports
We’ll be honest, coding your reports can be slower than many traditional reporting tools. We think there are quite a few advantages to coding reports than having to rely upon a tool to do them.
You control everything. Don’t like placement or the way it page breaks? You can change that because you have the ability to change it. Perhaps your users want to create a report in Portrait mode and not in the Landscape mode you had anticipated. Using some simple math you can create reports that handle either situation.
BKeeney Shorts is fast. We’ve generated 24,000 page reports and have calculated that on a main thread we can generate about 300 pages a second. More than fast enough for most developers needs. And since you have control over how many pages are created you can exit out in abnormal conditions (really, who wants a 24,000 page report?).
Unlike some other reporting tools for Xojo we’re not going away. We stand behind our product and we offer support. We use this product in our own products and our own consulting clients. If you need help and support we’ll be there to help.
What does the future bring?
We use Shorts in all of our desktop and web consulting projects that require reports. We plan on enhancing the product based on feedback and on our own needs. There is no roadmap, nor timeline, for new releases and updates, nor a guarantee that future updates are free.
If you have a need for something that Shorts doesn’t already do contact us.
Licenses and Pricing
BKeeney Shorts comes in only one package. The Pro License is $300 and all classes are unencrypted and available for your modification.
See the Report Designer in Action!
Report Designer User Guide PDF
BKeeney Shorts Demo Project for Xojo. Debug only example project.
Users Guide PDF
Version 1.5.3 – 28 Jan 2016
- Added SC_GetCount in the Band XojoScript editor. This lets you get how many times this band has been shown.
Example of use is to have line numbers on your report without having to do it in SQL.
- Updated German localization
- Rearranged UI on ccPAF_Filter (Filter Data) to make it a bit more obvious
- As a Text Item or Field Item are put on a report it will automatically use the “Default Style”
- Fixed an issue where the Default Style wasn’t getting passed to the generated report.
- The Styles Editor now allows you to delete multiple Styles at a time.
- Added a new example of how to print directly to printer without having to use the viewer.
- Reconfigured Demo window to break between Report Designer stuff and older code-only stuff.
- Added SC_GetCount Demo
- Fixed some items in the HTML Renderer
- In PAF_PrintKit.PrintText.constructor if there is no DefaultStyle we create one.
- ReportPF will now extract Styles from the report definition file.
Version 1.5.2 – 14 Jan 2016
- Started loclalization process and made dynamic strings. Spanish, French, and German are in the project. •••NEED HELP IN LOCALIZING•••
- Fixed issue with Bands Editor when trying to delete Grand Total Band.
- Designer Canvas will no longer let you delete a Grand Summaries band. Must be done in the Bands editor.
- If the report has a NULL date it will now create a blank string rather than use the field name. Changed in ReportPF.CreateItem.
- Selected bands now highlight with background color. Color constant at PAF_PrintKit.PrintBand.kBandSelectedBackgroundColor.
- Fixed an error in the PropertyList that would sometimes overwrite a Text value with a zero thus causing all sorts of havoc with reports.
Version 1.5.1 – 08 Jan 2016
- Added a new demo of how to create a report from just the report definition
- Comes with MySQL, PostgreSQL, and ODBC enabled. CubeSQL still requires changing the constant
- Bug fixes
Version 1.5 – Jan 2016
- Introduction of Report Designer
- Integration of Report Designer into the Demo
- Added Fit to Width and Fit Document into Report Viewer
- Fixed quite a few bugs for Text wrapping and Alignment
Version 1.1 – 06 Feb 2015
- Text blocks now have an AutoHeightAdjust property that lets them auto wrap their text and change the text height
- Desktop now has an RTF Block and uses Formatted Text Control to convert into Shorts reports and HTML
- Demo project for Web and Desktop with viewers you can use in your own projects
- Multiple demo reports with the various ways to create a report via code
Demo 07 Jan 2014
- Updated the demo to work without modification in Windows
Version 1.0.1 – 01 May 2013
- Removed dependency of MBS plugin for the HTML renderer class
- Added sample database to demo project
Version 1.0 – April 2013
- First public release