BKS Shorts 1.8.1 Release

BKeeney Software is pleased to announce a new release of BKeeney Shorts, their Reporting tool for Xojo. BKS Shorts allows users to embed a report designer into their desktop applications and render reports onscreen, to a printer, as well as to HTML, CSV, and PDF formats (PDF requires a DynaPDF license). Web applications can render reports to HTML, CSV and PDF Formats.

Version 1.7 is an extensive update with a new, faster, file format. Users with dynamic queries can now put a summary of selections in the header. Dynamic queries that use popup list selections can now make them optional. And much, much more. Complete change list below.

BKeeney Shorts Product Page: http://www.bkeeney.com/allproducts/bkeeney-shorts/

BKeeney Shorts costs $300 and is shipped with 100% unencrypted Xojo source code.

New Features:

• Added SupressField property to Fields. This will keep rows with identical text to the row above it from displaying. Resets on each page.
• Added ?? shortcut to Header/Footer bands to be able to put report parameters into the report. Feedback appreciated.
• Added check upon opening reports in the designer to see if all fields in the report are still valid.
• Now provide an error message to user if there were any errors while generating report.
• Added a Version field to the report to make it easier for future file format changes. New file format is 1. Added a conversion routine to convert to version 1.
• The Property List now has a dedicated popup menu for Date fields.
• The Query List Dynamic queries can now be made optional to ‘select all’ for that field.

Changes:

• Now provide feedback to the user during report generation. This will give rough estimates of numbers of rows created.
• When switching back to Design view we now make sure the thread generating the report is killed if still running.
• Major rewrite to the DBWrapper class to make it much more effecient.
• PAF_QueryCondition made part of the PAF_DatabaseKit and renamed to PAF_DatabaseKit.QueryCondition
• Reports will save the DefaultStyle from the StylesList.
• Added some Localization strings into the object list.
• Removed the Contextual Menu from the Property List format item. Only used for Dates and it now has dedicated Date Popup.
• Added a WaterMark to two of the Coded reports.

Bug Fixes:

• Fixed issue where Grand Summary bands weren’t working.
• Views are now properly vetted through the TableViewAddCheck.
• Rescanning the schema will refresh the object list properly now.
• Can no longer drag a report objects (from the Report section of the Object List) into the designer. Now you can only drag fields and report primitives.
• Repeat Each Page and Page Break are now only valid and displayed for group headers.
• Adding/Removing items from the Designer now updates the Report Objects section of the object list.
• Fixed wording in the Band Editor.
• Background Text Color now saved properly in Style editor.
• Pressing Enter/Return while in the Properties List will update the object in the Editor.
• Fixed issue with report time in Report Footer if user had never set format in preferences.
• Fixed issue with line objects not calculating their top/right property properly.
• Fixed a date conversion issue when formatting the dates to other than default.
• Fixed mouse handling and drawing issues when the canvas width was smaller than the page width.
• Fixed Report window Title not showing on initial save of report in designer.
• Fixed odd random Nil Object Exceptions when updating from the property list.
• Fixed the WindowMenu class to work with multiple menu bars used in the project.
• Fixed issues with the IsFunction property when generating reports.

Shorts 1.7.1 was released today and is a recommended update for all users.

Changes:
• Removed HierarchalListSelector from project as it was no longer being used.
• Rows that have a field with CanGrow set to true no longer affect positioning of other items in row.

Bug Fixes:
• Fixed a bug in grouping when using PostgreSQL.
• Fixed bug getting field types from ODBC Databases.
• Fixed issue with Web Dynamic Date Picker
• Moving items with keyboard now updates the property list
• Items in the report object list can now be deleted when using the delete/backspace key
• Fixed issue with not being to select the 2nd half of a line after generating a report
• Fixed issue with Line formatting in generated reports
• Fixed issue with reloading manually entered table relationships
• Fixed an issue with row items stacked vertically with a Text item set to CanGrow
• Fixed issue that Text Items set to grow didn’t have its background expand accordingly

Shorts 1.7.2 was released today and is a recommended update for all users.

New:
• Added MetaData dictionary that you can pass into the ReportPF class. Any Text field with % at start and end of string will be replaced with values from the meta dictionary.

Example: dictMetaDictionary.value(“Name”) = “Bob” is passed into ReportPF.
If I create a text item with the text %Name% it will be replaced with Bob.
If there is no match from the dictionary the resulting string is blank.
Note: the dictionary tag is case sensitive so “Name” and “name” are not equal. It must be an exact match.

• Added mouse coordinates into designer window.
• Added Don’t Sort Column Names preference. When set, field names are no longer sorted.
• Added FieldAddCheck event to allow developers to hide database columns from the field list.

