Untitled

mail@pastecode.io avatar
unknown
java
2 years ago
84 kB
1
Indexable
Never
package oracle.apps.hed.studentRecords.institutionSettings.academicPeriod.uiModel.view;

import java.math.BigDecimal;

import java.util.Date;
import java.sql.Timestamp;

import java.util.Calendar;

import oracle.apps.fnd.applcore.log.AppsLogger;
import oracle.apps.fnd.applcore.oaext.model.OAViewRowImpl;
import oracle.apps.hed.campusCommunity.calendar.publicModel.uiModel.applicationModule.CalendarSetupAMImpl;
import oracle.apps.hed.campusCommunity.calendar.publicModel.uiModel.view.CalEventSetupVORowImpl;
import oracle.apps.hed.campusCommunity.calendar.publicModel.uiModel.view.CalendarSetupVORowImpl;
import oracle.apps.hed.studentRecords.institutionSettings.academicPeriod.model.entity.AcademicPeriodEOImpl;

import oracle.apps.hed.studentRecords.institutionSettings.academicPeriod.uiModel.applicationModule.AcademicPeriodAMImpl;

import oracle.jbo.Key;
import oracle.jbo.Row;
import oracle.jbo.RowIterator;
import oracle.jbo.RowSet;
import oracle.jbo.server.AttributeDefImpl;
import oracle.jbo.server.ViewObjectImpl;
// ---------------------------------------------------------------------
// ---    File generated by Oracle ADF Business Components Design Time.
// ---    Fri Sep 03 14:03:09 IST 2021
// ---    Custom code may be added to this class.
// ---    Warning: Do not modify method signatures of generated methods.
// ---------------------------------------------------------------------
public class AcademicPeriodVORowImpl extends OAViewRowImpl {


    public static final int ENTITY_ACADEMICPERIODEO = 0;
    final static String CAL_TYPE_ACADEMIC = "ORA_ACADEMIC_PERIOD";
    final static String CAL_TYPE_HOLIDAY = "ORA_HOLIDAY";
    
    /**
        * DATE_CALC_SCHEME_CODE
        * DATE_ROUNDING_CODE
        * DATE_FACTOR
        * Period or Class Start Date
        * Period or Class End Date
        *
        * note: The calling code will know to pass in either the Class Start/End Dates or the Period Start/End Dates based on the academic period category.
        * If the Academic Period Category Code (PERIOD_CATEGORY_CODE) is ORA_S=Academic Self-Service (passes in Class Start/End Dates)
        * or ORA_A=Academic (passes in Period Start/End Dates).
        *
        *
        */
       public void calcDates(){
            
           /**fetching the row iterator for Academic Period Dates to calculate the Date **/
            
           RowIterator acadPeriodDates = this.getAcademicPeriodDate();   
            
           if(AppsLogger.isEnabled(AppsLogger.FINEST)){
               AppsLogger.write(this, "Entering calcDates" ,AppsLogger.FINEST);
           }
           if(this.getAcademicPeriodDate()!=null){
           RowSet rsPeriodTypes = this.getAcademicPeriodTypeVO1();    
           if(rsPeriodTypes!=null){
           Row[] periodTypeRows = rsPeriodTypes.getAllRowsInRange();
           if(periodTypeRows!=null){
           if(AppsLogger.isEnabled(AppsLogger.FINEST)){
               AppsLogger.write(this, "calcDates : periodTypeRows : "+ periodTypeRows ,AppsLogger.FINEST);
           }
            
           /**fetching the PeriodType Records via View Accessor for the created/selected AcademicPeriod**/
           AcademicPeriodTypeVORowImpl acadePeriodTypeRow = (AcademicPeriodTypeVORowImpl)periodTypeRows[0];
            
            
           /** looping over the created/selected Academic Period dates of the AcademicPeriod for calculation **/
           while(acadPeriodDates.hasNext()) {
             AcademicPeriodDateVORowImpl acadPeriodDate = (AcademicPeriodDateVORowImpl) acadPeriodDates.next();
               Long lAcademicPrdDTTMId = acadPeriodDate.getAcademicPeriodDttmId();
                
               
               if(AppsLogger.isEnabled(AppsLogger.FINE)){
                   AppsLogger.write(this, "calcDates: lAcademicPrdDTTMid , : "+ lAcademicPrdDTTMId +" -- acadePeriodTypeRow.getAcademicPeriodTypeId()  :"+acadePeriodTypeRow.getAcademicPeriodTypeId() ,AppsLogger.FINE);
               }
                
               /** executing the View Accessor on AcadPerValidDttmVO for the matching records to be processed for Date Calculation**/
               this.getAcadPerValidDttmVO1().setNamedWhereClauseParam("bindAcadPrdTpId", acadePeriodTypeRow.getAcademicPeriodTypeId());
               this.getAcadPerValidDttmVO1().setNamedWhereClauseParam("bindAcadPrdDttmId", lAcademicPrdDTTMId);
               this.getAcadPerValidDttmVO1().executeQuery();
                
               /** process the dates only if the result set is not null or empty**/
               if(null!= this.getAcadPerValidDttmVO1()){
                
               RowSet rsAcadPrdValidDttmRowSet = this.getAcadPerValidDttmVO1();
                
               Row[] periodValidDttmRows = rsAcadPrdValidDttmRowSet.getAllRowsInRange();
                
               AcadPerValidDttmVORowImpl acadPerValidDttmRow = (AcadPerValidDttmVORowImpl)periodValidDttmRows[0];
                
               Date startDate=this.getAcademicPeriodStartDt();
               Date endDate = this.getAcademicPeriodEndDt();
                
                
                  
                
               /** Calculating the date based on the DateCalcSchemeCode, DateRoundingCode, DateFactor, Start and Envd dates **/
                Date DttmRetValue= calculateDates(acadPerValidDttmRow.getDateCalcSchemeCode(),acadPerValidDttmRow.getDateRoundingCode(),acadPerValidDttmRow.getDateFactor(),startDate,endDate);
                
               Timestamp DttmRetTimestamp=new Timestamp(DttmRetValue.getTime());
                acadPeriodDate.setAcademicPeriod1Dttm(DttmRetTimestamp);
            }
                
           }
           }
           }
           }
           if(AppsLogger.isEnabled(AppsLogger.FINEST)){
               AppsLogger.write(this, "Exiting calcDates" ,AppsLogger.FINEST);
           }
            
       }


    /**
    * Creating Calendar Entries for an AcademicPeriod and Calendar Events using the AcademicPeriod Dates
    *
    */
    public void createCalendarEntries() {
         if (AppsLogger.isEnabled(AppsLogger.FINER)) { AppsLogger.write(this, "createCalendarEntries:Start" ,AppsLogger.FINER); }
          
         AcademicPeriodAMImpl am = (AcademicPeriodAMImpl)this.getApplicationModule();
         CalendarSetupAMImpl amCalendarSetup = (CalendarSetupAMImpl) am.getCalendarSetupAM1();
         ViewObjectImpl calSetupVO =  amCalendarSetup.getCalendarSetup1();
         CalendarSetupVORowImpl calSetup = (CalendarSetupVORowImpl) calSetupVO.first();
         if (this.getCalId() != null) {
           if (AppsLogger.isEnabled(AppsLogger.FINER)) { AppsLogger.write(this, "createCalendarEntries: calendar exists, retreiving id: " +  this.getCalId(),AppsLogger.FINER); }
            
           Row[] rows = calSetupVO.findByKey(new Key(new Object[]{this.getCalId()}), 1);
           if (rows.length > 0)
             calSetup = (CalendarSetupVORowImpl) rows[0];
          
         }else {
           if (AppsLogger.isEnabled(AppsLogger.FINER)) { AppsLogger.write(this, "createCalendarEntries: Calendar doesn't exist, creating" ,AppsLogger.FINER); }
           calSetup = (CalendarSetupVORowImpl) calSetupVO.createRow();
         }
       Date date;
       date = new Date();
          Timestamp tscurrStamp=new Timestamp(date.getTime());
       //set the properties
         calSetup.setCalName(this.getPeriodName());
         if(this.getPeriodCategoryCode().equalsIgnoreCase("ORA_H")){
             calSetup.setCalTypeCode(CAL_TYPE_HOLIDAY);
         }
           else {
               calSetup.setCalTypeCode(CAL_TYPE_ACADEMIC);
           }
          
          
         if (this.getCalId() == null)
           this.setCalId(calSetup.getCalId());
          
         //assoc the events with the AcademicPeriod dates
         RowIterator acadPeriodDates = this.getAcademicPeriodDate();       
         while (acadPeriodDates.hasNext()) {
           AcademicPeriodDateVORowImpl acadPeriodDate = (AcademicPeriodDateVORowImpl) acadPeriodDates.next();
             boolean calucateCalEvent = false;
             if(null != acadPeriodDate &&  acadPeriodDate.getCalendarDateFlag().equalsIgnoreCase("Y")){
               calucateCalEvent = true;
             }
              
             if(calucateCalEvent){
           Long eventId = acadPeriodDate.getCalEventId();
           RowIterator calEvents = calSetup.getCalEventSetup();
           CalEventSetupVORowImpl calEventSetupRow = (CalEventSetupVORowImpl) calEvents.first();
           acadPeriodDate.getAcademicPeriodDttmId();
              
           if (eventId != null) {
             if (AppsLogger.isEnabled(AppsLogger.FINER)) { AppsLogger.write(this, "createCalendarEntries: Event  exist, retrieving id: " + eventId ,AppsLogger.FINER); }
             Row[] rows = calEvents.findByKey(new Key(new Object[]{eventId}), 1);
              
             if (rows.length > 0)
               calEventSetupRow = (CalEventSetupVORowImpl) rows[0];
           }
           else {
             if (AppsLogger.isEnabled(AppsLogger.FINER)) { AppsLogger.write(this, "createCalendarEntries: Event doe not exist, creating" ,AppsLogger.FINER); }
             calEventSetupRow = (CalEventSetupVORowImpl) calEvents.createRow();
           }
             String AttributeName="";
             if (acadPeriodDate.getAcademicPeriodDttmId()!=null){
            
                 acadPeriodDate.getAcademicPeriodDttmCdVO1().executeQuery();
                Row rDttmCd=acadPeriodDate.getAcademicPeriodDttmCdVO1().getFilteredRows("AcademicPeriodDttmId",acadPeriodDate.getAcademicPeriodDttmId())[0];
                AttributeName=(String)rDttmCd.getAttribute("AttributeName");
                 calEventSetupRow.setTitle(AttributeName);
             }
                       
           calEventSetupRow.setCalId(this.getCalId());
            
           Timestamp ts;
             if (acadPeriodDate.getAcademicPeriod1Dttm() == null){
                 calEventSetupRow.setStartTime(tscurrStamp);
                 ts=tscurrStamp;
             }
             else{
                 calEventSetupRow.setStartTime(acadPeriodDate.getAcademicPeriod1Dttm());
                 ts=acadPeriodDate.getAcademicPeriod1Dttm();
             }
             if (acadPeriodDate.getAcademicPeriod2Dttm() == null){
               calEventSetupRow.setEndTime(new Timestamp(ts.getTime()+3600));
             calEventSetupRow.setAllDayFlag("Y");
             }
             else{
               calEventSetupRow.setEndTime(acadPeriodDate.getAcademicPeriod2Dttm());
             calEventSetupRow.setAllDayFlag("N");
                  
             }
            
           //get the generated event ID and assign it to the academicPeriodDate row for future reference
           if (eventId == null)
             acadPeriodDate.setCalEventId(calEventSetupRow.getCalEventId());
              
         } 
         }
          
       }

