Shorts Report Designer 1.6.2

pens128BKeeney Software is proud to announce Version 1.6.2 of BKS Shorts with Report Designer, our reporting classes and tool for Xojo.  Shorts allows you to integrate a report designer into your own Xojo desktop application.  Desktop and Web applications can generate reports.  Both versions can export to PDF if they have the MonkeyBread DynaPDF plugin.

This is a free update to all existing users.  This version fixes a couple of important bugs and is recommended for all users.  In this version we also added a CSV Renderer that allows you to export your reports to CSV in addition to HTML and PDF.

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

New:

  • Added a CSV Renderer that can export reports to CSV format ignoring page headers and footers.  (Note: CSV Export isn’t perfect. We’re just taking the text and putting it in a file.)
  • Added CSV Export into the File->Export Menu to give example.
  • Added Chinook Invoice Database Example.
  • Added ability to get exception messages back from the Report Thread.

Changes:

  • Tightened up the spacing in the dynamic DateTime container.
  • Did some prep work in the Designer and in ReportPF to allow fields in the header in a future release.

Bug Fixes:

  • Fixed Formatting of page numbers so it can go up to 4 digits.
  • Fixed loading of Schema and Views in the report viewer.
  • When opening a report the view switches automatically to the Design View.
  • Fixed an issue where adding ? to the Filter Data (thus making it a dynamic runtime variable) would not get saved without unchecking and checking the dynamic checkbox in the list.
  • Fixed issue with Lines line staying put in proper location in the Designer.
  • Fixed issue where adding a Field in the Header of the report would cause what appeared to be an infinite loop (really was an exception in the thread). Now it will finish the report.

Shorts Report Designer 1.6.1

pens128BKeeney Software is proud to announce Version 1.6.1 of BKS Shorts with Report Designer, our reporting classes and tool for Xojo.  Shorts allows you to integrate a report designer into your own Xojo desktop application.  Desktop and Web applications can generate reports.  Both versions can export to PDF if they have the MonkeyBread DynaPDF plugin.

This is a free update to all existing users.  This version is mostly a bug fix release and is recommended for all users.

Change List:

  • The Footer Constants can now also be used in the header
  • Refactored DesignCanvas and ReportPF and moved some of that code into PAF_DatabaseKit.DBWrapper where it makes more sense
  • Loading a report into the designer, or for rendering, will no longer re-read the schema and overwrite any manually created relationships
  • Added Tables and Views section into the report definition file
  • Fixed an issue with report width/height not being remembered correctly. Changed from using PrinterSetup string which is not cross platform safe to use the dimentions instead.
    • YOU NEED TO RESAVE YOUR REPORTS TO TAKE ADVANTAGE OF CHANGE
  • Fixed issue where landscape reports weren’t being exported properly to HTML and PDF.
  • Added breaks in the PreparedStatement creation to help in debugging.
  • Added some missing field handling to ODBC
  • DBWrapper will no longer create a missing SQLite Database.
  • Fixed UI in winDBRelations

Shorts Report Designer Release 1.6.0

pens128

BKeeney Software is proud to announce Version 1.6.0 of BKS Shorts with Report Designer, our reporting classes and tool for Xojo.  Shorts allows you to integrate a report designer into your own Xojo desktop application.  Desktop and Web applications can generate reports.  Both versions can export to PDF if they have the MonkeyBread DynaPDF plugin.

This is a recommended update for all registered users and is a free upgrade.  Besides a number of important bug fixes there are also some big new features

Runtime DateTimeThe first is the ability to ask the user for runtime parameters for a query.  For example, if you created a report based on a fiscal year you can now ask the user which fiscal year they want.  The dynamic runtime query lets you ask the user for a number of different things.  Strings, numbers, user supplied lists, and even a list based on a database query are possible.
Drilldown EventThe second thing we added is the ability to get an event back from the generated report on what row was clicked.  This event gives you the information for all objects in that row so you could implement a drill-down report.  Along with this event we now allow invisible objects to be created to provide additional information.

Our product page is at http://www.bkeeney.com/allproducts/bkeeney-shorts/

Full change list:

