Doco Home
Hints Home
Documentation in progress
Platypus Hints - Business Layer Editing
After Billabong has been run, do a grep of the file(s) for 'TODO' as this will give you an idea of any IDs that require hand coding.
The default code generation in the application base BO file for getPulldownItems throws an ApplicationException if no hand coding is done. Note that getPulldownItems can be overridden in any of the PO-BO files of directory based files. To determine all the pulldown ids required for the application, grep for PULLDOWNKEY in the *.conf files in the presentation area. Pulldown Ids should be unique application wide, so if your grep shows an Id more than once (therefore the pulldown is required in more than one PO), then you might want to override the getPulldownItems method in a super class to all the POs requiring the pulldown. Often I put all the pulldowns in the application base BO file.
When developing in the business area, it's usually best to fix objects within a workflow, especially if the presentation layer is being developed this way. It's often diffcult to test an individual page, however a workflow usually presents no problems - other than any bugs in the code, of course!
It's not necessary to create all the queries in the system before editing in the business area. As you go through each workflow and identify queries required, edit the configuration file and run Squirt then. Of course, if you realise you will need a number of queries, then feel free to create them at any time.
Data commit code in the business layer still requires a lot of hand coding. Billabong merely generates the outline of the commit method required. You will have to hand craft the code that goes into the BDO-BO class that's affected by the commit or update. This code will then need to be accessed by the PO-BO in a similar manner to how queries are accessed.