    /**
    * API to calculate dates
    * Function Logic:
    * Calculate the date time return value based on the entered Scheme, Factor and Period/Class Start and End dates.
    * When Date Scheme (DATE_CALC_SCHEME_CODE) = ORA_DAY_PRD_START` use the DATE_FACTOR number to add number of DAYS to the entered Period or Class Start Date.
    * When Date Scheme (DATE_CALC_SCHEME_CODE) = ORA_DAY_PRD_END use the DATE_FACTOR number to add number of DAYS to the entered Period or Class End Date.
    * When Date Scheme (DATE_CALC_SCHEME_CODE) = ORA_DAY_CLS_END use the DATE_FACTOR number to add number of DAYS to the entered Period or Class End Date.
    * When Date Scheme (DATE_CALC_SCHEME_CODE) = ORA_DAY_AFTER_CLS_START use the DATE_FACTOR number to add number of DAYS to the entered Period or Class Start Date.
    * When Date Scheme (DATE_CALC_SCHEME_CODE) = ORA_WK_AFTER_CLS_START use the DATE_FACTOR number to add number of WEEKS  to the entered Period or Class Start Date.
    * When Date Scheme (DATE_CALC_SCHEME_CODE) = ORA_MTH_AFTER_CLS_START use the DATE_FACTOR number to add number of MONTHS  to the entered Period or Class Start Date.
    * When Date Scheme (DATE_CALC_SCHEME_CODE) = ORA_YR_AFTER_CLS_START use the DATE_FACTOR number to add number of YEARS  to the entered Period or Class Start Date.
    * Use the Rounding Code passed in (DATE_ROUNDING_CODE) to come up with a final date time value to return.
    * When the Rounding Code is = EOW round to the End of the Week (Friday).
    * When the Rounding Code is = BONW round to the Beginning of the Next Week (advance from the calculated date to the start of the next week - Monday).
    * When the Rounding Code is = NR then No Rounding is performed.
    * @param dateCalcSchemeCode
    * @param dateRoundingCode
    * @param dateFactor
    * @param startDate
    * @param endDate
    */
    private Date calculateDates(String dateCalcSchemeCode, String dateRoundingCode, int dateFactor, Date startDate, Date endDate){
        
    Date dateTime;
    dateTime = null;
        
    Calendar calStart= Calendar.getInstance();
       Calendar calEnd= Calendar.getInstance();
    calStart.setTime(startDate);
       calEnd.setTime(endDate);
    calStart.setFirstDayOfWeek(Calendar.MONDAY);
       calEnd.setFirstDayOfWeek(Calendar.MONDAY);
    if(dateCalcSchemeCode.equals("ORA_DAY_PRD_START") || dateCalcSchemeCode.equals("ORA_DAY_AFTER_CLS_START"))
    {
      calStart.add(Calendar.DATE, dateFactor);
      dateTime= (Date)calStart.getTime();
    }
    else if(dateCalcSchemeCode.equals("ORA_DAY_PRD_END") || dateCalcSchemeCode.equals("ORA_DAY_CLS_END"))
    {
    //calEnd.add(Calendar.WEEK_OF_YEAR, date_factor);
    calEnd.add(Calendar.DATE, dateFactor);
      dateTime=new Date(calEnd.getTime().getTime());
    }
    else if(dateCalcSchemeCode.equals("ORA_WK_AFTER_CLS_START"))
    {
    calStart.add(Calendar.WEEK_OF_YEAR, dateFactor);
      dateTime=(Date) calStart.getTime();
    }
    else if(dateCalcSchemeCode.equals("ORA_MTH_AFTER_CLS_START")){
     calStart.add(Calendar.MONTH, dateFactor);
      dateTime= (Date)calStart.getTime();
    }
    
    else if(dateCalcSchemeCode.equals("ORA_YR_AFTER_CLS_START")){
         calStart.add(Calendar.YEAR, dateFactor);
          dateTime= (Date)calStart.getTime();
       }
    
       Calendar calFinal= Calendar.getInstance();
            
       calFinal.setTime(dateTime);
           
       calFinal.setFirstDayOfWeek(Calendar.MONDAY);
    if(dateRoundingCode.equals("EOW"))
       {
           calFinal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
           calFinal.add(Calendar.DATE, 4);
           dateTime= (Date)calFinal.getTime();
       }
    else if(dateRoundingCode.equals("BONW"))
       {
           calFinal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
           calFinal.add(Calendar.DATE, 7);
           dateTime= (Date)calFinal.getTime();
       }
    
    
    
    return dateTime;
    }


    /**
     * AttributesEnum: generated enum for identifying attributes and accessors. DO NOT MODIFY.
     */
    public enum AttributesEnum {
        PeriodCategoryTrans,
        PeriodCategoryCode,
        TypeName,
        SetId1,
        AcademicPeriodTypeIdTrans,
        AcademicPeriodEndDt,
        AcademicPeriodId,
        AcademicPeriodStartDt,
        AcademicPeriodTypeId,
        Attribute1,
        Attribute10,
        Attribute11,
        Attribute12,
        Attribute13,
        Attribute14,
        Attribute15,
        Attribute16,
        Attribute17,
        Attribute18,
        Attribute19,
        Attribute2,
        Attribute20,
        Attribute3,
        Attribute4,
        Attribute5,
        Attribute6,
        Attribute7,
        Attribute8,
        Attribute9,
        AttributeCategory,
        AttributeDate1,
        AttributeDate10,
        AttributeDate2,
        AttributeDate3,
        AttributeDate4,
        AttributeDate5,
        AttributeDate6,
        AttributeDate7,
        AttributeDate8,
        AttributeDate9,
        AttributeNumber1,
        AttributeNumber10,
        AttributeNumber2,
        AttributeNumber3,
        AttributeNumber4,
        AttributeNumber5,
        AttributeNumber6,
        AttributeNumber7,
        AttributeNumber8,
        AttributeNumber9,
        AttributeTimestamp1,
        AttributeTimestamp10,
        AttributeTimestamp2,
        AttributeTimestamp3,
        AttributeTimestamp4,
        AttributeTimestamp5,
        AttributeTimestamp6,
        AttributeTimestamp7,
        AttributeTimestamp8,
        AttributeTimestamp9,
        CalId,
        CalendarDateFlag,
        CreatedBy,
        CreationDate,
        LastUpdateDate,
        LastUpdateLogin,
        LastUpdatedBy,
        ObjectVersionNumber,
        PeriodName,
        PeriodTierCode,
        SetId,
        SystemGeneratedFlag,
        WeeksOfInstruction,
        AcademicPeriodDate,
        ChildPeriods,
        ReportingPeriods,
        AcadPerValidDttmVO1,
        AcademicPeriodDttmCdVO1,
        AcademicPeriodTypeVO1,
        AcademicPeriodTypeVO2,
        CategoryLOV1,
        HerLookupPVO1,
        TypeNameVA;
        static AttributesEnum[] vals = null;
        private static final int firstIndex = 0;

        public int index() {
            return AttributesEnum.firstIndex() + ordinal();
        }

        public static final int firstIndex() {
            return firstIndex;
        }

        public static int count() {
            return AttributesEnum.firstIndex() + AttributesEnum.staticValues().length;
        }

        public static final AttributesEnum[] staticValues() {
            if (vals == null) {
                vals = AttributesEnum.values();
            }
            return vals;
        }
    }