• Dynamic Runtime Query variables. Allows the report designer to ask the user what values they want at runtime. Current paramters types::
– Boolean value using a Checkbox
– String value
– Numeric (integer and double values)
– User List (popup)
– Query List (popup)
– Date, DateTime, or Time

• Moving items via the mouse will immediately update the save status on the Toolbar

• Changing Filter Data will update the save status and undo status

• Undo now works for changing of filter data.

• Added Filter Data to report designer Toolbar

• Added an ObjectSelected event on the BKS_ShortsBaseViewer that will pass back the clicked BKS_Shorts.Item and if there is one, the BKS_Shorts.GroupItem. This will allow you to implement a drill down report.

• Invisible TextItems are rendered in the background color to allow the MouseHit to bring back additional information in the group

• Added a FieldName property to BKS_Shorts.Item and reports run through the Report Designer will fill that in at generation time. This allows the user to query what the field (if there is one) from the selected item.

• Added OK/Cancel generic container for all dialogs

• Bug Fix [Windows Only]: Now respect the number of copies specified for a print. Note that this is not in Shorts classes itself but how the supporting code prints.

• Bug Fix: Fixed another instance where it was possible to NOT have a Default Style when generating a report.

• Improved German localizations.

• Moved About Shorts Designer Menu Item out of winReportDesigner

• Bands that are marked as invisible no longer get rendered on the report.
Known Limitations:
• Dynamic Queries do not work with IN clause in where statements.

Shorts Report Designer Release 1.5.4

pens128We released version 1.5.4 of the Report Designer today.  One of the bigger changes is it ships with a web example of how to take a report definition and display it for a web app.  This affects a significant amount of methods and properties throughout the project to make them work on desktop and web but seems to work well.

BKeeney Shorts (with report designer) is 100% Xojo code (DynaPDF Starter kit required to export to PDF) and comes with a drop in Report Designer and Report Viewer component for both desktop and web apps.

For purchasing information please visit http://www.bkeeney.com/allproducts/bkeeney-shorts/

Version 1.5.4 change list:

  • Major code changes to allow most classes to work in web apps too.
    • Simply copy BKS_Shorts_ReportDesigner folder into your existing web project.
    • Delete PAF_PrintKit.DesignCanvas (desktop ScrollCanvas subclass)
    • Create a new PAF_PrintKit.DesignCanvas that is a WebCanvas subclass
  • Changing text values in the Properties List is now Case Sensitive
  • Added Portugese Localization
  • Added a commented out example of how to connect to MySQL without using the winDBConnection Window.
    • See winRPTViewer.Display
  • Fixed an issue that would cause the SQL statement to not be saved properly in the JSON string
  • Added a Default Style if none is in the local dictionary
  • How reports are saved so they can be viewed without first having to be in the designer
    • WARNING! YOU WILL NEED TO RESAVE ALL OF YOUR REPORTS
  • Cleaned up some localizations and made some more strings dynamic.
  • Made the Report Designer the default pushbutton in Demo Window
  • New Report opens a new Report Designer Window instead of copying the current connection. (this affected menu handlers in odd ways one wouldn’t expect)
  • Created a Web Example

Shorts Report Designer 1.5.3

We released version 1.5.3 of BKS Shorts today.  A number of bug fixes, changes, and additions were added.  The change list below.

I will be the showing off Shorts at the next Xojo webinar on February 2nd at at 1:00 PM (GMT-5:00) Eastern Time (US and Canada).   Signup at https://zoom.us/webinar/register/7a19681a9a0c3f5f7c24e00bf0acd2b8

One of the new items is the ability to show a Row Number on any band using the new SC_GetCount XojoScript.  Add this to any Band Script to modify a TextItem.

We added a couple of new examples based on user feedback.  The first is using the SC_GetCount Band Script to set row numbers.  The second, is an example of how to print directly to a printer without having to go through the viewer.

Change List:

  • 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.

BKS Shorts with the Report Designer is $300 and you get the full source code.  More information can be found at http://www.bkeeney.com/allproducts/bkeeney-shorts/

 

BKS Shorts Report Designer