Changes:
• Warning message given if user attempts to add db field to report header or footer.

Bug Fixes:
• Added better mouse tracking on Line elements
• If a DefaultStyle can’t be found one is now created. Prevents an exception when saving.
• Changed the Priority of the ReportThread. This allows MySQL reports to run again in Xojo 2016 R2.x releases.
• Double clicking a Table/View Field in the object list will add it to the report body

Shorts 1.7.3 Released today and offers major improvement in Margin handling. We have also added a ‘drill down’ report example.

New:
• Added Page Setup: Page Orientation to Toolbar
• Added Page Setup: Page Size to Toolbar
• Added Page Setup: Margins to Toolbar
• Added “Drill Down” Report using Chinook database.
• Dragging an image folderitem onto the Designer automatically imports the image and adds it to the report.

Changes:
• Removed LeftRight Margin and replaced with Left and Right Margins
• Removed TopBottom Margin and replaced with Top and Bottom Margins
• Reworked the Margin system in the designer
• Reworked the Margin system in the renderer
• Blank report now respects new default margins
• Added ObjectSelected event in the PreviewCC to mirror the event brought back in ctlViewer
• Added some comments in code to help direct users when they don’t have the DynaPDF plugin installed

Bug Fixes:
• Now using Realbasic.Point rather than Point from Einhugur plugin.
• Changing the size of the band also changes the End point Y of the line. Before it only changed Start Point Y.
• Changing the UID of an object now updates it in the Object List.
• Vertical Scrollbar in the Designer now works as expected.
• Can no longer drag a db field from a body/break band to Header or Footer band.
• Can now drag the footer band all the way to the bottom margin
• Web Only - ?? now works again in header/footer

Shorts 1.7.4 was released today. This release is a bug fix release and is recommended for all users:

Changes:
• Adjusted Favorites handling in the Database Connection window (SQLite connections cannot be added with the + button)
• Added toolbar space in Designer Window for added visibility (Mac Only)

Bug Fixes:
• Fixed encoding issue with strings
• Fixed location issue with RepeatEachPage bands
• Fixed encoding issue specific to MySQL databases
• Can now duplicate a line item in the Designer
• Took another stab at reducing random/spurious Nil Object Exceptions after updating the property list
• Changing the Line width no longer affects the page outline or the text items in the Footer.

Shorts 1.8.0 was released today. This release is a HUGE release compared to most released.

Version 1.8 fixes a rather insidious bug that’s been in the Designer since day one. The Top property for PrintItems was always reported as relative to the top of the page. Well, this is just plain wrong because in a banded reporting tool Top and Left should be relative to the BAND, not the page. This one change literally affected everything from read & write, to drawing of the display, to all of the mouse handling. PLEASE REPORT ANY ISSUES YOU FIND IN MANTIS.

IMPORTANT!!!
Windows users should not use this version with Xojo 2016 R4 because of printing issues with the Direct2D engine.

New:
• Added Informix to the list of databases

  • Uses the SQL Plugin from MonkeyBread Software. Requires additional license purchase from MBS.
    • Added Constants to the tool. Essentially a Dictionary that allows a user to add constants to a report without having to
    put it in a database table.
    • Constants show up in the Tool List
    • Constants Editor is invoked under the Report menu in the Demo
    • Constants are saved in the JSON string and can be changed at runtime before rendering
    • Constants are by report. Please let us know if you want global constants.
      • Added the ability to have nested conditional statements in the filter data option of Report Designer.
    • Added two integer properties (Leading and Trailing) to PAF_DatabaseKit.QueryCondition
    • required to include these in SerializeJSON, Constructor, and Clone methods
    • updates to winDBFilter adding a mousedown event and UpdateList method. Also modified Display method to accomodate the nested conditions
    • updatte to winDBFilter added pushbuttons to add, remove and clear groupings.
    • update to winDBFilter added headerpressed event to prevent sorting of clumns in listbox so logic is not changed

Changes:
• Added graphics to the primitive elements (line, rect, oval, image, text) you can drag to the design canvas
• Removed the metadata shortcuts.
• Turned off sorting filters by column in winDBFilter to prevent changes in filter logic
• Changed location of Sakila (example database) download location.
• Resize item behavior changed a bit from previous version. WANT FEEDBACK.

Bug Fixes:
• When rendering directly from JSON string the DB schema isn’t rescanned unless necessary.
• Exporting to CSV not brings back all rows.
• When changing a text format to an already existing style, the stylename was not being updated, thus in some cases causing the style to revert to the default.
This was a particular problem when saving a report and then printing directly to a PDF.
• Positioning of the items in the bands is now relative to the band rather than the page.

  • So setting an item to (0,0) will put it to the top/left of the band it’s assigned rather than moving it to top/left of the page.
  • SEE NOTES BELOW
    • Fixed issue with Encoding of special characters. (Thanks to Valdemar De Sousa)
    • May have found the issue causing occasional hard crash. Had to do with updating the Property List after it had already been dismissed.