    public static final int PERIODCATEGORYTRANS = AttributesEnum.PeriodCategoryTrans.index();
    public static final int PERIODCATEGORYCODE = AttributesEnum.PeriodCategoryCode.index();
    public static final int TYPENAME = AttributesEnum.TypeName.index();
    public static final int SETID1 = AttributesEnum.SetId1.index();
    public static final int ACADEMICPERIODTYPEIDTRANS = AttributesEnum.AcademicPeriodTypeIdTrans.index();
    public static final int ACADEMICPERIODENDDT = AttributesEnum.AcademicPeriodEndDt.index();
    public static final int ACADEMICPERIODID = AttributesEnum.AcademicPeriodId.index();
    public static final int ACADEMICPERIODSTARTDT = AttributesEnum.AcademicPeriodStartDt.index();
    public static final int ACADEMICPERIODTYPEID = AttributesEnum.AcademicPeriodTypeId.index();
    public static final int ATTRIBUTE1 = AttributesEnum.Attribute1.index();
    public static final int ATTRIBUTE10 = AttributesEnum.Attribute10.index();
    public static final int ATTRIBUTE11 = AttributesEnum.Attribute11.index();
    public static final int ATTRIBUTE12 = AttributesEnum.Attribute12.index();
    public static final int ATTRIBUTE13 = AttributesEnum.Attribute13.index();
    public static final int ATTRIBUTE14 = AttributesEnum.Attribute14.index();
    public static final int ATTRIBUTE15 = AttributesEnum.Attribute15.index();
    public static final int ATTRIBUTE16 = AttributesEnum.Attribute16.index();
    public static final int ATTRIBUTE17 = AttributesEnum.Attribute17.index();
    public static final int ATTRIBUTE18 = AttributesEnum.Attribute18.index();
    public static final int ATTRIBUTE19 = AttributesEnum.Attribute19.index();
    public static final int ATTRIBUTE2 = AttributesEnum.Attribute2.index();
    public static final int ATTRIBUTE20 = AttributesEnum.Attribute20.index();
    public static final int ATTRIBUTE3 = AttributesEnum.Attribute3.index();
    public static final int ATTRIBUTE4 = AttributesEnum.Attribute4.index();
    public static final int ATTRIBUTE5 = AttributesEnum.Attribute5.index();
    public static final int ATTRIBUTE6 = AttributesEnum.Attribute6.index();
    public static final int ATTRIBUTE7 = AttributesEnum.Attribute7.index();
    public static final int ATTRIBUTE8 = AttributesEnum.Attribute8.index();
    public static final int ATTRIBUTE9 = AttributesEnum.Attribute9.index();
    public static final int ATTRIBUTECATEGORY = AttributesEnum.AttributeCategory.index();
    public static final int ATTRIBUTEDATE1 = AttributesEnum.AttributeDate1.index();
    public static final int ATTRIBUTEDATE10 = AttributesEnum.AttributeDate10.index();
    public static final int ATTRIBUTEDATE2 = AttributesEnum.AttributeDate2.index();
    public static final int ATTRIBUTEDATE3 = AttributesEnum.AttributeDate3.index();
    public static final int ATTRIBUTEDATE4 = AttributesEnum.AttributeDate4.index();
    public static final int ATTRIBUTEDATE5 = AttributesEnum.AttributeDate5.index();
    public static final int ATTRIBUTEDATE6 = AttributesEnum.AttributeDate6.index();
    public static final int ATTRIBUTEDATE7 = AttributesEnum.AttributeDate7.index();
    public static final int ATTRIBUTEDATE8 = AttributesEnum.AttributeDate8.index();
    public static final int ATTRIBUTEDATE9 = AttributesEnum.AttributeDate9.index();
    public static final int ATTRIBUTENUMBER1 = AttributesEnum.AttributeNumber1.index();
    public static final int ATTRIBUTENUMBER10 = AttributesEnum.AttributeNumber10.index();
    public static final int ATTRIBUTENUMBER2 = AttributesEnum.AttributeNumber2.index();
    public static final int ATTRIBUTENUMBER3 = AttributesEnum.AttributeNumber3.index();
    public static final int ATTRIBUTENUMBER4 = AttributesEnum.AttributeNumber4.index();
    public static final int ATTRIBUTENUMBER5 = AttributesEnum.AttributeNumber5.index();
    public static final int ATTRIBUTENUMBER6 = AttributesEnum.AttributeNumber6.index();
    public static final int ATTRIBUTENUMBER7 = AttributesEnum.AttributeNumber7.index();
    public static final int ATTRIBUTENUMBER8 = AttributesEnum.AttributeNumber8.index();
    public static final int ATTRIBUTENUMBER9 = AttributesEnum.AttributeNumber9.index();
    public static final int ATTRIBUTETIMESTAMP1 = AttributesEnum.AttributeTimestamp1.index();
    public static final int ATTRIBUTETIMESTAMP10 = AttributesEnum.AttributeTimestamp10.index();
    public static final int ATTRIBUTETIMESTAMP2 = AttributesEnum.AttributeTimestamp2.index();
    public static final int ATTRIBUTETIMESTAMP3 = AttributesEnum.AttributeTimestamp3.index();
    public static final int ATTRIBUTETIMESTAMP4 = AttributesEnum.AttributeTimestamp4.index();
    public static final int ATTRIBUTETIMESTAMP5 = AttributesEnum.AttributeTimestamp5.index();
    public static final int ATTRIBUTETIMESTAMP6 = AttributesEnum.AttributeTimestamp6.index();
    public static final int ATTRIBUTETIMESTAMP7 = AttributesEnum.AttributeTimestamp7.index();
    public static final int ATTRIBUTETIMESTAMP8 = AttributesEnum.AttributeTimestamp8.index();
    public static final int ATTRIBUTETIMESTAMP9 = AttributesEnum.AttributeTimestamp9.index();
    public static final int CALID = AttributesEnum.CalId.index();
    public static final int CALENDARDATEFLAG = AttributesEnum.CalendarDateFlag.index();
    public static final int CREATEDBY = AttributesEnum.CreatedBy.index();
    public static final int CREATIONDATE = AttributesEnum.CreationDate.index();
    public static final int LASTUPDATEDATE = AttributesEnum.LastUpdateDate.index();
    public static final int LASTUPDATELOGIN = AttributesEnum.LastUpdateLogin.index();
    public static final int LASTUPDATEDBY = AttributesEnum.LastUpdatedBy.index();
    public static final int OBJECTVERSIONNUMBER = AttributesEnum.ObjectVersionNumber.index();
    public static final int PERIODNAME = AttributesEnum.PeriodName.index();
    public static final int PERIODTIERCODE = AttributesEnum.PeriodTierCode.index();
    public static final int SETID = AttributesEnum.SetId.index();
    public static final int SYSTEMGENERATEDFLAG = AttributesEnum.SystemGeneratedFlag.index();
    public static final int WEEKSOFINSTRUCTION = AttributesEnum.WeeksOfInstruction.index();
    public static final int ACADEMICPERIODDATE = AttributesEnum.AcademicPeriodDate.index();
    public static final int CHILDPERIODS = AttributesEnum.ChildPeriods.index();
    public static final int REPORTINGPERIODS = AttributesEnum.ReportingPeriods.index();
    public static final int ACADPERVALIDDTTMVO1 = AttributesEnum.AcadPerValidDttmVO1.index();
    public static final int ACADEMICPERIODDTTMCDVO1 = AttributesEnum.AcademicPeriodDttmCdVO1.index();
    public static final int ACADEMICPERIODTYPEVO1 = AttributesEnum.AcademicPeriodTypeVO1.index();
    public static final int ACADEMICPERIODTYPEVO2 = AttributesEnum.AcademicPeriodTypeVO2.index();
    public static final int CATEGORYLOV1 = AttributesEnum.CategoryLOV1.index();
    public static final int HERLOOKUPPVO1 = AttributesEnum.HerLookupPVO1.index();
    public static final int TYPENAMEVA = AttributesEnum.TypeNameVA.index();

    /**
     * This is the default constructor (do not remove).
     */
    public AcademicPeriodVORowImpl() {
    }

    /**
     * Gets AcademicPeriodEO entity object.
     * @return the AcademicPeriodEO
     */
    public AcademicPeriodEOImpl getAcademicPeriodEO() {
        return (AcademicPeriodEOImpl)getEntity(ENTITY_ACADEMICPERIODEO);
    }

    /**
     * Sets <code>value</code> as the attribute value for the calculated attribute PeriodCategoryTrans.
     * @param value value to set the  PeriodCategoryTrans
     */
    public void setPeriodCategoryTrans(String value) {
        setAttributeInternal(PERIODCATEGORYTRANS, value);
    }

    /**
     * Sets <code>value</code> as the attribute value for the calculated attribute PeriodCategoryCode.
     * @param value value to set the  PeriodCategoryCode
     */
    public void setPeriodCategoryCode(String value) {
        setAttributeInternal(PERIODCATEGORYCODE, value);
    }

    /**
     * Gets the attribute value for the calculated attribute TypeName.
     * @return the TypeName
     */
    public String getTypeName() {
        return (String) getAttributeInternal(TYPENAME);
    }

    /**
     * Sets <code>value</code> as the attribute value for the calculated attribute TypeName.
     * @param value value to set the  TypeName
     */
    public void setTypeName(String value) {
        setAttributeInternal(TYPENAME, value);
    }

    /**
     * Gets the attribute value for the calculated attribute SetId1.
     * @return the SetId1
     */
    public String getSetId1() {
        return (String) getAttributeInternal(SETID1);
    }

    /**
     * Sets <code>value</code> as the attribute value for the calculated attribute SetId1.
     * @param value value to set the  SetId1
     */
    public void setSetId1(String value) {
        setAttributeInternal(SETID1, value);
    }


    /**
     * Sets <code>value</code> as the attribute value for the calculated attribute AcademicPeriodTypeIdTrans.
     * @param value value to set the  AcademicPeriodTypeIdTrans
     */
    public void setAcademicPeriodTypeIdTrans(String value) {
        setAttributeInternal(ACADEMICPERIODTYPEIDTRANS, value);
    }

    /**
     * Gets the attribute value for ACADEMIC_PERIOD_END_DT using the alias name AcademicPeriodEndDt.
     * @return the ACADEMIC_PERIOD_END_DT
     */
    public Date getAcademicPeriodEndDt() {
        return (Date) getAttributeInternal(ACADEMICPERIODENDDT);
    }

    /**
     * Sets <code>value</code> as attribute value for ACADEMIC_PERIOD_END_DT using the alias name AcademicPeriodEndDt.
     * @param value value to set the ACADEMIC_PERIOD_END_DT
     */
    public void setAcademicPeriodEndDt(Date value) {
        setAttributeInternal(ACADEMICPERIODENDDT, value);
    }

