Kuali Project ____________________________________________________________________________________ Asset - Award Technical Specification The University of Arizona 2/8/2016 9:02:50 AM MOD-CM0015-01 –1– Revision History Version 1.0 2.0 3.0 Date 06/03/2009 07/09/2009 3/3/2011 2/8/2016 9:02:50 AM MOD-CM0015-01 User KevinMcO KevinMcO KevinMcO Description Initial Spec Update Spec Added sequence ID and other modifications in functional spec –2– Functional Description Federal regulations require the University to keep track of federal equipment and the grant/contract originally purchased the equipment and keep track of any subsequent transfer of title to other federal grant/contract. Federal equipment can be transferred to other grants/contracts as long as the equipment is being utilized. Business Requirements and Assumptions Assumptions The transfer of federal equipment title is used only when requested by the University request the title be transferred to another grant/contract. If the request is not made or needed, the equipment is returned to the federal agency that title resides. Requirements A new collection tab must be added to track the current grant/contract title holder and all previous grant/contract title holder. Account Number and Agency Number will be validated against delivered tables. Customization Required Components Components required for the new customization: AssetAwardHistory Table and corresponding sequence AssetExtension table ojb-cam modifications AssetAwardHistory Business Object AssetAwardHistory Datadictionary AssetExtension Business Object AssetExtension DataDictionary Asset Datadictionary extension to include the Asset History Collection AssetMaintenance document extension to include Asset History Collection Spring-cam xml file Add module package to the Arizona-build.properties file KFSKeyConstants file to map to the arizona-ApplicationResources.properties file Add error messages to the arizona-ApplicationResources.properties AssetAwardHistoryRule for our business rule class 2/8/2016 9:02:50 AM MOD-CM0015-01 –3– AssetExtension Table Create SQL to create the CM_CPTLAST_EXT_T table with the following fields: CPTLAST_NBR OBJ_ID VER_NBR decimal(12) varchar2(36) decimal(8) NOT NULL, NOT NULL, NOT NULL, AssetAwardHistory Table Create SQL to create the CM_CPTLAST_AWARD_HIST_T table with the following fields: CM_CPTLAST_AWARD_HIST_NBR OBJ_ID VER_NBR SEQUENCE_ID CPTLAST_NBR ORG_OWNER_ACCT_NBR CG_AGENCY_NBR GRANT_NBR EFFECTIVE_DT decimal(12) varchar2(36) decimal(8) VARCHAR2(3) decimal(12) varchar2(7) varchar2(5) varchar2(20) date NOT NOT NOT NOT NOT NOT NOT , NOT NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL The primary key for this table is the CM_CPTLAST_AWARD_HIST_NBR which uses the following sequence to populate the field. CREATE SEQUENCE CM_CPTLAST_AWARD_HIST_NBR_SEQ START WITH 1 INCREMENT BY 1 MAXVALUE 999999999999; There will be many records in this table for each record in the AssetExtension table. For this reason an index on the foreign key in this table was created. CREATE INDEX CM_CPTLAST_AWARD_HIST_TI2 ON CM_CPTLAST_AWARD_HIST_T(CPTLAST_NBR); Ojb-cam Mapping file A class descriptor for the AssetExtension was added with a collection descriptor for our AssetAwardHistory BO. An inverse foreignkey was created for this collection descriptor. A class descriptor was created for our AssetAwardHistory BO. For the primary key we pointed it to our sequence within oracle to auto increment. AssetAwardHistory Business Object An asset Award history business object is created. The following fields and corresponding getter and setter are added to the AssetAwardHistory BO. awardHistoryNumber capitalAssetNumber SequenceId accountNumber 2/8/2016 9:02:50 AM MOD-CM0015-01 –4– agencyNumber grantNumber effectiveDate AssetAwardHistory Datadictionary An AssetAwardHistory.xml DataDictionary is created, and definitions for all the above mentioned attributes are created. A newCollectionRecord with a parent bean of GenericAttributesnewCollectionRecord was also created. AssetExtension Business Object. An AssetExtension Business Object is created. The AssetExtension BusinessObject has a collection of AssetAwardHistory Objects. It is developed as an extension of the Asset Business Object. A Collection of AssetAwardHistory type is created in the AssetExtension BusinessObject private List<AssetHistory> assetHistory; Setters and Getters are created for the same. The AssetHistory List is instantiated as a TypedArrayList in the constructor of the AssetExtension Business Object. Capital asset number is also created in the extension because that is the foreign key AssetExtension DataDictionary A data-dictionary is created for the AssetExtension Business Object. The data dictionary is created as a normal Extension to a Data dictionary. Asset Datadictionary extension to include the Asset Award History Collection. Created an InquirySectionDefinition which included an InquiryCollectionDefinition which points to our AssetAwardHistory BO. AssetAwardHistory Business Rule An AssetAwardHistoryRule business rule is created and configured in Asset Maintenance Document to enable the validations of the following fields: AgencyNumber 2/8/2016 9:02:50 AM MOD-CM0015-01 –5– AssetMaintenance document extension to include Asset History Collection. Created a MaintainableSectionDefinition that included a maintainableCollectionDefinition to our AssetAwardHistory BO. Tried to ad an defaultExistenceChecks but it did not work. Instead a businessRulesClass was created which did work. 2/8/2016 9:02:50 AM MOD-CM0015-01 –6–