Import Tasks

This feature allows for the importing of Tasks information into the Unanet system.

Roles

This screen is available to users having any of the following roles: Administrator, P&R Administrator (and Project Managers and Project Leads have access to a project/task level version).

License

This feature is available with any Unanet edition.

Performance Tip Note:  Depending on the number of users in your installation and other factors such as the overall performance of your platform, the activity of importing one or many files may take up to several minutes.  Should this be the case with your installation, you may want to consider running these processes at non-peak times to minimize database contention.

 

Topics covered on this help page include:


Import File Record Layout

IMPORTANT: Note that there are multiple places within this documentation that say you MUST use double quotes for the strings in your import. If you are working in Excel, Excel will provide the double quotes and thus you do not need to add them in manually. Manually adding double quotes within Excel would result in multiple sets of double quotes in the resulting .csv file and thus cause an error (should you attempt to import that resulting file). Please see Excel Tips for more information.

 

 

 

Field Header Name

Required/Comments

1

A

Project_Org_Code

ALWAYS REQUIRED.  This code uniquely identifies the Organization to which the project belongs.  This value must match an existing Project Organization Code value defined in your system.  If the Organization you are trying to import does not already exist in the database, the entire record will be rejected.

2

B

Project_Code

ALWAYS REQUIRED.  This project code identifies the project to which this Task belongs.  The project code is unique within an Organization.   This value must match an existing Project Code value defined in your system.  If the Project you are trying to import does not already exist in the database,  the entire record will be rejected.

3

C

Task_Name

ALWAYS REQUIRED.   The task name should be unique at the same level under a project (though this is not enforced).

If a task is not a top-level task (e.g. it has sub-tasks), you must include a comma separated list of each task starting at the top level down.  The following is an example of a valid task tree and how you would reflect each task using this import.

Task Tree Access String

1.   Car Repair

"Car Repair"

1.1     Tires

"Car Repair,Tires"

1.2     Paint

"Car Repair,Paint"

1.2.1      Prep work

"Car Repair,Paint,Prep work"

1.2.2      Patching

"Car Repair,Paint,Patching"

1.3     Engine

"Car Repair,Engine"

1.3.1      Tune-up

"Car Repair,Engine,Tune-up"

1.3.1      Rebuild

"Car Repair,Engine,Rebuild"

See the Excel Tips regarding the use of double quotes and more.

 

You can use the task import to change a task name for an existing task by supplying the following syntax in this field.  Note that you can only change the leaf level (right / outer most) task name.  The "old_task_hierarchy" will need to include the entire existing hierarchy string, while the "new_task_name" should only include the leaf level / right / outer most individual task name that is being changed.

"!RENAME!,old_task_hierarchy,new_task_name"  -- this entire string must be enclosed in double quotes.  

Note the old_task_hierarchy argument must include the entire task hierarchy string including parent and children tasks, where as the new_task_name should only include the name of the leaf level task being renamed.

Given the example hierarchy above, if you were attempting to change:

1) Task 1.2.2 "Patching" to "Patch Work", the import file would include:
"!RENAME!,Car Repair,Paint,Patching,Patch Work"

2) Task 1 "Car Repair" to "Car Fixup", the import file would include:
"!RENAME!,Car Repair,Car Fixup"

Embedded Commas

If you have task names that include commas within the task name, you'll need to include additional sets of double quotes surrounding any individual task name component.   

If this is a stand-alone, highest/first level task (i.e. not a child task), then the task name will need to be enclosed within 3 sets of double quotes.  This is not necessary for many other fields within Unanet that may contain a comma, but because the Task name may included a hierarchy, it is necessary in this case.

## Example of inserting a task with a comma in it (NewTask,Inc) - requires 3 sets of double quotes -- 2 sets of double quotes around the task name and a single set of double quotes around the entire field.

PROJ_ORG,PROJ_CODE,"""NewTask,Inc"""

If this is a child task, then the task name will need to be enclosed within 2 sets of double quotes and have the entire field enclosed in another single set of double quotes.

## Example of inserting a child  task with a comma in it (NewChildTask,Inc) - requires 2 sets of double quotes around each task name and a single set of double quotes around the entire field.