    /**
     * Gets the attribute value for ACADEMIC_PERIOD_ID using the alias name AcademicPeriodId.
     * @return the ACADEMIC_PERIOD_ID
     */
    public Long getAcademicPeriodId() {
        return (Long) getAttributeInternal(ACADEMICPERIODID);
    }

    /**
     * Sets <code>value</code> as attribute value for ACADEMIC_PERIOD_ID using the alias name AcademicPeriodId.
     * @param value value to set the ACADEMIC_PERIOD_ID
     */
    public void setAcademicPeriodId(Long value) {
        setAttributeInternal(ACADEMICPERIODID, value);
    }

    /**
     * Gets the attribute value for ACADEMIC_PERIOD_START_DT using the alias name AcademicPeriodStartDt.
     * @return the ACADEMIC_PERIOD_START_DT
     */
    public Date getAcademicPeriodStartDt() {
        return (Date) getAttributeInternal(ACADEMICPERIODSTARTDT);
    }

    /**
     * Sets <code>value</code> as attribute value for ACADEMIC_PERIOD_START_DT using the alias name AcademicPeriodStartDt.
     * @param value value to set the ACADEMIC_PERIOD_START_DT
     */
    public void setAcademicPeriodStartDt(Date value) {
        setAttributeInternal(ACADEMICPERIODSTARTDT, value);
    }

    /**
     * Gets the attribute value for ACADEMIC_PERIOD_TYPE_ID using the alias name AcademicPeriodTypeId.
     * @return the ACADEMIC_PERIOD_TYPE_ID
     */
    public Long getAcademicPeriodTypeId() {
        return (Long) getAttributeInternal(ACADEMICPERIODTYPEID);
    }

