diff --git a/maven/src/changes/changes.xml b/maven/src/changes/changes.xml index 1da1d1df9f..b4e566a78c 100644 --- a/maven/src/changes/changes.xml +++ b/maven/src/changes/changes.xml @@ -7,6 +7,7 @@ Added support for reading Primavera SureTrak databases from directories, zip files, and STX files. + Added support for PP files generated by Asta Powerproject from version 13.0.0.1 Added support for reading Primavera P3 databases from directories, zip files, and PRX files. diff --git a/src/net/sf/mpxj/asta/AstaTextFileReader.java b/src/net/sf/mpxj/asta/AstaTextFileReader.java index 501379b038..aa316f2104 100644 --- a/src/net/sf/mpxj/asta/AstaTextFileReader.java +++ b/src/net/sf/mpxj/asta/AstaTextFileReader.java @@ -463,6 +463,7 @@ private List getTable(String name) FILE_VERSION_MAP.put(Integer.valueOf(11004), FileFormat11004.class); // EasyProject 5 and PowerProject 11 FILE_VERSION_MAP.put(Integer.valueOf(12002), FileFormat12002.class); // PowerProject 12.0.0.2 FILE_VERSION_MAP.put(Integer.valueOf(12005), FileFormat12005.class); // PowerProject 12 + FILE_VERSION_MAP.put(Integer.valueOf(13001), FileFormat13001.class); // PowerProject 13 FILE_VERSION_MAP.put(Integer.valueOf(13004), FileFormat13004.class); // PowerProject 13 } } \ No newline at end of file diff --git a/src/net/sf/mpxj/asta/FileFormat13001.java b/src/net/sf/mpxj/asta/FileFormat13001.java new file mode 100644 index 0000000000..fdae5623bc --- /dev/null +++ b/src/net/sf/mpxj/asta/FileFormat13001.java @@ -0,0 +1,846 @@ +/* + * file: FileFormat13001.java + * author: Jon Iles + * copyright: (c) Packwood Software 2016 + * date: 23/03/2018 + */ + +/* + * This library is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as published by the + * Free Software Foundation; either version 2.1 of the License, or (at your + * option) any later version. + * + * This library is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public + * License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this library; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. + */ + +package net.sf.mpxj.asta; + +/** + * Asta PowerProject 13 file format. + */ +class FileFormat13001 extends AbstractFileFormat +{ + @Override public boolean epochDateFormat() + { + return true; + } + + @Override protected String[] barColumnsOrder() + { + return BAR_COLUMNS_ORDER; + } + + @Override protected String[] calendarColumnsOrder() + { + return CALENDAR_COLUMNS_ORDER; + } + + @Override protected String[] consumableResourceColumnsOrder() + { + return CONSUMABLE_RESOURCE_COLUMNS_ORDER; + } + + @Override protected String[] exceptionColumnsOrder() + { + return EXCEPTIONN_COLUMNS_ORDER; + } + + @Override protected String[] exceptionAssignmentColumnsOrder() + { + return EXCEPTION_ASSIGNMENT_COLUMNS_ORDER; + } + + @Override protected String[] expandedTaskColumnsOrder() + { + return EXPANDED_TASK_COLUMNS_ORDER; + } + + @Override protected String[] linkColumnsOrder() + { + return LINK_COLUMNS_ORDER; + } + + @Override protected String[] milestoneColumnsOrder() + { + return MILESTONE_COLUMNS_ORDER; + } + + @Override protected String[] permanentResourceSkillColumnsOrder() + { + return PERMANENT_RESOURCE_SKILL_COLUMNS_ORDER; + } + + @Override protected String[] permanentResourceColumnsOrder() + { + return PERMANENT_RESOURCE_COLUMNS_ORDER; + } + + @Override protected String[] permanentScheduleAllocationColumnsOrder() + { + return PERMANENT_SCHEDULE_ALLOCATION_COLUMNS_ORDER; + } + + @Override protected String[] projectSummaryColumnsOrder() + { + return PROJECT_SUMMARY_COLUMNS_ORDER; + } + + @Override protected String[] taskColumnsOrder() + { + return TASK_COLUMNS_ORDER; + } + + @Override protected String[] timeEntryColumnsOrder() + { + return TIME_ENTRY_COLUMNS_ORDER; + } + + @Override protected String[] workPatternColumnsOrder() + { + return WORK_PATTERN_COLUMNS_ORDER; + } + + @Override protected String[] wbsEntryColumnsOrder() + { + return WBS_ENTRY_COLUMNS_ORDER; + } + + private static final String[] BAR_COLUMNS_ORDER = + { + "BARID", + "STARV", + "ENF", + "NATURAL_ORDER", + "SPARI_INTEGER", + "NAMH", + "EXPANDED_TASK", + "PRIORITY", + "UNSCHEDULABLE", + "MARK_FOR_HIDING", + "TASKS_MAY_OVERLAP", + "SUBPROJECT_ID", + "ALT_ID", + "LAST_EDITED_DATE", + "LAST_EDITED_BY", + }; + + private static final String[] CALENDAR_COLUMNS_ORDER = + { + "CALENDARID", + "SPARL_INTEGER", + "NAMK", + "DOMINANT_WORK_PATTERN", + "CALENDAR", + "DISPLAY_THRESHOLD", + "NO_WORKING_TIME_COLOUR", + "WORKING_TIME_COLOUR", + "NUMBERING", + "SHOW_PAST_DATES", + "ISO8601_WEEK_NUMBERING", + "CREATED_AS_FOLDER", + "ALT_ID", + "LAST_EDITED_DATE", + "LAST_EDITED_BY", + }; + + private static final String[] CONSUMABLE_RESOURCE_COLUMNS_ORDER = + { + "CONSUMABLE_RESOURCEID", + "COST_PER_UNITCURRENCZ", + "COST_PER_UNITAMOUNT", + "INCOME_PER_UNITCURRENCZ", + "INCOME_PER_UNITAMOUNT", + "COST_PER_USEDEFAULTSCURRENCZ", + "COST_PER_USEDEFAULTSAMOUNT", + "INCOME_P_USEDEFAULTSCURRENCZ", + "INCOME_P_USEDEFAULTSAMOUNT", + "DURATIOPDEFAULTSTYPF", + "DURATIOPDEFAULTSELA_MONTHS", + "DURATIOPDEFAULTSHOURS", + "DELAZDEFAULTSTYPF", + "DELAZDEFAULTSELA_MONTHS", + "DELAZDEFAULTSHOURS", + "DEFAULTSQUANTITY", + "DEFAULTSACTIVITY_CONV_FACTOR", + "DEFAULTSCONSUMPTION_RATE", + "DEFAULTSCONSUMPTION_RAT_UNIT", + "DEFAULTSDURATION_TIMG_UNIT", + "DEFAULTSDELAY_TIMF_UNIT", + "DEFAULTSEXPENDITURE_C_CENTRE", + "DEFAULTSINCOME_COST_CENTRE", + "DEFAULTSTYPM", + "UNKNOWN", + "DEFAULTSCALCULATEE_PARAMETER", + "DEFAULTSBALANCINH_PARAMETER", + "DEFAULTSCONSUMPTION_RAT_TYPE", + "DEFAULTSUSE_TASL_CALENDAR", + "UNKNOWN", + "DEFAULTSALLOD_PROPORTIONALLY", + "DEFAULTSCONSUMED", + "DEFAULTSACCOUNTEDA_ELSEWHERE", + "DEFAULTSMAY_BE_SHORTERA_TASK", + "UNKNOWN", + "AVAILABLE_FROM", + "AVAILABLE_TO", + "MEASUREMENT", + "CONSUMABLE_RESOURCE", + "ARR_STOUT_STRES_APARROW_TYPE", + "ARR_STOUT_STRES_APLENGTH", + "ARR_STOUT_STRES_APEDGE", + "ARR_STOUT_STRES_APBORDET_COL", + "ARR_STOUT_STRES_APINSIDG_COL", + "ARR_STOUT_STRES_APPLACEMENW", + "BLI_STOUT_STRES_APBLIP_TYPE", + "BLI_STOUT_STRES_APSCALEY", + "BLI_STOUT_STRES_APSCALEZ", + "BLI_STOUT_STRES_APGAP", + "BLI_STOUT_STRES_APBORDES_COL", + "BLI_STOUT_STRES_APINSIDF_COL", + "BLI_STOUT_STRES_APPLACEMENV", + "LIN_STOUT_STRES_APSCALEX", + "LIN_STOUT_STRES_APWIDTH", + "LIN_STOUT_STRES_APBORDER_COL", + "LIN_STOUT_STRES_APINSIDE_COL", + "LIN_STOUT_STRES_APLINE_TYPE", + "RES_APFOREGROUND_FILL_COLOUR", + "RES_APBACKGROUND_FILL_COLOUR", + "RES_APPATTERN", + "AVAILABILITY", + "TOTAL_AVAILABILITY", + "SPAWE_INTEGER", + "NASE", + "SHORT_NAME_SINGLE", + "SHORT_NAME_PLURAL", + "CALENDAV", + "USE_PARENV_CALENDAR", + "USE_LINE_STYLE_P_ALLOCATIONS", + "NO_NEW_ASSIGNMENTS", + "CREATED_AS_FOLDER", + "ALT_ID", + "LAST_EDITED_DATE", + "LAST_EDITED_BY", + }; + + private static final String[] EXCEPTIONN_COLUMNS_ORDER = + { + "EXCEPTIONNID", + "ARR_STOUT_STAPPANDARROW_TYPE", + "ARR_STOUT_STAPPANDLENGTH", + "ARR_STOUT_STAPPANDEDGE", + "ARR_STOUT_STAPPANDBORDET_COL", + "ARR_STOUT_STAPPANDINSIDG_COL", + "ARR_STOUT_STAPPANDPLACEMENW", + "BLI_STOUT_STAPPANDBLIP_TYPE", + "BLI_STOUT_STAPPANDSCALEY", + "BLI_STOUT_STAPPANDSCALEZ", + "BLI_STOUT_STAPPANDGAP", + "BLI_STOUT_STAPPANDBORDES_COL", + "BLI_STOUT_STAPPANDINSIDF_COL", + "BLI_STOUT_STAPPANDPLACEMENV", + "LIN_STOUT_STAPPANDSCALEX", + "LIN_STOUT_STAPPANDWIDTH", + "LIN_STOUT_STAPPANDBORDER_COL", + "LIN_STOUT_STAPPANDINSIDE_COL", + "LIN_STOUT_STAPPANDLINE_TYPE", + "APPANDFOREGROUND_FILL_COLOUR", + "APPANDBACKGROUND_FILL_COLOUR", + "APPANDPATTERN", + "UNIQUE_BIT_FIELD", + "NAML", + "TYPG", + "ALT_ID", + "LAST_EDITED_DATE", + "LAST_EDITED_BY" + }; + + private static final String[] EXCEPTION_ASSIGNMENT_COLUMNS_ORDER = + { + "EXCEPTION_ASSIGNMENTID", + "STARU_DATE", + "ENE_DATE", + "EXCEPTIOO", + }; + + private static final String[] EXPANDED_TASK_COLUMNS_ORDER = + { + "EXPANDED_TASKID", + "VAR_DATE1COMM_ATTSFIXED_DATE", + "VAR_DATE1COMM_ATTSBASE_DATE", + "VAR_DATE2COMM_ATTSFIXED_DATE", + "VAR_DATE2COMM_ATTSBASE_DATE", + "VAR_DATE3COMM_ATTSFIXED_DATE", + "VAR_DATE3COMM_ATTSBASE_DATE", + "COMM_ATTSSCALE1", + "COMM_ATTSSCALE2", + "COMM_ATTSSCALE3", + "COMM_ATTSNSCALES", + "PERCENTAGE_LIKELIHOOD", + "PROJ_RISK", + "PROJ_PRIORITY", + "SUM_WEIGHTS", + "ISSUE_DATE", + "REVISION_DATE", + "PROJECT_BASELINE_ID", + "NUMBER_OF_ACTIVITIES", + "DRAWN_BY", + "REVISION_COMMENT", + "CHART_MANAGER", + "REVISION_NUMBER", + "PROGRAMME_NUMBER", + "COMMENU", + "PROJ_TYPE", + "PROJ_STATUS", + "PROGRESU_PERIOD", + "MANAGER_RESOURCE", + "UNKNOWN", + "TYPH", + "TAG_FIELD", + "IS_PROJECT", + "CONTAINS_PROJECTS", + "CUMULATIVH_COSTCURRENCZ", + "CUMULATIVH_COSTAMOUNT", + "CUMULATIVH_INCOMECURRENCZ", + "CUMULATIVH_INCOMEAMOUNT", + "CUMULATIVE_ACTU_COSTCURRENCZ", + "ONLY_PM_MAY_APPROVE", + "CUMULATIV_DURATIONTYPF", + "CUMULATIVE_ACTU_COSTAMOUNT", + "CUMULATIV_DURATIONHOURS", + "ACTUAL_CU_DURATIONTYPF", + "CUMULATIV_DURATIONELA_MONTHS", + "ACTUAL_CU_DURATIONELA_MONTHS", + "ACTUAL_CU_DURATIONHOURS", + "ACTUAL_CUMULATIVE_QUANTITY", + "CUMULATIVE_QUANTIT_REMAINING", + "CUMULATIVE_EFFORT_P_COMPLETE", + "CUMULATIVE_WORK_PER_COMPLETE", + "CUMULATIVE_QUANTITY_COMPLETE", + "FIRST_PREFERRED_START", + "CALCULATED_PROGRESS_DATE", + "EARLIEST_PROGRESS_DATE", + "LATEST_PROGRESS_DATE", + "EARLY_END_DATE_RT", + "LATE_END_DATE_RT", + "FREE_END_DATE_RT", + "CUMULATIVE_DEMANE_EFFORT", + "CUMULATIVE_SCHEDULEE_EFFORT", + "ACTUAL_CUMULATIVF_EFFORT", + "CUMULATIVE_EFFORU_REMAINING", + "ACTUAL_CUMULATIVE_WORK", + "CUMULATIVE_WORK_REMAINING", + "MILESTONES_DONE", + "MILESTONES_REMAINING", + "CUMULATIVE_EFFORT_TIME_UNIT", + //"MILESTONE_PERCENT_COMPLETE", + "CUMULATIVE_LATEST_PRO_PERIOD", + "ACTUAL_DURATIONTYPF", + "ACTUAL_DURATIONELA_MONTHS", + "ACTUAL_DURATIONHOURS", + "EARLY_START_DATE", + "LATE_START_DATE", + "FREE_START_DATE", + "START_CONSTRAINT_DATE", + "END_CONSTRAINT_DATE", + "EFFORT_BUDGET", + "NATURAO_ORDER", + "LOGICAL_PRECEDENCE", + "SPAVE_INTEGER", + "SWIM_LANE", + "USER_PERCENT_COMPLETE", + "OVERALL_PERCENV_COMPLETE", + "OVERALL_PERCENT_COMPL_WEIGHT", + "NARE", + "WBN_CODE", + "NOTET", + "UNIQUE_TASK_ID", + "CALENDAU", + "WBT", + "EFFORT_TIMI_UNIT", + "WORL_UNIT", + "LATEST_ALLOC_PROGRESS_PERIOD", + "IFC_PRODUCT_SET", + "WORN", + "BAR", + "CONSTRAINU", + "PRIORITB", + "IFC_TASK_TYPE", + "CRITICAM", + "USE_PARENU_CALENDAR", + "BUFFER_TASK", + "MARK_FOS_HIDING", + "OWNED_BY_TIMESHEEV_X", + "START_ON_NEX_DAY", + "LONGEST_PATH", + "DURATIOTTYPF", + "DURATIOTELA_MONTHS", + "DURATIOTHOURS", + "STARZ", + "ENJ", + "DURATION_TIMJ_UNIT", + "UNSCHEDULABLG", + "SUBPROJECT_ID", + "ALT_ID", + "LAST_EDITED_DATE", + "LAST_EDITED_BY", + }; + + private static final String[] LINK_COLUMNS_ORDER = + { + "LINKID", + "START_LAG_TIMETYPF", + "START_LAG_TIMEELA_MONTHS", + "START_LAG_TIMEHOURS", + "END_LAG_TIMETYPF", + "END_LAG_TIMEELA_MONTHS", + "END_LAG_TIMEHOURS", + "MAXIMUM_LAGTYPF", + "MAXIMUM_LAGELA_MONTHS", + "MAXIMUM_LAGHOURS", + "STARV_DATE", + "ENF_DATE", + "CURVATURE_PERCENTAGE", + "START_LAG_PERCENT_FLOAT", + "END_LAG_PERCENT_FLOAT", + "COMMENTS", + "LINK_CATEGORY", + "START_LAG_TIME_UNIT", + "END_LAG_TIME_UNIT", + "MAXIMUM_LAG_TIME_UNIT", + "START_TASK", + "END_TASK", + "TYPI", + "START_LAG_TYPE", + "END_LAG_TYPE", + "MAINTAIN_TASK_OFFSETS", + "UNSCHEDULABLF", + "CRITICAL", + "ON_LOOP", + "MAXIMUM_LAG_MODE", + "ANNOTATE_LEAD_LAG", + "START_REPOSITION_ON_TAS_MOVE", + "END_REPOSITION_ON_TASK_MOVE", + "DRAW_CURVED_IF_VERTICAL", + "AUTOMATIC_CURVED_LI_SETTINGS", + "DRAW_CURVED_LINK_TO_LEFT", + "LOCAL_LINK", + "DRIVING", + "ALT_ID", + "LAST_EDITED_DATE", + "LAST_EDITED_BY", + }; + + private static final String[] MILESTONE_COLUMNS_ORDER = + { + "MILESTONEID", + "GIVEN_DATE_TIME", + "PROGREST_PERIOD", + "SYMBOL_APPEARANCE", + "MILESTONE_TYPE", + "PLACEMENU", + "COMPLETED", + "INTERRUPTIBLE_X", + "ACTUAL_DURATIONTYPF", + "ACTUAL_DURATIONELA_MONTHS", + "ACTUAL_DURATIONHOURS", + "EARLY_START_DATE", + "LATE_START_DATE", + "FREE_START_DATE", + "START_CONSTRAINT_DATE", + "END_CONSTRAINT_DATE", + "EFFORT_BUDGET", + "NATURAO_ORDER", + "LOGICAL_PRECEDENCE", + "SPAVE_INTEGER", + "SWIM_LANE", + "USER_PERCENT_COMPLETE", + "OVERALL_PERCENV_COMPLETE", + "OVERALL_PERCENT_COMPL_WEIGHT", + "NARE", + "WBN_CODE", + "NOTET", + "UNIQUE_TASK_ID", + "CALENDAU", + "WBT", + "EFFORT_TIMI_UNIT", + "WORL_UNIT", + "LATEST_ALLOC_PROGRESS_PERIOD", + "IFC_PRODUCT_SET", + "WORN", + "BAR", + "CONSTRAINU", + "PRIORITB", + "IFC_TASK_TYPE", + "CRITICAM", + "USE_PARENU_CALENDAR", + "BUFFER_TASK", + "MARK_FOS_HIDING", + "OWNED_BY_TIMESHEEV_X", + "START_ON_NEX_DAY", + "LONGEST_PATH", + "DURATIOTTYPF", + "DURATIOTELA_MONTHS", + "DURATIOTHOURS", + "STARZ", + "ENJ", + "DURATION_TIMJ_UNIT", + "UNSCHEDULABLG", + "SUBPROJECT_ID", + "ALT_ID", + "LAST_EDITED_DATE", + "LAST_EDITED_BY", + }; + + private static final String[] PERMANENT_RESOURCE_SKILL_COLUMNS_ORDER = + { + "PERM_RESOURCE_SKILLID", + "ARR_STOUT_STSKI_APARROW_TYPE", + "ARR_STOUT_STSKI_APLENGTH", + "ARR_STOUT_STSKI_APEDGE", + "ARR_STOUT_STSKI_APBORDET_COL", + "ARR_STOUT_STSKI_APINSIDG_COL", + "ARR_STOUT_STSKI_APPLACEMENW", + "BLI_STOUT_STSKI_APBLIP_TYPE", + "BLI_STOUT_STSKI_APSCALEY", + "BLI_STOUT_STSKI_APSCALEZ", + "BLI_STOUT_STSKI_APGAP", + "BLI_STOUT_STSKI_APBORDES_COL", + "BLI_STOUT_STSKI_APINSIDF_COL", + "BLI_STOUT_STSKI_APPLACEMENV", + "LIN_STOUT_STSKI_APSCALEX", + "LIN_STOUT_STSKI_APWIDTH", + "LIN_STOUT_STSKI_APBORDER_COL", + "LIN_STOUT_STSKI_APINSIDE_COL", + "LIN_STOUT_STSKI_APLINE_TYPE", + "SKI_APFOREGROUND_FILL_COLOUR", + "SKI_APBACKGROUND_FILL_COLOUR", + "SKI_APPATTERN", + "DURATIOODEFAULTTTYPF", + "DURATIOODEFAULTTELA_MONTHS", + "DURATIOODEFAULTTHOURS", + "DELAYDEFAULTTTYPF", + "DELAYDEFAULTTELA_MONTHS", + "DELAYDEFAULTTHOURS", + "DEFAULTTALLOCATION", + "DEFAULTTWORK_FROM_ACT_FACTOR", + "DEFAULTTEFFORT", + "DEFAULTTWORL", + "DEFAULTTWORK_RATE", + "DEFAULTTWORK_UNIT", + "DEFAULTTWORK_RATE_TIME_UNIT", + "DEFAULTTEFFORT_TIMG_UNIT", + "DEFAULTTDURATION_TIMF_UNIT", + "DEFAULTTDELAY_TIME_UNIT", + "UNKNOWN", + "DEFAULTTTYPL", + "DEFAULTTCALCULATED_PARAMETER", + "DEFAULTTBALANCING_PARAMETER", + "DEFAULTTWORK_RATE_TYPE", + "DEFAULTTUSE_TASK_CALENDAR", + "UNKNOWN", + "DEFAULTTALLOC_PROPORTIONALLY", + "DEFAULTTCAN_BE_SPLIT", + "DEFAULTTCAN_BE_DELAYED", + "DEFAULTTCAN_BE_STRETCHED", + "DEFAULTTACCOUNTED__ELSEWHERE", + "DEFAULTTCONTRIBUTES_T_EFFORT", + "DEFAULTTMAY_BE_SHORTER__TASK", + "DEFAULTTSHARED_EFFORT", + "UNKNOWN", + "UNKNOWN", + "UNKNOWN", + "ABILITY", + "EFFECTIVENESS", + "AVAILABILITY", + "AVAILABLF_FROM", + "AVAILABLF_TO", + "SPARO_INTEGER", + "EFFORT_TIMF_UNIT", + "ROLE", + "PLAYER", + "CREATED_AS_FOLDER", + "ALT_ID", + "LAST_EDITED_DATE", + "LAST_EDITED_BY", + }; + + private static final String[] PERMANENT_RESOURCE_COLUMNS_ORDER = + { + "PERMANENT_RESOURCEID", + "EMAIL_ADDRESS", + "EFFORT_TIME_UNIT", + "PURE_TREE", + "EXCLUDED_FROM_TIMESHEET", + "ARR_STOUT_STRES_APARROW_TYPE", + "ARR_STOUT_STRES_APLENGTH", + "ARR_STOUT_STRES_APEDGE", + "ARR_STOUT_STRES_APBORDET_COL", + "ARR_STOUT_STRES_APINSIDG_COL", + "ARR_STOUT_STRES_APPLACEMENW", + "BLI_STOUT_STRES_APBLIP_TYPE", + "BLI_STOUT_STRES_APSCALEY", + "BLI_STOUT_STRES_APSCALEZ", + "BLI_STOUT_STRES_APGAP", + "BLI_STOUT_STRES_APBORDES_COL", + "BLI_STOUT_STRES_APINSIDF_COL", + "BLI_STOUT_STRES_APPLACEMENV", + "LIN_STOUT_STRES_APSCALEX", + "LIN_STOUT_STRES_APWIDTH", + "LIN_STOUT_STRES_APBORDER_COL", + "LIN_STOUT_STRES_APINSIDE_COL", + "LIN_STOUT_STRES_APLINE_TYPE", + "RES_APFOREGROUND_FILL_COLOUR", + "RES_APBACKGROUND_FILL_COLOUR", + "RES_APPATTERN", + "AVAILABILITY", + "TOTAL_AVAILABILITY", + "SPAWE_INTEGER", + "NASE", + "SHORT_NAME_SINGLE", + "SHORT_NAME_PLURAL", + "CALENDAV", + "USE_PARENV_CALENDAR", + "USE_LINE_STYLE_P_ALLOCATIONS", + "NO_NEW_ASSIGNMENTS", + "CREATED_AS_FOLDER", + "ALT_ID", + "LAST_EDITED_DATE", + "LAST_EDITED_BY", + }; + + private static final String[] PERMANENT_SCHEDULE_ALLOCATION_COLUMNS_ORDER = + { + "PERMANENT_SCHEDUL_ALLOCATIONID", + "REQUIREE_BY", + "OWNED_BY_TIMESHEET_X", + "EFFORW", + "GIVEN_EFFORT", + "WORK_FROM_TASK_FACTOR", + "ALLOCATIOO", + "GIVEN_ALLOCATION", + "ALLOCATIOP_OF", + "WORM_UNIT", + "WORK_RATE_TIMF_UNIT", + "EFFORT_TIMJ_UNIT", + "WORO", + "GIVEN_WORK", + "WORL_RATE", + "GIVEN_WORK_RATE", + "TYPV", + "CALCULATEG_PARAMETER", + "BALANCINJ_PARAMETER", + "SHAREE_EFFORT", + "CONTRIBUTES_TO_ACTIVI_EFFORT", + "TIMESHEET_ROUND_UP_IF_UNDER", + "TIMESHEET_CAP_IF_OVER", + "DELAATYPF", + "DELAAELA_MONTHS", + "DELAAHOURS", + "GIVEO_DURATIONTYPF", + "GIVEO_DURATIONELA_MONTHS", + "GIVEO_DURATIONHOURS", + "DELAY_TIMI_UNIT", + "RATE_TYPE", + "USE_TASM_CALENDAR", + "IGNORF", + "ELAPSEE", + "MAY_BE_SHORTER_THAN_TASK", + "BUDGETED_COST_CURRENCY", + "BUDGETED_COST_AMOUNT", + "RESUMF", + "SPAXE_INTEGER", + "FLAGS", + "PERCENT_COMPLETE", + "USER_PERCENU_COMPLETE", + "ALLOCATION_PROFILE", + "ALLOCATIOR_GROUP", + "RESOURCE_CURVE", + "ALLOCATEE_TO", + "PRIORITC", + "NONLINEAR_TYPE", + "ACCOUNTED_FOR_ELSEWHERE", + "DURATIOTTYPF", + "DURATIOTELA_MONTHS", + "DURATIOTHOURS", + "STARZ", + "ENJ", + "DURATION_TIMJ_UNIT", + "UNSCHEDULABLG", + "SUBPROJECT_ID", + "ALT_ID", + "LAST_EDITED_DATE", + "LAST_EDITED_BY", + }; + + private static final String[] PROJECT_SUMMARY_COLUMNS_ORDER = + { + "PROJECT_SUMMARYID", + "DURATIONTYPF", + "DURATIONELA_MONTHS", + "DURATIONHOURS", + "STARU", + "ENE", + "FISCAL_YEAR_START", + "LAST_ID_USED_IN_BASELINE", + "DS_ID_BOOKED_FROM", + "WBN_CONSTRAINT", + "WBN_RANGE_FROM", + "WBN_RANGE_TO", + "WBN_INCREMENT", + "WBN_MINIMUM_WIDTH", + "SPARF_INTEGER", + "UTID_CONSTRAINT", + "UTID_START_VALUE", + "UTID_INCREMENT", + "UTID_SUB_INCREMENT", + "UTID_MINIMUM_WIDTH", + "INITIAL_VIEW", + "POINT_RELEASE", + "TIMESHEET_PROJECT_ID", + "LAST_ID_USED_IN_ARCHIVES", + "PROJECT_VERSION", + "BOOKOUT_SET_UNIQUE_ID", + "NUMBER_BOOKED_OUT_SETS", + "SCALE_SPR_FONTS_CONSISTENTLY", + "SHORT_NAME", + "LONG_NAME", + "LOCAL_FILE_BOOKED_FROM", + "WBN_START_VALUE", + "WBN_PATHNAME_SEPARATOR", + "WBN_TASK_SEPARATOR", + "WBN_PREFIX", + "LAST_WBN_USED", + "PROJECT_FOR", + "PROJECT_BY", + "PATH_SEPARATOR", + "CHART_PATH_SEPARATOR", + "UTID_PREFIX", + "TIMESHEET_CONNECTION", + "WBS_PATH_SEPARATOR", + "PROJECT_GUID", + "DURATION_TIME_UNIT", + "SECURITY_CODELIBRARY", + "BOOKOUT_COUNTER", + "PROGRESS_METHOD", + "FORMULA_DATE_FORMAT", + "WBN_ENABLED", + "OLD_START_VALUE", + "IGNORE_SATISFIED_COSTS", + "UTID_ENABLE_SUB_INCREMENTS", + "EXCLUSIVE_CUSTOM_TIME_UNITS", + "IS_AN_ARCHIVE", + "SORT_BY_SORT_ORDER", + "USE_PROJECT_BASELINES_FOR_JP", + "USE_ROLLED_UP_OPC_WEIGHTINGS", + "DISPLAY_WBS_BY_CODE", + "INHERIT_FROM_NEIGHBOUR", + "LAST_EDITED_DATE", + "LAST_EDITED_BY", + }; + + private static final String[] TASK_COLUMNS_ORDER = + { + "TASKID", + "GIVEN_DURATIONTYPF", + "GIVEN_DURATIONELA_MONTHS", + "GIVEN_DURATIONHOURS", + "RESUME", + "GIVEN_START", + "LATEST_PROGRESS_PERIOD", + "TASK_WORK_RATE_TIME_UNIT", + "TASK_WORK_RATE", + "PLACEMENT", + "BEEN_SPLIT", + "INTERRUPTIBLE", + "HOLDING_PIN", + "ACTUAL_DURATIONTYPF", + "ACTUAL_DURATIONELA_MONTHS", + "ACTUAL_DURATIONHOURS", + "EARLY_START_DATE", + "LATE_START_DATE", + "FREE_START_DATE", + "START_CONSTRAINT_DATE", + "END_CONSTRAINT_DATE", + "EFFORT_BUDGET", + "NATURAO_ORDER", + "LOGICAL_PRECEDENCE", + "SPAVE_INTEGER", + "SWIM_LANE", + "USER_PERCENT_COMPLETE", + "OVERALL_PERCENV_COMPLETE", + "OVERALL_PERCENT_COMPL_WEIGHT", + "NARE", + "WBN_CODE", + "NOTET", + "UNIQUE_TASK_ID", + "CALENDAU", + "WBT", + "EFFORT_TIMI_UNIT", + "WORL_UNIT", + "LATEST_ALLOC_PROGRESS_PERIOD", + "IFC_PRODUCT_SET", + "WORN", + "BAR", + "CONSTRAINU", + "PRIORITB", + "IFC_TASK_TYPE", + "CRITICAM", + "USE_PARENU_CALENDAR", + "BUFFER_TASK", + "MARK_FOS_HIDING", + "OWNED_BY_TIMESHEEV_X", + "START_ON_NEX_DAY", + "LONGEST_PATH", + "DURATIOTTYPF", + "DURATIOTELA_MONTHS", + "DURATIOTHOURS", + "STARZ", + "ENJ", + "DURATION_TIMJ_UNIT", + "UNSCHEDULABLG", + "SUBPROJECT_ID", + "ALT_ID", + "LAST_EDITED_DATE", + "LAST_EDITED_BY", + }; + + private static final String[] TIME_ENTRY_COLUMNS_ORDER = + { + "TIME_ENTRYID", + "EXCEPTIOP", + "START_TIME", + "END_TIME", + }; + + private static final String[] WORK_PATTERN_COLUMNS_ORDER = + { + "WORK_PATTERNID", + "DEFAULT_OFFSET", + "NAMN", + "DEFAULT_ALIGNMENT_DATE", + "CREATED_AS_FOLDER", + "ALT_ID", + "LAST_EDITED_DATE", + "LAST_EDITED_BY", + }; + + private static final String[] WBS_ENTRY_COLUMNS_ORDER = + { + "WBS_ENTRYID", + "NATURAP_ORDER", + "WBT_CODE", + "WBT_NAME", + "WBS_ENTRY", + "CREATED_AS_FOLDER", + "ALT_ID", + "LAST_EDITED_DATE", + "LAST_EDITED_BY" + }; +}