PROJ_ORG,PROJ_CODE,"""NewTask,Inc"",""NewChildTask,Inc"""

Several examples below may help clarify the double quote usage with regards to the RENAME function.  

Keep in mind that if you are using Excel, it will automatically add quotes in certain situations.

 If editing the file with a text editor, the quotes should appear as follows.

## Example of renaming a single-level task

PROJ_ORG,PROJ_CODE,"!RENAME!,oldtaskname,newtaskname"

## Variation of above with commas in new task name (task,new)

PROJ_ORG,PROJ_CODE,"!RENAME!,taskold,""task,new"""

## Variation of above with commas in old task name (task,old)

PROJ_ORG,PROJ_CODE,"!RENAME!,""task,old"",tasknew"

## Variation of above with commas in old task name (task,old) and new task name (task,new)

PROJ_ORG,PROJ_CODE,"!RENAME!,""task,old2"",""task,new2"""

When using RENAME with a sub-task where the new name contains a comma with a trailing space, note that the trailing space will be truncated upon save.

Maximum Length: 50 characters (for any single task name being inserted or updated)

4

D

Active

Valid values include Y or N (if not provided, Y is the default for a new entry).  Identifies whether this task is available for charging.

5

E

Original_Start_Date

This field can be blank.  Any trailing values --such as a time component will be ignored (e.g. "12/31/2001 08:24 AM"  -- the "08:24 AM" would be ignored).  A value of "NA" in this field will be ignored (resulting in no error or warning).   You can use the special tag !BLANK! to remove an existing entry in this field.

Recommended date format:   yyyy-MM-dd    See Allowable Date Formats for more options.  

6

F

Original_End_Date

This field can be blank. Any trailing values --such as a time component will be ignored (e.g. "12/31/2001 08:24 AM"  -- the "08:24 AM" would be ignored). .  A value of "NA" in this field will be ignored (resulting in no error or warning).   You can use the special tag !BLANK! to remove an existing entry in this field.

Recommended date format:   yyyy-MM-dd    See Allowable Date Formats for more options.  

7

G

Revised_Start_Date

Any trailing values --such as a time component will be ignored (e.g. "12/31/2001 08:24 AM"  -- the "08:24 AM" would be ignored).  A value of "NA" in this field will be ignored (resulting in no error or warning).   

On the add of a new record, if this field is left blank it will be defaulted to either the Original_Start_Date (if provided) or BOT.  

Recommended date format:   yyyy-MM-dd    See Allowable Date Formats for more options. 

8

H

Revised_End_Date

Any trailing values --such as a time component will be ignored (e.g. "12/31/2001 08:24 AM"  -- the "08:24 AM" would be ignored). A value of "NA" in this field will be ignored (resulting in no error or warning).  

On the add of a new record, if this field is left blank it will be defaulted to either the Original_End_Date (if provided) or EOT.  

Recommended date format:   yyyy-MM-dd    See Allowable Date Formats for more options. 

9

I

Completed_Date

This field can be blank. Any trailing values --such as a time component will be ignored (e.g. "12/31/2001 08:24 AM"  -- the "08:24 AM" would be ignored).  A value of "NA" in this field will be ignored (resulting in no error or warning).  You can use the special tag !BLANK! to remove an existing entry in this field.

Recommended date format:   yyyy-MM-dd    See Allowable Date Formats for more options.  

10

J

Percent_Complete

 

The task Percent Complete field can be used to specify a numeric percentage (values should range between 0 and 100 supporting 3 digits to the right of the decimal).  Several of the Unanet reports will use the value of this field in their calculations.  You can use the special tag !BLANK! to remove an existing entry in this field.

Maximum Length: 3 numeric positions to the left of the decimal and 3 numeric positions to the right of the decimal.

11

K

Status

This field can be used to store a task status.  This field can be left blank.  You can use the special tag !BLANK! to remove an existing entry in this field.

Maximum Length: 50 characters

12

L

Output

This field can be used to store a task output.  This field can be left blank.  You can use the special tag !BLANK! to remove an existing entry in this field.

Maximum Length: 50 characters

13

M

External_System_Code

This field can be used to store an account number (e.g. a GL account code associated with this task). This field can be blank. You can use the special tag !BLANK! to remove an existing entry in this field.