    /**
     * Sets <code>value</code> as attribute value for ACADEMIC_PERIOD_TYPE_ID using the alias name AcademicPeriodTypeId.
     * @param value value to set the ACADEMIC_PERIOD_TYPE_ID
     */
    public void setAcademicPeriodTypeId(Long value) {
        setAttributeInternal(ACADEMICPERIODTYPEID, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE1 using the alias name Attribute1.
     * @return the ATTRIBUTE1
     */
    public String getAttribute1() {
        return (String) getAttributeInternal(ATTRIBUTE1);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE1 using the alias name Attribute1.
     * @param value value to set the ATTRIBUTE1
     */
    public void setAttribute1(String value) {
        setAttributeInternal(ATTRIBUTE1, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE10 using the alias name Attribute10.
     * @return the ATTRIBUTE10
     */
    public String getAttribute10() {
        return (String) getAttributeInternal(ATTRIBUTE10);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE10 using the alias name Attribute10.
     * @param value value to set the ATTRIBUTE10
     */
    public void setAttribute10(String value) {
        setAttributeInternal(ATTRIBUTE10, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE11 using the alias name Attribute11.
     * @return the ATTRIBUTE11
     */
    public String getAttribute11() {
        return (String) getAttributeInternal(ATTRIBUTE11);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE11 using the alias name Attribute11.
     * @param value value to set the ATTRIBUTE11
     */
    public void setAttribute11(String value) {
        setAttributeInternal(ATTRIBUTE11, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE12 using the alias name Attribute12.
     * @return the ATTRIBUTE12
     */
    public String getAttribute12() {
        return (String) getAttributeInternal(ATTRIBUTE12);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE12 using the alias name Attribute12.
     * @param value value to set the ATTRIBUTE12
     */
    public void setAttribute12(String value) {
        setAttributeInternal(ATTRIBUTE12, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE13 using the alias name Attribute13.
     * @return the ATTRIBUTE13
     */
    public String getAttribute13() {
        return (String) getAttributeInternal(ATTRIBUTE13);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE13 using the alias name Attribute13.
     * @param value value to set the ATTRIBUTE13
     */
    public void setAttribute13(String value) {
        setAttributeInternal(ATTRIBUTE13, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE14 using the alias name Attribute14.
     * @return the ATTRIBUTE14
     */
    public String getAttribute14() {
        return (String) getAttributeInternal(ATTRIBUTE14);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE14 using the alias name Attribute14.
     * @param value value to set the ATTRIBUTE14
     */
    public void setAttribute14(String value) {
        setAttributeInternal(ATTRIBUTE14, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE15 using the alias name Attribute15.
     * @return the ATTRIBUTE15
     */
    public String getAttribute15() {
        return (String) getAttributeInternal(ATTRIBUTE15);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE15 using the alias name Attribute15.
     * @param value value to set the ATTRIBUTE15
     */
    public void setAttribute15(String value) {
        setAttributeInternal(ATTRIBUTE15, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE16 using the alias name Attribute16.
     * @return the ATTRIBUTE16
     */
    public String getAttribute16() {
        return (String) getAttributeInternal(ATTRIBUTE16);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE16 using the alias name Attribute16.
     * @param value value to set the ATTRIBUTE16
     */
    public void setAttribute16(String value) {
        setAttributeInternal(ATTRIBUTE16, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE17 using the alias name Attribute17.
     * @return the ATTRIBUTE17
     */
    public String getAttribute17() {
        return (String) getAttributeInternal(ATTRIBUTE17);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE17 using the alias name Attribute17.
     * @param value value to set the ATTRIBUTE17
     */
    public void setAttribute17(String value) {
        setAttributeInternal(ATTRIBUTE17, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE18 using the alias name Attribute18.
     * @return the ATTRIBUTE18
     */
    public String getAttribute18() {
        return (String) getAttributeInternal(ATTRIBUTE18);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE18 using the alias name Attribute18.
     * @param value value to set the ATTRIBUTE18
     */
    public void setAttribute18(String value) {
        setAttributeInternal(ATTRIBUTE18, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE19 using the alias name Attribute19.
     * @return the ATTRIBUTE19
     */
    public String getAttribute19() {
        return (String) getAttributeInternal(ATTRIBUTE19);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE19 using the alias name Attribute19.
     * @param value value to set the ATTRIBUTE19
     */
    public void setAttribute19(String value) {
        setAttributeInternal(ATTRIBUTE19, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE2 using the alias name Attribute2.
     * @return the ATTRIBUTE2
     */
    public String getAttribute2() {
        return (String) getAttributeInternal(ATTRIBUTE2);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE2 using the alias name Attribute2.
     * @param value value to set the ATTRIBUTE2
     */
    public void setAttribute2(String value) {
        setAttributeInternal(ATTRIBUTE2, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE20 using the alias name Attribute20.
     * @return the ATTRIBUTE20
     */
    public String getAttribute20() {
        return (String) getAttributeInternal(ATTRIBUTE20);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE20 using the alias name Attribute20.
     * @param value value to set the ATTRIBUTE20
     */
    public void setAttribute20(String value) {
        setAttributeInternal(ATTRIBUTE20, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE3 using the alias name Attribute3.
     * @return the ATTRIBUTE3
     */
    public String getAttribute3() {
        return (String) getAttributeInternal(ATTRIBUTE3);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE3 using the alias name Attribute3.
     * @param value value to set the ATTRIBUTE3
     */
    public void setAttribute3(String value) {
        setAttributeInternal(ATTRIBUTE3, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE4 using the alias name Attribute4.
     * @return the ATTRIBUTE4
     */
    public String getAttribute4() {
        return (String) getAttributeInternal(ATTRIBUTE4);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE4 using the alias name Attribute4.
     * @param value value to set the ATTRIBUTE4
     */
    public void setAttribute4(String value) {
        setAttributeInternal(ATTRIBUTE4, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE5 using the alias name Attribute5.
     * @return the ATTRIBUTE5
     */
    public String getAttribute5() {
        return (String) getAttributeInternal(ATTRIBUTE5);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE5 using the alias name Attribute5.
     * @param value value to set the ATTRIBUTE5
     */
    public void setAttribute5(String value) {
        setAttributeInternal(ATTRIBUTE5, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE6 using the alias name Attribute6.
     * @return the ATTRIBUTE6
     */
    public String getAttribute6() {
        return (String) getAttributeInternal(ATTRIBUTE6);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE6 using the alias name Attribute6.
     * @param value value to set the ATTRIBUTE6
     */
    public void setAttribute6(String value) {
        setAttributeInternal(ATTRIBUTE6, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE7 using the alias name Attribute7.
     * @return the ATTRIBUTE7
     */
    public String getAttribute7() {
        return (String) getAttributeInternal(ATTRIBUTE7);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE7 using the alias name Attribute7.
     * @param value value to set the ATTRIBUTE7
     */
    public void setAttribute7(String value) {
        setAttributeInternal(ATTRIBUTE7, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE8 using the alias name Attribute8.
     * @return the ATTRIBUTE8
     */
    public String getAttribute8() {
        return (String) getAttributeInternal(ATTRIBUTE8);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE8 using the alias name Attribute8.
     * @param value value to set the ATTRIBUTE8
     */
    public void setAttribute8(String value) {
        setAttributeInternal(ATTRIBUTE8, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE9 using the alias name Attribute9.
     * @return the ATTRIBUTE9
     */
    public String getAttribute9() {
        return (String) getAttributeInternal(ATTRIBUTE9);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE9 using the alias name Attribute9.
     * @param value value to set the ATTRIBUTE9
     */
    public void setAttribute9(String value) {
        setAttributeInternal(ATTRIBUTE9, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_CATEGORY using the alias name AttributeCategory.
     * @return the ATTRIBUTE_CATEGORY
     */
    public String getAttributeCategory() {
        return (String) getAttributeInternal(ATTRIBUTECATEGORY);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_CATEGORY using the alias name AttributeCategory.
     * @param value value to set the ATTRIBUTE_CATEGORY
     */
    public void setAttributeCategory(String value) {
        setAttributeInternal(ATTRIBUTECATEGORY, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_DATE1 using the alias name AttributeDate1.
     * @return the ATTRIBUTE_DATE1
     */
    public Date getAttributeDate1() {
        return (Date) getAttributeInternal(ATTRIBUTEDATE1);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_DATE1 using the alias name AttributeDate1.
     * @param value value to set the ATTRIBUTE_DATE1
     */
    public void setAttributeDate1(Date value) {
        setAttributeInternal(ATTRIBUTEDATE1, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_DATE10 using the alias name AttributeDate10.
     * @return the ATTRIBUTE_DATE10
     */
    public Date getAttributeDate10() {
        return (Date) getAttributeInternal(ATTRIBUTEDATE10);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_DATE10 using the alias name AttributeDate10.
     * @param value value to set the ATTRIBUTE_DATE10
     */
    public void setAttributeDate10(Date value) {
        setAttributeInternal(ATTRIBUTEDATE10, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_DATE2 using the alias name AttributeDate2.
     * @return the ATTRIBUTE_DATE2
     */
    public Date getAttributeDate2() {
        return (Date) getAttributeInternal(ATTRIBUTEDATE2);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_DATE2 using the alias name AttributeDate2.
     * @param value value to set the ATTRIBUTE_DATE2
     */
    public void setAttributeDate2(Date value) {
        setAttributeInternal(ATTRIBUTEDATE2, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_DATE3 using the alias name AttributeDate3.
     * @return the ATTRIBUTE_DATE3
     */
    public Date getAttributeDate3() {
        return (Date) getAttributeInternal(ATTRIBUTEDATE3);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_DATE3 using the alias name AttributeDate3.
     * @param value value to set the ATTRIBUTE_DATE3
     */
    public void setAttributeDate3(Date value) {
        setAttributeInternal(ATTRIBUTEDATE3, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_DATE4 using the alias name AttributeDate4.
     * @return the ATTRIBUTE_DATE4
     */
    public Date getAttributeDate4() {
        return (Date) getAttributeInternal(ATTRIBUTEDATE4);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_DATE4 using the alias name AttributeDate4.
     * @param value value to set the ATTRIBUTE_DATE4
     */
    public void setAttributeDate4(Date value) {
        setAttributeInternal(ATTRIBUTEDATE4, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_DATE5 using the alias name AttributeDate5.
     * @return the ATTRIBUTE_DATE5
     */
    public Date getAttributeDate5() {
        return (Date) getAttributeInternal(ATTRIBUTEDATE5);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_DATE5 using the alias name AttributeDate5.
     * @param value value to set the ATTRIBUTE_DATE5
     */
    public void setAttributeDate5(Date value) {
        setAttributeInternal(ATTRIBUTEDATE5, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_DATE6 using the alias name AttributeDate6.
     * @return the ATTRIBUTE_DATE6
     */
    public Date getAttributeDate6() {
        return (Date) getAttributeInternal(ATTRIBUTEDATE6);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_DATE6 using the alias name AttributeDate6.
     * @param value value to set the ATTRIBUTE_DATE6
     */
    public void setAttributeDate6(Date value) {
        setAttributeInternal(ATTRIBUTEDATE6, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_DATE7 using the alias name AttributeDate7.
     * @return the ATTRIBUTE_DATE7
     */
    public Date getAttributeDate7() {
        return (Date) getAttributeInternal(ATTRIBUTEDATE7);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_DATE7 using the alias name AttributeDate7.
     * @param value value to set the ATTRIBUTE_DATE7
     */
    public void setAttributeDate7(Date value) {
        setAttributeInternal(ATTRIBUTEDATE7, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_DATE8 using the alias name AttributeDate8.
     * @return the ATTRIBUTE_DATE8
     */
    public Date getAttributeDate8() {
        return (Date) getAttributeInternal(ATTRIBUTEDATE8);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_DATE8 using the alias name AttributeDate8.
     * @param value value to set the ATTRIBUTE_DATE8
     */
    public void setAttributeDate8(Date value) {
        setAttributeInternal(ATTRIBUTEDATE8, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_DATE9 using the alias name AttributeDate9.
     * @return the ATTRIBUTE_DATE9
     */
    public Date getAttributeDate9() {
        return (Date) getAttributeInternal(ATTRIBUTEDATE9);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_DATE9 using the alias name AttributeDate9.
     * @param value value to set the ATTRIBUTE_DATE9
     */
    public void setAttributeDate9(Date value) {
        setAttributeInternal(ATTRIBUTEDATE9, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_NUMBER1 using the alias name AttributeNumber1.
     * @return the ATTRIBUTE_NUMBER1
     */
    public BigDecimal getAttributeNumber1() {
        return (BigDecimal) getAttributeInternal(ATTRIBUTENUMBER1);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_NUMBER1 using the alias name AttributeNumber1.
     * @param value value to set the ATTRIBUTE_NUMBER1
     */
    public void setAttributeNumber1(BigDecimal value) {
        setAttributeInternal(ATTRIBUTENUMBER1, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_NUMBER10 using the alias name AttributeNumber10.
     * @return the ATTRIBUTE_NUMBER10
     */
    public BigDecimal getAttributeNumber10() {
        return (BigDecimal) getAttributeInternal(ATTRIBUTENUMBER10);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_NUMBER10 using the alias name AttributeNumber10.
     * @param value value to set the ATTRIBUTE_NUMBER10
     */
    public void setAttributeNumber10(BigDecimal value) {
        setAttributeInternal(ATTRIBUTENUMBER10, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_NUMBER2 using the alias name AttributeNumber2.
     * @return the ATTRIBUTE_NUMBER2
     */
    public BigDecimal getAttributeNumber2() {
        return (BigDecimal) getAttributeInternal(ATTRIBUTENUMBER2);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_NUMBER2 using the alias name AttributeNumber2.
     * @param value value to set the ATTRIBUTE_NUMBER2
     */
    public void setAttributeNumber2(BigDecimal value) {
        setAttributeInternal(ATTRIBUTENUMBER2, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_NUMBER3 using the alias name AttributeNumber3.
     * @return the ATTRIBUTE_NUMBER3
     */
    public BigDecimal getAttributeNumber3() {
        return (BigDecimal) getAttributeInternal(ATTRIBUTENUMBER3);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_NUMBER3 using the alias name AttributeNumber3.
     * @param value value to set the ATTRIBUTE_NUMBER3
     */
    public void setAttributeNumber3(BigDecimal value) {
        setAttributeInternal(ATTRIBUTENUMBER3, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_NUMBER4 using the alias name AttributeNumber4.
     * @return the ATTRIBUTE_NUMBER4
     */
    public BigDecimal getAttributeNumber4() {
        return (BigDecimal) getAttributeInternal(ATTRIBUTENUMBER4);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_NUMBER4 using the alias name AttributeNumber4.
     * @param value value to set the ATTRIBUTE_NUMBER4
     */
    public void setAttributeNumber4(BigDecimal value) {
        setAttributeInternal(ATTRIBUTENUMBER4, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_NUMBER5 using the alias name AttributeNumber5.
     * @return the ATTRIBUTE_NUMBER5
     */
    public BigDecimal getAttributeNumber5() {
        return (BigDecimal) getAttributeInternal(ATTRIBUTENUMBER5);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_NUMBER5 using the alias name AttributeNumber5.
     * @param value value to set the ATTRIBUTE_NUMBER5
     */
    public void setAttributeNumber5(BigDecimal value) {
        setAttributeInternal(ATTRIBUTENUMBER5, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_NUMBER6 using the alias name AttributeNumber6.
     * @return the ATTRIBUTE_NUMBER6
     */
    public BigDecimal getAttributeNumber6() {
        return (BigDecimal) getAttributeInternal(ATTRIBUTENUMBER6);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_NUMBER6 using the alias name AttributeNumber6.
     * @param value value to set the ATTRIBUTE_NUMBER6
     */
    public void setAttributeNumber6(BigDecimal value) {
        setAttributeInternal(ATTRIBUTENUMBER6, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_NUMBER7 using the alias name AttributeNumber7.
     * @return the ATTRIBUTE_NUMBER7
     */
    public BigDecimal getAttributeNumber7() {
        return (BigDecimal) getAttributeInternal(ATTRIBUTENUMBER7);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_NUMBER7 using the alias name AttributeNumber7.
     * @param value value to set the ATTRIBUTE_NUMBER7
     */
    public void setAttributeNumber7(BigDecimal value) {
        setAttributeInternal(ATTRIBUTENUMBER7, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_NUMBER8 using the alias name AttributeNumber8.
     * @return the ATTRIBUTE_NUMBER8
     */
    public BigDecimal getAttributeNumber8() {
        return (BigDecimal) getAttributeInternal(ATTRIBUTENUMBER8);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_NUMBER8 using the alias name AttributeNumber8.
     * @param value value to set the ATTRIBUTE_NUMBER8
     */
    public void setAttributeNumber8(BigDecimal value) {
        setAttributeInternal(ATTRIBUTENUMBER8, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_NUMBER9 using the alias name AttributeNumber9.
     * @return the ATTRIBUTE_NUMBER9
     */
    public BigDecimal getAttributeNumber9() {
        return (BigDecimal) getAttributeInternal(ATTRIBUTENUMBER9);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_NUMBER9 using the alias name AttributeNumber9.
     * @param value value to set the ATTRIBUTE_NUMBER9
     */
    public void setAttributeNumber9(BigDecimal value) {
        setAttributeInternal(ATTRIBUTENUMBER9, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_TIMESTAMP1 using the alias name AttributeTimestamp1.
     * @return the ATTRIBUTE_TIMESTAMP1
     */
    public Timestamp getAttributeTimestamp1() {
        return (Timestamp) getAttributeInternal(ATTRIBUTETIMESTAMP1);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_TIMESTAMP1 using the alias name AttributeTimestamp1.
     * @param value value to set the ATTRIBUTE_TIMESTAMP1
     */
    public void setAttributeTimestamp1(Timestamp value) {
        setAttributeInternal(ATTRIBUTETIMESTAMP1, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_TIMESTAMP10 using the alias name AttributeTimestamp10.
     * @return the ATTRIBUTE_TIMESTAMP10
     */
    public Timestamp getAttributeTimestamp10() {
        return (Timestamp) getAttributeInternal(ATTRIBUTETIMESTAMP10);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_TIMESTAMP10 using the alias name AttributeTimestamp10.
     * @param value value to set the ATTRIBUTE_TIMESTAMP10
     */
    public void setAttributeTimestamp10(Timestamp value) {
        setAttributeInternal(ATTRIBUTETIMESTAMP10, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_TIMESTAMP2 using the alias name AttributeTimestamp2.
     * @return the ATTRIBUTE_TIMESTAMP2
     */
    public Timestamp getAttributeTimestamp2() {
        return (Timestamp) getAttributeInternal(ATTRIBUTETIMESTAMP2);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_TIMESTAMP2 using the alias name AttributeTimestamp2.
     * @param value value to set the ATTRIBUTE_TIMESTAMP2
     */
    public void setAttributeTimestamp2(Timestamp value) {
        setAttributeInternal(ATTRIBUTETIMESTAMP2, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_TIMESTAMP3 using the alias name AttributeTimestamp3.
     * @return the ATTRIBUTE_TIMESTAMP3
     */
    public Timestamp getAttributeTimestamp3() {
        return (Timestamp) getAttributeInternal(ATTRIBUTETIMESTAMP3);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_TIMESTAMP3 using the alias name AttributeTimestamp3.
     * @param value value to set the ATTRIBUTE_TIMESTAMP3
     */
    public void setAttributeTimestamp3(Timestamp value) {
        setAttributeInternal(ATTRIBUTETIMESTAMP3, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_TIMESTAMP4 using the alias name AttributeTimestamp4.
     * @return the ATTRIBUTE_TIMESTAMP4
     */
    public Timestamp getAttributeTimestamp4() {
        return (Timestamp) getAttributeInternal(ATTRIBUTETIMESTAMP4);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_TIMESTAMP4 using the alias name AttributeTimestamp4.
     * @param value value to set the ATTRIBUTE_TIMESTAMP4
     */
    public void setAttributeTimestamp4(Timestamp value) {
        setAttributeInternal(ATTRIBUTETIMESTAMP4, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_TIMESTAMP5 using the alias name AttributeTimestamp5.
     * @return the ATTRIBUTE_TIMESTAMP5
     */
    public Timestamp getAttributeTimestamp5() {
        return (Timestamp) getAttributeInternal(ATTRIBUTETIMESTAMP5);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_TIMESTAMP5 using the alias name AttributeTimestamp5.
     * @param value value to set the ATTRIBUTE_TIMESTAMP5
     */
    public void setAttributeTimestamp5(Timestamp value) {
        setAttributeInternal(ATTRIBUTETIMESTAMP5, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_TIMESTAMP6 using the alias name AttributeTimestamp6.
     * @return the ATTRIBUTE_TIMESTAMP6
     */
    public Timestamp getAttributeTimestamp6() {
        return (Timestamp) getAttributeInternal(ATTRIBUTETIMESTAMP6);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_TIMESTAMP6 using the alias name AttributeTimestamp6.
     * @param value value to set the ATTRIBUTE_TIMESTAMP6
     */
    public void setAttributeTimestamp6(Timestamp value) {
        setAttributeInternal(ATTRIBUTETIMESTAMP6, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_TIMESTAMP7 using the alias name AttributeTimestamp7.
     * @return the ATTRIBUTE_TIMESTAMP7
     */
    public Timestamp getAttributeTimestamp7() {
        return (Timestamp) getAttributeInternal(ATTRIBUTETIMESTAMP7);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_TIMESTAMP7 using the alias name AttributeTimestamp7.
     * @param value value to set the ATTRIBUTE_TIMESTAMP7
     */
    public void setAttributeTimestamp7(Timestamp value) {
        setAttributeInternal(ATTRIBUTETIMESTAMP7, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_TIMESTAMP8 using the alias name AttributeTimestamp8.
     * @return the ATTRIBUTE_TIMESTAMP8
     */
    public Timestamp getAttributeTimestamp8() {
        return (Timestamp) getAttributeInternal(ATTRIBUTETIMESTAMP8);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_TIMESTAMP8 using the alias name AttributeTimestamp8.
     * @param value value to set the ATTRIBUTE_TIMESTAMP8
     */
    public void setAttributeTimestamp8(Timestamp value) {
        setAttributeInternal(ATTRIBUTETIMESTAMP8, value);
    }

    /**
     * Gets the attribute value for ATTRIBUTE_TIMESTAMP9 using the alias name AttributeTimestamp9.
     * @return the ATTRIBUTE_TIMESTAMP9
     */
    public Timestamp getAttributeTimestamp9() {
        return (Timestamp) getAttributeInternal(ATTRIBUTETIMESTAMP9);
    }

    /**
     * Sets <code>value</code> as attribute value for ATTRIBUTE_TIMESTAMP9 using the alias name AttributeTimestamp9.
     * @param value value to set the ATTRIBUTE_TIMESTAMP9
     */
    public void setAttributeTimestamp9(Timestamp value) {
        setAttributeInternal(ATTRIBUTETIMESTAMP9, value);
    }

    /**
     * Gets the attribute value for CAL_ID using the alias name CalId.
     * @return the CAL_ID
     */
    public Long getCalId() {
        return (Long) getAttributeInternal(CALID);
    }

    /**
     * Sets <code>value</code> as attribute value for CAL_ID using the alias name CalId.
     * @param value value to set the CAL_ID
     */
    public void setCalId(Long value) {
        setAttributeInternal(CALID, value);
    }

    /**
     * Gets the attribute value for CALENDAR_DATE_FLAG using the alias name CalendarDateFlag.
     * @return the CALENDAR_DATE_FLAG
     */
    public String getCalendarDateFlag() {
        return (String) getAttributeInternal(CALENDARDATEFLAG);
    }

    /**
     * Sets <code>value</code> as attribute value for CALENDAR_DATE_FLAG using the alias name CalendarDateFlag.
     * @param value value to set the CALENDAR_DATE_FLAG
     */
    public void setCalendarDateFlag(String value) {
        setAttributeInternal(CALENDARDATEFLAG, value);
    }

    /**
     * Gets the attribute value for CREATED_BY using the alias name CreatedBy.
     * @return the CREATED_BY
     */
    public String getCreatedBy() {
        return (String) getAttributeInternal(CREATEDBY);
    }

    /**
     * Sets <code>value</code> as attribute value for CREATED_BY using the alias name CreatedBy.
     * @param value value to set the CREATED_BY
     */
    public void setCreatedBy(String value) {
        setAttributeInternal(CREATEDBY, value);
    }

    /**
     * Gets the attribute value for CREATION_DATE using the alias name CreationDate.
     * @return the CREATION_DATE
     */
    public Timestamp getCreationDate() {
        return (Timestamp) getAttributeInternal(CREATIONDATE);
    }

    /**
     * Sets <code>value</code> as attribute value for CREATION_DATE using the alias name CreationDate.
     * @param value value to set the CREATION_DATE
     */
    public void setCreationDate(Timestamp value) {
        setAttributeInternal(CREATIONDATE, value);
    }

    /**
     * Gets the attribute value for LAST_UPDATE_DATE using the alias name LastUpdateDate.
     * @return the LAST_UPDATE_DATE
     */
    public Timestamp getLastUpdateDate() {
        return (Timestamp) getAttributeInternal(LASTUPDATEDATE);
    }

    /**
     * Sets <code>value</code> as attribute value for LAST_UPDATE_DATE using the alias name LastUpdateDate.
     * @param value value to set the LAST_UPDATE_DATE
     */
    public void setLastUpdateDate(Timestamp value) {
        setAttributeInternal(LASTUPDATEDATE, value);
    }

    /**
     * Gets the attribute value for LAST_UPDATE_LOGIN using the alias name LastUpdateLogin.
     * @return the LAST_UPDATE_LOGIN
     */
    public String getLastUpdateLogin() {
        return (String) getAttributeInternal(LASTUPDATELOGIN);
    }

    /**
     * Sets <code>value</code> as attribute value for LAST_UPDATE_LOGIN using the alias name LastUpdateLogin.
     * @param value value to set the LAST_UPDATE_LOGIN
     */
    public void setLastUpdateLogin(String value) {
        setAttributeInternal(LASTUPDATELOGIN, value);
    }

    /**
     * Gets the attribute value for LAST_UPDATED_BY using the alias name LastUpdatedBy.
     * @return the LAST_UPDATED_BY
     */
    public String getLastUpdatedBy() {
        return (String) getAttributeInternal(LASTUPDATEDBY);
    }

    /**
     * Sets <code>value</code> as attribute value for LAST_UPDATED_BY using the alias name LastUpdatedBy.
     * @param value value to set the LAST_UPDATED_BY
     */
    public void setLastUpdatedBy(String value) {
        setAttributeInternal(LASTUPDATEDBY, value);
    }

    /**
     * Gets the attribute value for OBJECT_VERSION_NUMBER using the alias name ObjectVersionNumber.
     * @return the OBJECT_VERSION_NUMBER
     */
    public Integer getObjectVersionNumber() {
        return (Integer) getAttributeInternal(OBJECTVERSIONNUMBER);
    }

    /**
     * Sets <code>value</code> as attribute value for OBJECT_VERSION_NUMBER using the alias name ObjectVersionNumber.
     * @param value value to set the OBJECT_VERSION_NUMBER
     */
    public void setObjectVersionNumber(Integer value) {
        setAttributeInternal(OBJECTVERSIONNUMBER, value);
    }

    /**
     * Gets the attribute value for PERIOD_NAME using the alias name PeriodName.
     * @return the PERIOD_NAME
     */
    public String getPeriodName() {
        return (String) getAttributeInternal(PERIODNAME);
    }

    /**
     * Sets <code>value</code> as attribute value for PERIOD_NAME using the alias name PeriodName.
     * @param value value to set the PERIOD_NAME
     */
    public void setPeriodName(String value) {
        setAttributeInternal(PERIODNAME, value);
    }

    /**
     * Gets the attribute value for PERIOD_TIER_CODE using the alias name PeriodTierCode.
     * @return the PERIOD_TIER_CODE
     */
    public String getPeriodTierCode() {
        return (String) getAttributeInternal(PERIODTIERCODE);
    }

    /**
     * Sets <code>value</code> as attribute value for PERIOD_TIER_CODE using the alias name PeriodTierCode.
     * @param value value to set the PERIOD_TIER_CODE
     */
    public void setPeriodTierCode(String value) {
        setAttributeInternal(PERIODTIERCODE, value);
    }

    /**
     * Gets the attribute value for SET_ID using the alias name SetId.
     * @return the SET_ID
     */
    public Long getSetId() {
        return (Long) getAttributeInternal(SETID);
    }

    /**
     * Sets <code>value</code> as attribute value for SET_ID using the alias name SetId.
     * @param value value to set the SET_ID
     */
    public void setSetId(Long value) {
        setAttributeInternal(SETID, value);
    }

    /**
     * Gets the attribute value for SYSTEM_GENERATED_FLAG using the alias name SystemGeneratedFlag.
     * @return the SYSTEM_GENERATED_FLAG
     */
    public String getSystemGeneratedFlag() {
        return (String) getAttributeInternal(SYSTEMGENERATEDFLAG);
    }

    /**
     * Sets <code>value</code> as attribute value for SYSTEM_GENERATED_FLAG using the alias name SystemGeneratedFlag.
     * @param value value to set the SYSTEM_GENERATED_FLAG
     */
    public void setSystemGeneratedFlag(String value) {
        setAttributeInternal(SYSTEMGENERATEDFLAG, value);
    }

    /**
     * Gets the attribute value for WEEKS_OF_INSTRUCTION using the alias name WeeksOfInstruction.
     * @return the WEEKS_OF_INSTRUCTION
     */
    public Integer getWeeksOfInstruction() {
        return (Integer) getAttributeInternal(WEEKSOFINSTRUCTION);
    }

    /**
     * Sets <code>value</code> as attribute value for WEEKS_OF_INSTRUCTION using the alias name WeeksOfInstruction.
     * @param value value to set the WEEKS_OF_INSTRUCTION
     */
    public void setWeeksOfInstruction(Integer value) {
        setAttributeInternal(WEEKSOFINSTRUCTION, value);
    }

    /**
     * Gets the associated <code>RowIterator</code> using master-detail link AcademicPeriodDate.
     */
    public RowIterator getAcademicPeriodDate() {
        return (RowIterator)getAttributeInternal(ACADEMICPERIODDATE);
    }

    /**
     * Gets the associated <code>RowIterator</code> using master-detail link ChildPeriods.
     */
    public RowIterator getChildPeriods() {
        return (RowIterator)getAttributeInternal(CHILDPERIODS);
    }

    /**
     * Gets the associated <code>RowIterator</code> using master-detail link ReportingPeriods.
     */
    public RowIterator getReportingPeriods() {
        return (RowIterator)getAttributeInternal(REPORTINGPERIODS);
    }

    /**
     * Gets the view accessor <code>RowSet</code> AcadPerValidDttmVO1.
     */
    public RowSet getAcadPerValidDttmVO1() {
        return (RowSet)getAttributeInternal(ACADPERVALIDDTTMVO1);
    }

    /**
     * Gets the view accessor <code>RowSet</code> AcademicPeriodDttmCdVO1.
     */
    public RowSet getAcademicPeriodDttmCdVO1() {
        return (RowSet)getAttributeInternal(ACADEMICPERIODDTTMCDVO1);
    }

    /**
     * Gets the view accessor <code>RowSet</code> AcademicPeriodTypeVO1.
     */
    public RowSet getAcademicPeriodTypeVO1() {
        return (RowSet)getAttributeInternal(ACADEMICPERIODTYPEVO1);
    }

    /**
     * Gets the view accessor <code>RowSet</code> AcademicPeriodTypeVO2.
     */
    public RowSet getAcademicPeriodTypeVO2() {
        return (RowSet)getAttributeInternal(ACADEMICPERIODTYPEVO2);
    }

    /**
     * Gets the view accessor <code>RowSet</code> CategoryLOV1.
     */
    public RowSet getCategoryLOV1() {
        return (RowSet)getAttributeInternal(CATEGORYLOV1);
    }

    /**
     * Gets the view accessor <code>RowSet</code> HerLookupPVO1.
     */
    public RowSet getHerLookupPVO1() {
        return (RowSet)getAttributeInternal(HERLOOKUPPVO1);
    }

    /**
     * Gets the view accessor <code>RowSet</code> TypeNameVA.
     */
    public RowSet getTypeNameVA() {
        return (RowSet)getAttributeInternal(TYPENAMEVA);
    }
    
    
    /**
     * Gets the attribute value for the calculated attribute AcademicPeriodTypeIdTrans.
     * @return the AcademicPeriodTypeIdTrans
     */
    public String getAcademicPeriodTypeIdTrans() {
        if(this.getAcademicPeriodTypeId()!=null && this.getAcademicPeriodTypeVO2()!=null && this.getAcademicPeriodTypeVO2().first()!=null){ //Checks whether AcademicPeriodTypeId is null or not and
           return (String)this.getAcademicPeriodTypeVO2().first().getAttribute("TypeName");                                                 //also the VO is null or not and returns atleast a row
        }                                                                                                                                   //If met, then return the TypeName attribute from that VO
        return (String) getAttributeInternal(ACADEMICPERIODTYPEIDTRANS);
    }


    /**
     * Gets the attribute value for the calculated attribute PeriodCategoryTrans.
     * @return the PeriodCategoryTrans
     */
    public String getPeriodCategoryTrans() {
        if (this.getAcademicPeriodTypeId() !=null){ //Checks whether AcademicPerioTypeId of current row of AcademicPeriodVO is null or not
             String PeriodCatCode= this.getPeriodCategoryCode(); //If the Id is not null, then it gets the PeriodCategoryCode
            Row[] LookUpRow=this.getHerLookupPVO1().getFilteredRows("LookupCode", PeriodCatCode);  //If binds the CategoryCode to the VC in HerLookupPVO and gets the rows from the VO
            if(LookUpRow!=null && LookUpRow.length >0){ //If atleast a row is returned then
                return (String)LookUpRow[0].getAttribute("DisplayedField"); //Return the DisplayedField attribute from that row
            }
             
            }
        return (String) getAttributeInternal(PERIODCATEGORYTRANS);
    }
    
    /**
     * Gets the attribute value for the calculated attribute PeriodCategoryCode.
     * @return the PeriodCategoryCode
     */
    public String getPeriodCategoryCode() {
        if (this.getAcademicPeriodTypeId() !=null){  //Checks if the AcademicPeriodTypeId is null or not
            Row RowAcadPrdType=this.getAcademicPeriodTypeVO2().first(); //If not, then gets rows returned by the VA AcademicPeriodTypeVO of AcademicPeriodVO using the AcademicPeriodTypeId
            if(RowAcadPrdType!=null){ //If atleast a row is returned
                return (String)RowAcadPrdType.getAttribute("PeriodCategoryCode"); //return the PeriodCategoryCode of that row
            }
             
            }
        return (String) getAttributeInternal(PERIODCATEGORYCODE);
    }
    

    /**
     * getAttrInvokeAccessor: generated method. Do not modify.
     * @param index the index identifying the attribute
     * @param attrDef the attribute

     * @return the attribute value
     * @throws Exception
     */
    protected Object getAttrInvokeAccessor(int index,
                                           AttributeDefImpl attrDef) throws Exception {
        final AttributesEnum[] vals = AttributesEnum.staticValues();
        int enumIndex = index - AttributesEnum.firstIndex();
        if ((enumIndex >= 0) && (enumIndex < vals.length)) {
            switch (vals[enumIndex]) {
            case PeriodCategoryTrans:
                return getPeriodCategoryTrans();
            case PeriodCategoryCode:
                return getPeriodCategoryCode();
            case TypeName:
                return getTypeName();
            case SetId1:
                return getSetId1();
            case AcademicPeriodTypeIdTrans:
                return getAcademicPeriodTypeIdTrans();
            case AcademicPeriodEndDt:
                return getAcademicPeriodEndDt();
            case AcademicPeriodId:
                return getAcademicPeriodId();
            case AcademicPeriodStartDt:
                return getAcademicPeriodStartDt();
            case AcademicPeriodTypeId:
                return getAcademicPeriodTypeId();
            case Attribute1:
                return getAttribute1();
            case Attribute10:
                return getAttribute10();
            case Attribute11:
                return getAttribute11();
            case Attribute12:
                return getAttribute12();
            case Attribute13:
                return getAttribute13();
            case Attribute14:
                return getAttribute14();
            case Attribute15:
                return getAttribute15();
            case Attribute16:
                return getAttribute16();
            case Attribute17:
                return getAttribute17();
            case Attribute18:
                return getAttribute18();
            case Attribute19:
                return getAttribute19();
            case Attribute2:
                return getAttribute2();
            case Attribute20:
                return getAttribute20();
            case Attribute3:
                return getAttribute3();
            case Attribute4:
                return getAttribute4();
            case Attribute5:
                return getAttribute5();
            case Attribute6:
                return getAttribute6();
            case Attribute7:
                return getAttribute7();
            case Attribute8:
                return getAttribute8();
            case Attribute9:
                return getAttribute9();
            case AttributeCategory:
                return getAttributeCategory();
            case AttributeDate1:
                return getAttributeDate1();
            case AttributeDate10:
                return getAttributeDate10();
            case AttributeDate2:
                return getAttributeDate2();
            case AttributeDate3:
                return getAttributeDate3();
            case AttributeDate4:
                return getAttributeDate4();
            case AttributeDate5:
                return getAttributeDate5();
            case AttributeDate6:
                return getAttributeDate6();
            case AttributeDate7:
                return getAttributeDate7();
            case AttributeDate8:
                return getAttributeDate8();
            case AttributeDate9:
                return getAttributeDate9();
            case AttributeNumber1:
                return getAttributeNumber1();
            case AttributeNumber10:
                return getAttributeNumber10();
            case AttributeNumber2:
                return getAttributeNumber2();
            case AttributeNumber3:
                return getAttributeNumber3();
            case AttributeNumber4:
                return getAttributeNumber4();
            case AttributeNumber5:
                return getAttributeNumber5();
            case AttributeNumber6:
                return getAttributeNumber6();
            case AttributeNumber7:
                return getAttributeNumber7();
            case AttributeNumber8:
                return getAttributeNumber8();
            case AttributeNumber9:
                return getAttributeNumber9();
            case AttributeTimestamp1:
                return getAttributeTimestamp1();
            case AttributeTimestamp10:
                return getAttributeTimestamp10();
            case AttributeTimestamp2:
                return getAttributeTimestamp2();
            case AttributeTimestamp3:
                return getAttributeTimestamp3();
            case AttributeTimestamp4:
                return getAttributeTimestamp4();
            case AttributeTimestamp5:
                return getAttributeTimestamp5();
            case AttributeTimestamp6:
                return getAttributeTimestamp6();
            case AttributeTimestamp7:
                return getAttributeTimestamp7();
            case AttributeTimestamp8:
                return getAttributeTimestamp8();
            case AttributeTimestamp9:
                return getAttributeTimestamp9();
            case CalId:
                return getCalId();
            case CalendarDateFlag:
                return getCalendarDateFlag();
            case CreatedBy:
                return getCreatedBy();
            case CreationDate:
                return getCreationDate();
            case LastUpdateDate:
                return getLastUpdateDate();
            case LastUpdateLogin:
                return getLastUpdateLogin();
            case LastUpdatedBy:
                return getLastUpdatedBy();
            case ObjectVersionNumber:
                return getObjectVersionNumber();
            case PeriodName:
                return getPeriodName();
            case PeriodTierCode:
                return getPeriodTierCode();
            case SetId:
                return getSetId();
            case SystemGeneratedFlag:
                return getSystemGeneratedFlag();
            case WeeksOfInstruction:
                return getWeeksOfInstruction();
            case AcademicPeriodDate:
                return getAcademicPeriodDate();
            case ChildPeriods:
                return getChildPeriods();
            case ReportingPeriods:
                return getReportingPeriods();
            case AcadPerValidDttmVO1:
                return getAcadPerValidDttmVO1();
            case AcademicPeriodDttmCdVO1:
                return getAcademicPeriodDttmCdVO1();
            case AcademicPeriodTypeVO1:
                return getAcademicPeriodTypeVO1();
            case AcademicPeriodTypeVO2:
                return getAcademicPeriodTypeVO2();
            case CategoryLOV1:
                return getCategoryLOV1();
            case HerLookupPVO1:
                return getHerLookupPVO1();
            case TypeNameVA:
                return getTypeNameVA();
            }
        }
        return super.getAttrInvokeAccessor(index, attrDef);
    }

    /**
     * setAttrInvokeAccessor: generated method. Do not modify.
     * @param index the index identifying the attribute
     * @param value the value to assign to the attribute
     * @param attrDef the attribute

     * @throws Exception
     */
    protected void setAttrInvokeAccessor(int index, Object value,
                                         AttributeDefImpl attrDef) throws Exception {
        final AttributesEnum[] vals = AttributesEnum.staticValues();
        int enumIndex = index - AttributesEnum.firstIndex();
        if ((enumIndex >= 0) && (enumIndex < vals.length)) {
            switch (vals[enumIndex]) {
            case PeriodCategoryTrans:
                setPeriodCategoryTrans((String)value);
                return;
            case PeriodCategoryCode:
                setPeriodCategoryCode((String)value);
                return;
            case TypeName:
                setTypeName((String)value);
                return;
            case SetId1:
                setSetId1((String)value);
                return;
            case AcademicPeriodTypeIdTrans:
                setAcademicPeriodTypeIdTrans((String)value);
                return;
            case AcademicPeriodEndDt:
                setAcademicPeriodEndDt((Date)value);
                return;
            case AcademicPeriodId:
                setAcademicPeriodId((Long)value);
                return;
            case AcademicPeriodStartDt:
                setAcademicPeriodStartDt((Date)value);
                return;
            case AcademicPeriodTypeId:
                setAcademicPeriodTypeId((Long)value);
                return;
            case Attribute1:
                setAttribute1((String)value);
                return;
            case Attribute10:
                setAttribute10((String)value);
                return;
            case Attribute11:
                setAttribute11((String)value);
                return;
            case Attribute12:
                setAttribute12((String)value);
                return;
            case Attribute13:
                setAttribute13((String)value);
                return;
            case Attribute14:
                setAttribute14((String)value);
                return;
            case Attribute15:
                setAttribute15((String)value);
                return;
            case Attribute16:
                setAttribute16((String)value);
                return;
            case Attribute17:
                setAttribute17((String)value);
                return;
            case Attribute18:
                setAttribute18((String)value);
                return;
            case Attribute19:
                setAttribute19((String)value);
                return;
            case Attribute2:
                setAttribute2((String)value);
                return;
            case Attribute20:
                setAttribute20((String)value);
                return;
            case Attribute3:
                setAttribute3((String)value);
                return;
            case Attribute4:
                setAttribute4((String)value);
                return;
            case Attribute5:
                setAttribute5((String)value);
                return;
            case Attribute6:
                setAttribute6((String)value);
                return;
            case Attribute7:
                setAttribute7((String)value);
                return;
            case Attribute8:
                setAttribute8((String)value);
                return;
            case Attribute9:
                setAttribute9((String)value);
                return;
            case AttributeCategory:
                setAttributeCategory((String)value);
                return;
            case AttributeDate1:
                setAttributeDate1((Date)value);
                return;
            case AttributeDate10:
                setAttributeDate10((Date)value);
                return;
            case AttributeDate2:
                setAttributeDate2((Date)value);
                return;
            case AttributeDate3:
                setAttributeDate3((Date)value);
                return;
            case AttributeDate4:
                setAttributeDate4((Date)value);
                return;
            case AttributeDate5:
                setAttributeDate5((Date)value);
                return;
            case AttributeDate6:
                setAttributeDate6((Date)value);
                return;
            case AttributeDate7:
                setAttributeDate7((Date)value);
                return;
            case AttributeDate8:
                setAttributeDate8((Date)value);
                return;
            case AttributeDate9:
                setAttributeDate9((Date)value);
                return;
            case AttributeNumber1:
                setAttributeNumber1((BigDecimal)value);
                return;
            case AttributeNumber10:
                setAttributeNumber10((BigDecimal)value);
                return;
            case AttributeNumber2:
                setAttributeNumber2((BigDecimal)value);
                return;
            case AttributeNumber3:
                setAttributeNumber3((BigDecimal)value);
                return;
            case AttributeNumber4:
                setAttributeNumber4((BigDecimal)value);
                return;
            case AttributeNumber5:
                setAttributeNumber5((BigDecimal)value);
                return;
            case AttributeNumber6:
                setAttributeNumber6((BigDecimal)value);
                return;
            case AttributeNumber7:
                setAttributeNumber7((BigDecimal)value);
                return;
            case AttributeNumber8:
                setAttributeNumber8((BigDecimal)value);
                return;
            case AttributeNumber9:
                setAttributeNumber9((BigDecimal)value);
                return;
            case AttributeTimestamp1:
                setAttributeTimestamp1((Timestamp)value);
                return;
            case AttributeTimestamp10:
                setAttributeTimestamp10((Timestamp)value);
                return;
            case AttributeTimestamp2:
                setAttributeTimestamp2((Timestamp)value);
                return;
            case AttributeTimestamp3:
                setAttributeTimestamp3((Timestamp)value);
                return;
            case AttributeTimestamp4:
                setAttributeTimestamp4((Timestamp)value);
                return;
            case AttributeTimestamp5:
                setAttributeTimestamp5((Timestamp)value);
                return;
            case AttributeTimestamp6:
                setAttributeTimestamp6((Timestamp)value);
                return;
            case AttributeTimestamp7:
                setAttributeTimestamp7((Timestamp)value);
                return;
            case AttributeTimestamp8:
                setAttributeTimestamp8((Timestamp)value);
                return;
            case AttributeTimestamp9:
                setAttributeTimestamp9((Timestamp)value);
                return;
            case CalId:
                setCalId((Long)value);
                return;
            case CalendarDateFlag:
                setCalendarDateFlag((String)value);
                return;
            case CreatedBy:
                setCreatedBy((String)value);
                return;
            case CreationDate:
                setCreationDate((Timestamp)value);
                return;
            case LastUpdateDate:
                setLastUpdateDate((Timestamp)value);
                return;
            case LastUpdateLogin:
                setLastUpdateLogin((String)value);
                return;
            case LastUpdatedBy:
                setLastUpdatedBy((String)value);
                return;
            case ObjectVersionNumber:
                setObjectVersionNumber((Integer)value);
                return;
            case PeriodName:
                setPeriodName((String)value);
                return;
            case PeriodTierCode:
                setPeriodTierCode((String)value);
                return;
            case SetId:
                setSetId((Long)value);
                return;
            case SystemGeneratedFlag:
                setSystemGeneratedFlag((String)value);
                return;
            case WeeksOfInstruction:
                setWeeksOfInstruction((Integer)value);
                return;
            }
        }
        super.setAttrInvokeAccessor(index, value, attrDef);
    }


}