picAppIcon256BKeeney Software is pleased to announce version 1.5 of BKeeney Shorts, our reporting classes for Xojo.  This free update for Short Professional users is a major update to the tool and includes a set of classes that allow developers to embed a report designer into their Xojo applications.

Since its release in 2013 BKeeney Shorts has been used by Xojo programmers around the world to create complex reports using nothing but Xojo code.  The number one request from users was to have an external reporting tool that let them create reports quickly and easily without the need to code the entire report.  With the Report Designer we’ve removed the need to code all but the most complex of reports:  most reports can be created in minutes instead of hours.

Gems Report Designer

Included in the BKS Shorts demo project is a fully functioning Report Designer.  Developers can copy and paste the Xojo code into their own project and integrate the Designer in just a few minutes.

Reports are saved in a simple JSON string that allows the developer to have reports defined outside of their project.  The Demo project saves a report file but a Xojo programmer can easily save them as strings for use in their own document or database.

Reports Bands can run XojoScript code to do complex runtime actions such as change text, styles, concatenate text, show images and much more.  This allows end-user changes in a report without the developer coding it up front and having to recompile the executable.

Gems Report Rendered

BKeeney Shorts Professional costs $300 and comes with full, 100% unencrypted source code.  To export to PDF (without a watermark) a separate purchase of the MonkeyBread DynaPDF Starter plugin is required.  This is a free update to existing Shorts Professional users and a $75 update to existing Shorts Standard Users.

BKeeney Shorts requires Xojo 2014 R3 or better.

Homepage:  http://www.bkeeney.com/allproducts/bkeeney-shorts/

Video of Report Designer in Action:  http://www.bkeeney.com/allproducts/bkeeney-shorts/shorts-designer-in-action/

Video of Integrating the Report Designer:  http://www.bkeeney.com/allproducts/bkeeney-shorts/integrating-shorts-report-designer/

For questions regarding BKS Shorts, please contact Bob Keeney at support@bkeeney.com

The First Law of Demos

It’s the last full week before the Xojo Developer Conference in Austin.  I’ve gone through my presentation on Reporting Tools in Xojo at least once already.  I have the Keynote presentation done (added a few things), have the sample projects done and ready to upload to the website.  You’d think I’d be done, right?  Wrong!

The First Law of Demo’s says that unless you’ve done the demo multiple times on the hardware you’ll actually use it’s as if you’ve never done it in the first place.  I should know, I’ve been standing in front of a group of people to do a demo only to have the first element fail and then flounder away for the next twenty minutes with plenty of, “well, if this worked I’d be able to show you this feature.”

I have learned from my mistakes, the hard way.  Several times.  Here are Bob’s rules of effective demo’s.

Rule #1:  Disconnect from your normal network/regular computer

There are things floating around on your drive that you tend to use all the time.  So when you take your development project off your home network, or move to a separate machine, you’ll quickly find the things that you forgot include in your demo packages.

In my case, I discovered that a Xojo project had references to graphic files that weren’t included in the folder I moved to the presentation machine.  The graphics weren’t necessary and it was easy to fix but how embarrassing to be in front of your peers to have a simple error like that occur.  It shows a lack of preparation.

Rule #2:  Run all of your Demo’s in the latest version of the software

This sounds silly, I know, but I found that one of the reporting tools I’m talking about in my session doesn’t work with Xojo 2015 R1 and R2.  For whatever reason I was using 2014 when I first created the project and didn’t run into the problem until I started working with it on the laptop which had the latest version of Xojo.

Another reporting tool I’m talking about in my session had to have a number of libraries installed to work properly.  And then it needed a newer version of its plugin.  These issues were not very hard to fix when I have reliable internet access and access to all my files, but once you’re away from home that’s not always the case.  Again, if this happens in a presentation it looks like you have not prepared.

Rule #3:  Practice saying your presentation out loud  

Speaking your presentation is important in a number of ways.  First, it will show you where you have not prepared enough.  If you find yourself um’ing and ah’ing in a particular session that’s an area to do again (and again).  Since you can think faster than you’re speaking you’ll often find yourself saying “I need to mention this.”  Having this happen during your actual presentation is a bad time.  Practicing beforehand will show you these problems.  Practice multiple times to catch even more of them.