Maximum Length: 64 characters

Note: This field used to be named Account_Number.  Beginning with v10.0, the account number functionality has been altered and the fields previously referred to as account_number have been changed to external_system_code.  While the import column header Account_Number will continue to be a recognized alias for some time, you may want to take measures to update any automated imports to use the new name.

14

N

Budget_Hours

Total budgeted hours for this task. This field can be blank or must be numeric.  Any trailing values -- such as a text string "hrs" will be ignored.  

You can use the special tag !BLANK! to remove an existing entry in this field.

This field accepts a numeric value up to 13 positions to the left of the decimal and 2 positions to the right.

15

O

ETC_Hours

Estimate of hours required to complete this task. This field can be blank or must be numeric.  Any trailing values -- such as a text string "hrs" will be ignored. You can use the special tag !BLANK! to remove an existing entry in this field.

This field accepts a numeric value up to 13 positions to the left of the decimal and 2 positions to the right.

16

P

Est_Tot_Hours

Estimated Total hours expected for this task. This field can be blank or must be numeric.  Any trailing values -- such as a text string "hrs" will be ignored.

This field accepts a numeric value up to 13 positions to the left of the decimal and 2 positions to the right.

17

Q

Budget_Labor_Dollars_Bill

 

Total bill labor dollars budgeted for this task.  This field can be blank or must be numeric. You can use the special tag !BLANK! to remove an existing entry in this field.  See Permission Note below.

This field accepts a numeric value up to 13 positions to the left of the decimal and 2 positions to the right, and can be either positive or negative (to support budgeting of discounts).

18

R

ETC_Labor_Dollars_Bill

Estimate of bill labor dollars required to complete this task. This field can be blank or must be numeric.  You can use the special tag !BLANK! to remove an existing entry in this field.  See Permission Note below.

This field accepts a numeric value up to 13 positions to the left of the decimal and 2 positions to the right, and can be either positive or negative (to support budgeting of discounts).

19

S

Est_Tot_Labor_Dollars_Bill

Estimated Total bill labor dollars expected for this task. This field can be blank or must be numeric.  You can use the special tag !BLANK! to remove an existing entry in this field.    See Permission Note below.

This field accepts a numeric value up to 13 positions to the left of the decimal and 2 positions to the right, and can be either positive or negative (to support budgeting of discounts).

20

T

Budget_Expense_Dollars_Bill

Total bill expense dollars budgeted for this task.  This field can be blank or must be numeric. You can use the special tag !BLANK! to remove an existing entry in this field.    See Permission Note below.

This field accepts a numeric value up to 13 positions to the left of the decimal and 2 positions to the right, and can be either positive or negative (to support budgeting of discounts).

21

U

ETC_Expense_Dollars_Bill

Estimate of bill expense dollars required to complete this task. This field can be blank or must be numeric.  You can use the special tag !BLANK! to remove an existing entry in this field.   See Permission Note below.

This field accepts a numeric value up to 13 positions to the left of the decimal and 2 positions to the right, and can be either positive or negative (to support budgeting of discounts).

22

V

Est_Tot_Expense_Dollars_Bill

Estimated Total bill expense dollars expected for this task. This field can be blank or must be numeric.  You can use the special tag !BLANK! to remove an existing entry in this field.  See Permission Note below.

This field accepts a numeric value up to 13 positions to the left of the decimal and 2 positions to the right, and can be either positive or negative (to support budgeting of discounts).

23

W

User01

OPTIONALLY REQUIRED.  Depending on how you have configured the user defined fields in your system, this field may be a Date, Numeric, String or value that matches a Pick List entry.  This field can be left blank if not configured to be required.  You can use the special tag !BLANK! to remove an existing entry in this field.

Maximum Length: 128 characters

Click here for more information about user defined fields for tasks.

24

X

User02

See note for User Defined 1 above

25

Y

User03

See note for User Defined 1 above

26

Z

User04

See note for User Defined 1 above

27

AA

User05

See note for User Defined 1 above

28

AB

User06

See note for User Defined 1 above

29

AC

User07

See note for User Defined 1 above

30

AD

User08

See note for User Defined 1 above

31

AE

User09

See note for User Defined 1 above

