How to create a report creation form.
Generating reports if the final component of any data management system, it's the end result. As such, reports can either be fixed of more generally offer some form of reporting tool. In Ultimate Database, there are tools to aid in the creation of a reporting generation form.
For this guide we are starting with a few things in palace already. We have an app list, with a people list, car list, motorbike list and house list. And there are links from the parent object of person to the other list, i.e. Person -> House, Person -> Car, Person -> Motorbike.
Most people are associated with a house, and most have either a car or a motorbike and some have both a car and a motorbike. Once we have these associations, we can start to look at reporting on the data. For example, to report on those with a motorbike and a car for example.
So, to start create a new Data List object give it a name, I've called mine 'People Reports', and set the' Part 1 Data Type' to 'Character' and the 'Part 3 Data Type' to 'XML', check the No Advance Options in the Other Options tab, and save it. Then right click the new People Reports object and select the 'New Relationship from here' option. Then select the associative list for the report, in this case 'People -> Houses' object. Now set the 'Parent - Child: Edit Options', 'Relationship Entry Method' to 'Radio Checkbox', then on the same tab, near the bottom in 'Edit Options' select 'Report Options' tick box as ticked. Do this again for 'People -> Motorbikes' and again for 'People -> Cars'. You should now have three new associative objects, People Report -> House, People Report -> Cars, People Report -> Motorbikes. Once you have done this for all three items we are ready to create the reporting form. Here's my my demo database at this stage.
So to create the reporting page first open the People Reports item, then click the Valid Links (Green) icon and then Report Wizard (Tick Box) icon from the Link Level menu on the left. It's the icon which says Report Entry Wizard when you hover over it. When selected it will generate some code for the form and report generation code then we need to select the main list for the report. Using the object browser on the bottom left of the Report Wizard window. Use it to pick the main list for the report, in my case the People list. Then hit the Recalc button. Then copy this code into a new web page. This can be wherever you would like it. I've created a new Test Reporting menu item and pasted the code into the page.
Even though you can now run a report some code changes may be needed in the web page code for it to work as you would like. The wizard does its best to generate a working in/out report but should it be necessary to modify it's operation you will find the appropriate code in the section with the <!-- Apply Report Options --> remark.
The code lines there generate the report output. e.g.
These can be modified as required for more complex reporting, please see reference material for commands.
Your reporting page should now work as expected, allowing the generation of simple in/out relationship reporting on the people data. My reporting page looks like this:
Note that you can select reporting to Screen, CSV or Excel file. Any combination of Any, None, Any of Selected and None of Selected is possible for all three data types in this example.