NOTE TO ALL USERS:
Thanks for using BKS Shorts, the premier reporting tool for Xojo projects. We appreciate all of the feedback we’ve received over the course of the year. Trust me when I say that Shorts wouldn’t be where it is without your dedicated use and feedback of issues, concerns, and feedback requests.

Version 1.8 is the last major release of the 1.x series. Version 2 will add Report Headers/Footers and a new SQL engine that will hopefully make reports much faster than they are today. When Xojo gets their act together for 64 bit debugging you can be sure we’ll do 64 bit debugging and make sure things work. A stretch goal for version 2 is subreports. VERSION 2.0 will be an upgrade.

@Bob Keeney and company, yall have done a great job with Shorts. I am amazed how far it has come with such short list of staff and all the work you do on a daily basis for your consulting customers. Thank You!

Thanks, @scott boss! We done what we can when we can. We have an upcoming project that will put us (me especially) to the test due to reporting requirements and conversion from another reporting tool that has more options. Fun stuff, I tell you. :slight_smile:

BKeeney Software is pleased to announce a new release of BKeeney Shorts, their Reporting tool for Xojo. BKS Shorts allows users to embed a report designer into their desktop applications and render reports onscreen, to a printer, as well as to HTML, CSV, and PDF formats (PDF requires a DynaPDF license). Web applications can render reports to HTML, CSV and PDF Formats.

Version 1.8.1 is maintenance update.

BKeeney Shorts Product Page: http://www.bkeeney.com/allproducts/bkeeney-shorts/

BKeeney Shorts costs $300 and is shipped with 100% unencrypted Xojo source code.

New:
• French localizations

Changes:
• When rendering the report, you can now pass in a dictionary of your own to override constants found in Report File. If no dictionary, then it uses the constants from the report.

Bug Fixes:
• Can now resize bottom bands in reports with several breaks.
• Grand Summary Bands work again.
• Mouse drag select now works properly over several bands again.
• Dragging items in multiple bands now works better.

NOTE TO ALL USERS:
Version 1.8 fixes a rather insidious bug that’s been in the Designer since day one. The Top property for PrintItems was always reported as relative to the top of the page. Well, this is just plain wrong because in a banded reporting tool Top and Left should be relative to the BAND, not the page. This one change literally affected everything from read & write, to drawing of the display,
to all of the mouse handling. PLEASE REPORT ANY ISSUES YOU FIND ASAP.

Version 1.8 is the last major release of the 1.x series. Version 2 will add Report Headers/Footers and a new SQL engine that will hopefully make reports much faster than they are today. When Xojo releases 64 bit debugging you can be sure we’ll make sure 64 bit debugging works. A stretch goal for version 2 is subreports. VERSION 2.0 will be a paid upgrade.

Hi Bob,
there is a way to print barcodes with shorts ?
( I have a MBS plugins license too )

[quote=311143:@luciano monti]Hi Bob,
there is a way to print barcodes with shorts ?
( I have a MBS plugins license too )[/quote]
The only way to currently do it is to use an image. I’m currently working on version 2.0 and I can try to get that into the initial release. A lot of work between now and then (and even more testing) but I think it will be doable. For the sake of speed, I might simply use the MBS barcode library.

would be great, i will wait it.

Thanks

Making no promises for version 2.0. The change list is already pretty big.

Although not tried in Shorts there are some free fonts that can produce barcodes. I have used them in other Xojo projects successfully.

Hello Mark, can you give me some more information about these fonts, so I can do some tests?
A snippet would be greatly appreciated.

Thanks

http://lmgtfy.com/?q=free+barcode+font

Yep that is what I would do. There are a few choices and they seem to work based on my previous testing. Be sure to read the instructions. Some Code 39 fonts require you start and end the string to be printed with asterisks (*) which are the standard delimiters for Code 39 barcodes.

I have in my archives somewhere the actual BASIC code to print a barcode on a dot matrix printer. Surprisingly, if I remember correctly, it is less than a page of code.

UPC-A and EAN-13 fonts require calculating the parity as well as checksum. It is not quite as trivial as code 39.
https://en.wikipedia.org/wiki/Universal_Product_Code

Thanks Mark and Tim

Yeah, I have no idea how well a barcode font would work in Shorts. I suspect it would work with no problems (assuming font is installed) in displaying reports. I think it would fail completely when exporting to PDF and HTML.

I’m looking into it for version 2.0 but making no promises for initial version.