32

AF

User10

See note for User Defined 1 above

33

AG

Budget_Labor_Dollars_Cost

Total cost labor dollars budgeted for this task.  This field can be blank or must be numeric.  You can use the special tag !BLANK! to remove an existing entry in this field.   See Permission Note below.

This field accepts a numeric value up to 13 positions to the left of the decimal and 2 positions to the right.

34

AH

ETC_Labor_Dollars_Cost

Estimate of cost labor dollars required to complete this task. This field can be blank or must be numeric.  You can use the special tag !BLANK! to remove an existing entry in this field.   See Permission Note below.

This field accepts a numeric value up to 13 positions to the left of the decimal and 2 positions to the right.

35

AI

Est_Tot_Labor_Dollars_Cost

Estimated Total cost labor dollars expected for this task. This field can be blank or must be numeric.   You can use the special tag !BLANK! to remove an existing entry in this field.   See Permission Note below.

This field accepts a numeric value up to 13 positions to the left of the decimal and 2 positions to the right.

36

AJ

Budget_Expense_Dollars_Cost

Total cost expense dollars budgeted for this task.  This field can be blank or must be numeric.   You can use the special tag !BLANK! to remove an existing entry in this field.    See Permission Note below.

This field accepts a numeric value up to 13 positions to the left of the decimal and 2 positions to the right.

37

AK

ETC_Expense_Dollars_Cost

Estimate of cost expense dollars required to complete this task. This field can be blank or must be numeric.   You can use the special tag !BLANK! to remove an existing entry in this field.    See Permission Note below.

This field accepts a numeric value up to 13 positions to the left of the decimal and 2 positions to the right.

38

AL

Est_Tot_Expense_Dollars_Cost

Estimated Total cost expense dollars expected for this task. This field can be blank or must be numeric.   You can use the special tag !BLANK! to remove an existing entry in this field.    See Permission Note below.

This field accepts a numeric value up to 13 positions to the left of the decimal and 2 positions to the right.

39

AM

Project_Type

This field can be used to specify a task level default project type.   When populated, it must contain the value matching an existing Project Type already defined in your system.  This field is optional and can be left blank.  You can use the special tag !BLANK! to remove an existing entry in this field.

The project type must be active if the project and task are active.

40

AN

Delete