I’m a good writer (I’m sure that’s open for debate) and I have my ‘inner voice’ that talks to me when I’m reading something.  That’s not good enough when practicing for a presentation because your inner voice lacks depth.  It lacks the pauses and breaths that you need when speaking.  Practice your presentation as if there are people in the room.  Pause for effect.  Pause for eye contact.  And in technical presentations pause for people to wrap their head around the idea.  Silence is good in a technical presentation and that pause is never as long as you think it is.

A lot of people have a fear of public speaking.  I can’t say was overly enthused about the subject a few years ago either.  I decided to tackle that fear and enrolled in a local chapter of Toastmasters (TM).  At this point I have achieved the Competent Communicator award and feel more comfortable speaking in a crowd.  Frankly, after two years of TM it’s hard not to evaluate all speakers and count their use of um’s and ah’s.  Toastmasters is a safe and friendly environment to learn how to speak in public.

Rule #4:  Practice, Practice, Practice

This seems intuitive but I’ve seen it happen to myself and others way too often.  The more you can practice your presentation, out loud, the better off you’ll be.  I can’t remember which Toastmaster’s speech I was giving but I didn’t have the same preparation as I normally did and it showed.  My use of fillers words was awful, I fidgeted a lot more, and I was uncomfortable with the topic, and I had to use my notes more often than I wanted.  I did okay but it was not my best speech.

Steve Jobs was known for his awesome keynote speeches where he introduced new, sometimes buggy, products to the world.  He practiced, on stage, with the actual product hundreds of times until everything seemed magical and when something didn’t go as planned he could make joke of it and move on (and use the backup device).  That last bit is very hard, but if you’ve practiced your presentation to the point where you’re dreaming of it you should do okay if things go awry.

Rule #5:  Relax

I can’t say I’ve ever been to a technical presentation where the audience was hostile to the speaker.  We usually have a choice on what sessions to attend and we are there to learn something new and hopefully be entertained.  The audience is pulling for you!  When you make a mistake during your presentation know that we’ve been there and had the same thing happen to us.

Toastmasters has another fine tradition of telling a joke to start off their meetings.  It makes everyone relax a bit and if the joke, even an awful joke, can get a chuckle or two it’s a great way to start a presentation.  If you can do a joke somehow related to the topic you’re even better!  One word of caution on jokes, though, unless you’ve practiced the heck out of telling this joke don’t bother!  The timing of joke is everything and unless you’re are comfortable with it don’t screw it up (unless you’re comfortable enough to botch the joke and recover from it and make everyone laugh anyway).

So that’s it.  I have a lot of work to do before the conference next week.  I have to practice some more and when I get tired of talking about it I’ll do it again once or twice.

Hope to see you at the conference.  Please stop me and introduce yourself.  I really enjoy meeting my fellow Xojo developers.

BKS Shorts Webinar

JpicAppIcon256oin me from 1 to 2 PM (ET) on Tuesday, March 31 as I do a webinar with Paul Lefebvre of Xojo.  In this webinar I’m going to talk about BKeeney Shorts, our reporting classes for Xojo.

Many Xojo developers are familiar with banded-style reporting tools.  They are generally easy to understand and use and are great for simple reports.  However, if you’ve struggled with complex reports that don’t easily fit in the banded reporting tool paradigm then BKS Shorts is worth looking at.

BKS Shorts is 100% native Xojo code and its strength is that you have 100% control over all of your report objects.  Its drawback is that you have to code everything!  BKS Shorts has multiple rendering options including to the Graphics object (Canvas and printer), to HTML, and to PDF  (using the MBS DynaPDF plugin).  BKS Shorts works on desktop, web and console apps on Mac, Windows, and Linux.

In this webinar I’ll go through an example or two explaining the code and answering any questions that come up.  To register for the webinar, please go to https://www.zoom.us/webinar/register/9a94b333833729fbcde7dc3c8da9331e

 

See you online!

 

Shorts 1.1

picAppIcon256We released a new version of BKeeney Shorts today.  Version 1.1 is a recommended update for all registered users and is a free update.

