Financial document types are accessed as
org.kuali.core.bo.DocumentType business objects. These business objects live in the table
FP_DOC_TYPE_T, and they store extra information about the document type: mainly, the document type code - the abbreviation for the document type - and the document group. For instance, the Disbursement Voucher document has a document type of "DV" and its group is set to "FI", Financial Processing. Document groups are defined in the table
FP_DOC_GROUP_T. It also has a document name, "Disbursement Voucher," within the table, which will be displayed to the user on the web page where Disbursement Voucher documents are created or edited.
Financial document types are a separate entity because there are more types of financial documents than merely documents that route (that is to say, KFS financial document types form a superset of KFS workflow document types). Certain general ledger batch processes have feeds of data, for instance. Those feeds do not need to go through some kind of approval process; they simply need to be fed into KFS. They still need related data from the
FP_DOC_TYPE_T table, however, and therefore, they have
DocumentType records associated with them, but no parallel workflow document type. Thus, both a workflow document type and a
DocumentType record need to be created for each new document in the system.
There are also secondary methods associated with the financial document type. Most important of these (as it is the only one currently used in KFS) is
setTransactionScrubberOffsetGenerationIndicator(). Pending entries which were created by documents that have the transaction scrubber offset generation indicator set to true will have offset origin entries produced by the scrubber. Naturally, this indicator will be set to false for anything but accounting documents, and some accounting documents will not want to have offset origin entries automatically created for them.