Transactional Documents
Creating a transactional document works a lot like creating a maintenance document, but with the added need to put together the web layer. This isn't as hard as it seems, though, and for the trouble, the developer gains a lot of flexibility. Here, we'll examine how to create a transactional document.
What is a transactional document? A transactional document represents not data that is being maintained, but an "action" that will occur in the system. Take the Internal Billing document. This is a financial document which charges one account for a service or goods and credits another account. Here, we're not really changing the core data of the chart, the accounts, or any of that. We're creating accounting lines with the sole purpose of an action: having them change the general ledger (adding money to one account and removing it from another). This is the essential difference between transactional documents and maintenance documents: while the maintenance documents do standard maintenance on data, here we want to perform an action.
That doesn't mean we're free of business objects, of course. A transactional document is itself a very special kind of business object; oftentimes, it includes heterogeneous collections of other kinds of business objects within it (though there is no requirement for it to do so). Otherwise, the recipe to create a transactional document looks a bit like this:
- create the transactional document business object and any related business objects
- create rules for the transactional document
- write a document authorizer for the document if needed
- create and specify the document presentation controller
- create KEW and KFS document types
- configure the data dictionary transactional document file
- put all of the non-rule logic associated with the transactional document completing its action into a service-layer class
- create a user interface for the document - the Action, the Form, and a JSP page
Let's look at each of these steps in turn:
- Creating the Transactional Document business object
- Gluing everything together with the Data Dictionary for Transactional Documents
- Transactional Document User Interface
Kuali documentation is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License.
Kuali software is licensed for use pursuant to the Affero General Public License, version 3.
Copyright © 2014 Kuali, Inc. All rights reserved.
Portions of Kuali are copyrighted by other parties as described in the Acknowledgments screen.
Kuali ® is a registered trademark of the Trustees of Indiana University.