Version 1.1 has a number of improvements:

• Text blocks now have an AutoHeightAdjust property that lets them auto wrap their text and change the text height accordingly

• New demo report that demonstrates the automatic height adjustment in a row (i.e. GroupItem) of data of varying text

• The desktop version now has an RTF Block and uses the Formatted Text Control to convert into Shorts reports and HTML

• The Demo project for Web and Desktop comes with viewers you can use in your own projects

• Multiple demo reports with the various ways to create a report via code

More information on pricing, features, documentation, demo project, and more available at http://www.bkeeney.com/allproducts/bkeeney-shorts/

BKeeney Shorts

picAppIcon256Reporting for many developers is a big deal.  When I first came to Real Studio (then REALbasic) there was really only one commercial option – On Target Reports.  Eventually Real Software released a built-in reporting tool.  Not too much later than that RothSoft released RSReport.

On-Target Reports now appears to be defunct.  Its domain has been hijacked and as far as I can tell there is no way to purchase or get support.  The built-in reporting tool is okay but lacks some features that would make it a good reporting tool.  We’ve used RSReport for many years but we’ve increasingly found it lacking for some of our more advanced projects – including those that are Web Edition based.  The fact that we can’t change the source (because it only comes encrypted) is also a major drawback to us.

Today we are announcing BKeeney Shorts our own set of reporting classes for Real Studio.  Using Shorts you can create practically any type of report you need.  Shorts is a set of classes that allows you to place your report objects (text, line, rectangle, image, etc) on the page in practically whatever placement you need.  This leads to some incredibly rich and detailed reports that would be very hard (if not impossible) in a typical banded reporting tool that uses the concept of ‘rows’.  Shorts has no rows, only objects.

Shorts render to multiple formats.  If you are in a desktop application you can render it to the graphics object for display or printing.  If you are in a Web Edition application you can render to an HTML file/page.  And, if you are a user of the Monkeybread Software DynaPDF plugin you can render to a PDF document.

BKeeney Shorts is Retina display ready (Mac Cocoa only) and the only thing required is to add the appropriate plist settings in your application.  It automatically scales depending upon the printer setting so your printed output should always be crisp and bold.

Shorts Viewer

BKeeney Shorts is fast.  In a recent test I ran a 24,000+ page report on the main thread (I would not recommend doing this as it froze the UI for a while) but it did it at a respectable rate of about 300 pages a second.  I’m sure a more complex report would be slower but the point is that for most developers a 300 page report in a second is fairly fast.  Since you control the paging I would certainly recommend bailing out in a report that had more than 100 pages (or at least asking the user if they want to continue).

This is a 1.0 product and we’re just getting started.  We have a lot of plans for it.  Eventually we’d like to come up with an external format and designer so you could create your own report in a designer and then simply load the report into your application and it would create the report for you.  This feature would be nice since you wouldn’t have to recompile your apps if you have new reports or have changes to your reports.

Another high want feature is to have a runtime interaction with the report output.  In many financial reports it’s quite common to have a type of report that shows a list of accounts.  Currently if you wanted to drill down into a specific account you’d have to go back to where the report was created and pick the account and rerun it.  In the future with BKeeney Shorts you’ll be able to click on the account, capture the event, and you, as the developer, would know which account they clicked.  As far as I know, no one in the Real Studio world has anything like that.

ShortsCode1BKeeney Shorts has two licensing options.  The first is the Standard License for $150 where you get a set of encrypted classes.  We know that many developers like having the full source code to their products they buy so we also offer a Professional License for $300 that comes entirely unencrypted.  In either option we will support to the fullest extent we can.  Chances are good that if you have a feature request or find a bug it’s affecting us too.

I invite you to take a look at BKeeney Shorts at http://www.bkeeney.com/allproducts/bkeeney-shorts/ and try out the demo application.  It has a sample report for you to modify and change to your hearts content.  The only restriction is that the encrypted classes cannot be used in a compiled (non-debug) application.  If you use any of the classes it will immediately quit with a nag message.

As always, I appreciate your support and good wishes.  Happy coding!