I’m seriously considering adding a Memorized Reports feature to DONATION, so that you can memorize either Custom Reports you have created (from the SQL Select window) or slightly modified built-in reports (e.g. saving any alternate Sort or Filter you have put on them). Here are the draft specifications I have written up for this idea:
- Add a Memorize button to both the SQL Select window and the Report-viewing window.
- In SQL Select, Memorize memorizes the title, style (Normal/Grid), orientation (Portrait/Landscape) and the SQL.
- In the Report-viewing window, if the report came from a SQL Select, Memorize memorizes those same things plus the Sort and Filter. If it came from a built-in report, it memorizes the underlying report’s internal name (called the DataWindow), the Sort and Filter, and the underlying SQL for the DataWindow (which might have been edited using Save SQL and Load SQL). (However, check if it is composite report like Reports -> One Date Donation -> Summary, in that case can’t memorize it, no point, can’t sort or filter them! Actually, Sort and Filter should be disabled for such reports, they are useless.)
- Save to a file in a Reports subdirectory under the program’s Data Directory, named something.rpt.
- For saving, have a window with an input field for the report’s name (without “.rpt”) and a list box of existing memorized report names. If you click on a name in the list box, it puts it into the input field.
- When saving from the Reports window, if it is displaying an existing memorized report, default to re-saving it with that memorized report’s existing name.
- Add a “Memorized Report” menu option to the Reports menu, at the end under Custom Report. It brings up a list box of the existing memorized reports (without .rpt), you select one and click Run to run it, it immediately displays the report.
- Max report name length 50 (excluding “.rpt”, which the user never sees unless they use Computer or My Computer to look in that directory). (Is 50 a good maximum?)
- How to further edit an existing Memorized report that came from SQL Select? I guess have a checkbox on the Memorized Reports window for “Edit first in SQL Select window”, which would only be valid for ones saved from there (or saved from the Reports window if they came from there).
- When saving a memorized report that you are editing in the SQL Select window, again default to re-saving it with its existing name.
Any thoughts, comments or suggestions? Please post them as a Reply to this blog post.