This field is used to trigger the system to delete a Task (including any of it's relationships to other project entities such as Project  Assignments, etc).  In order for the delete to happen, you must have the following text string !DELETE! in this field.

Note that you will not be allowed to delete a task if time or expense actuals have been charged against the task (instead you may want to inactivate the task).

41

AO

Duration

This field can be used to calculate a begin or end date should one of those dates not exist and will accept a value between 0 and 52197 (which represents the number of days should our BOT and EOT date be used).  This field can be left blank.  If left blank, the system will calculate and save a duration based on the number of business days between the tasks begin and end dates.

42

AP

Enable_Alerts

Valid values include Y or N (if not provided, N is the default for a new entry).  This field will determine if a particular task is to participate in the alert functionality.

43

AQ

Billing_Type

This field can be used to specify a task level billing type.   When populated, it must contain the value matching an existing Billing Type already defined in your system.  This field is optional and can be left blank.  You can use the special tag !BLANK! to remove an existing entry in this field.  When not supplied, tasks will be assumed as having a billing type the same as that defined on the project.  

Note there are limitations with respect to allowable combinations of project and task level billing types (see Billing Type for more information).  Also note that there are limitations with respect to when a billing type can be changed (ie once an item has been included in a post process, the billing type can no longer be changed).  Further, should a billing type be changed from Fixed Price, any Fixed Price items previously defined for this Task will be removed.

You will need to check the 'Allow Billing Type updates" option if you intend to alter this value on an existing task (in order to prevent the accidental removal of any related fixed price items).

44

AR

Budget_Labor_Dollars_Cost_Burdened

Total burdened cost labor dollars budgeted for this task. This field can be blank or must be numeric.  You can use the special tag !BLANK! to remove an existing entry in this field.   See Permission Note below.

This field accepts a numeric value up to 13 positions to the left of the decimal and 2 positions to the right.

45

AS

Budget_Expense_Dollars_Cost_Burdened

Total burdened cost expense dollars budgeted for this task.  This field can be blank or must be numeric.   You can use the special tag !BLANK! to remove an existing entry in this field.    See Permission Note below.

This field accepts a numeric value up to 13 positions to the left of the decimal and 2 positions to the right.

46

AT

Funded_Value

This field is used to store a funded value for the particular task.

You can use the special tag !BLANK! to remove an existing entry in this field.

This field accepts a numeric value up to 13 positions to the left of the decimal and 2 positions to the right.  Positive and negative values permitted.

47

AU

Limit_Bill_To_Funded

Valid values include Y or N (if not provided, N is the default for a new entry).  This field is used to determine if billed amounts for this task should be limited to the Task's Funded Value.  

When this field is set to Y, then the task must have a Funded_Value defined (either within this import file or previously existing in the database).

48

AV

Limit_Rev_To_Funded

Valid values include Y or N (if not provided, N is the default for a new entry).  This field is used to determine if revenue recognition amounts for this task should be limited to the Task's Funded Value.  

When this field is set to Y, then the task must have a Funded_Value defined (either within this import file or previously existing in the database).

49

AW

Owning_Organization

This value is used to identify the Owning Organization for a task (which may be different than the Project Organization and different than the Owning Organization specified at the project level).   

You can use the special tag !BLANK! to remove an existing entry in this field.

This value must match an existing Organization Code value defined in your system.  If the Organization you are trying to import does not already exist in the database, the entire record will be rejected.

Financial Organization Requirement
When using Unanet Financials (Use Financial Organizations (unanet.financials.use_financial_orgs) property enabled), this Org must be in the same Legal Entity as the Legal Entity for the Project level Owning org

 

Permission Note:  
When run by a non-administrative user, a users ability to import Labor & Expense Budget - Bill or Cost related values is only allowed if they have the required  Bill Budget Viewer or Manager and/or Cost Budget Viewer or Manager roles.  

Note: Check out the Unanet Data model for specific field data types, lengths, and other attributes.


Import File Format

The file to import must be saved in a comma delimited format.   The fields can be enclosed in double quotes -- which would be particularly necessary should the data being imported contain commas.

Importing a Sub-Set of Columns using a Field Header Record

If you are not using the default column layout sequence as defined above, you must include a header record (prefixed with an asterisk *), containing the column Header Names for those columns you are including in the import file (to indicated what data is contained in each column).  The specific Header Names for each column are listed in the table above.

Example:

*Organization_Code, Project_Code, Task_Name,Delete
org1,project1,task1,!DELETE!


Excel Template

You can create the comma delimited import file with any number of tools.  For those interested in using an Excel spreadsheet to create the file, you can download an Excel Template with predefined headers and required fields noted.  

See the Excel Tips regarding the use of double quotes and more.


Import Screen

The Import Task screen simply looks like:

Field Descriptions:

Field

Description

Type of Import

Select the appropriate import type from the list of available types of imports.

File to Import

Enter (or browse for) the file that you would like to import.

Output Options

Specify the level of detail included in the output.  

Task Predecessors

Indicate whether or not task dependency information should be removed when importing a file that contains dates that differ from the saved task dates.  This option is intended to prevent users from accidentally removing all of their dependency information.

Billing Type

This flag must be checked (it defaults to unchecked) if your intention is to allow for the update of the Billing Type indicator (in order to prevent the accidental removal of any existing Fixed Price items).

Note that when updating the Billing Type field, any existing Fixed Price items previously defined for that task will be deleted from the system.  Updating of a task level Billing Type is only allowed if the task has not participated in a Post process.  If it has, the update will be prevented.

 

The import process is triggered by pressing the Import button.  All Warnings and Error messages are written to the screen and can then be saved if desired.  While some line items may be found invalid and rejected, the remaining line items will be successfully imported and saved in the database.  The rejected line items will be written out to a file on the Unanet server as well as displayed at the bottom of the user feedback screen.  The rejected record file name will be UnanetTaskImportErrorxxx, where xxx is a randomly generated number.  The file will be placed in the Unanet temporary directory (which is defined by the Temp Directory (Fully Qualified Directory Name) (unanet.temp_directory) Unanet property).

Related Topics