Import Person Accruals

This feature allows for the importing of user accrual plan imformation.  Using this import, you can:

  1. Add a new accrual plan association for a user.  

  1. Update an existing accrual plan association to:

 

Roles

This screen is available to users having any of the following roles: Administrator and P&R Administrator

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

Username

ALWAYS REQUIRED. Unique username (user id), for example JDoe or jdoe (it does not need to be capitalized.)  This value must match an existing Username value in your system.  If the Username you are trying to import does not already exist in the database,  the entire record will be rejected.

2

B

Accrual_Plan

ALWAYS REQUIRED. This accrual plan identifies the plan to which this person will be associated.   If the Accrual Plan you are trying to import does not already exist in the database,  the entire record will be rejected.  

3

C

Accrual_Begin_Date

ALWAYS REQUIRED. This field identifies the begin date for this person's association to a particular accrual plan.  

If this is an update to an existing entry, then this value must match the value on the existing entry. When updating an existing person accrual entry, if one of the fields you are attempting to update is the Begin Date, you'll need to supply the following syntax in this field.

"!UPDATE!,old_begin_date,new_begin_date"  -- this entire string must be enclosed in double quotes (note that if you are working in Excel, Excel will provide the double quotes and thus you do not need to add them in manually).

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

Using BOT  (Beginning of Time)

If the existing assignment does not have a Begin Date (and you are attempting to update the assignment and supply one), you'll need to supply the value BOT in the  'old_begin_date' parameter, for example:
"!UPDATE!,BOT,new_begin_date"

If you are attempting to remove an existing Begin Date, effectively leaving the assignment unbounded, you can supply the Beginning of Time (BOT) tag, for example:

"!UPDATE!,2005-01-15,BOT"

Note that you cannot update the begin date if the existing value is less than the end date of the latest posted accrual period for this plan (e.g. this association has already been involved in a posting period and thus you can no longer move that date).  

4

D

Accrual_End_Date

This field identifies the end date for this person's association to a particular accrual plan.  If no date is supplied, then EOT (End of Time) is assumed (when adding a new record).

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

Note that you cannot update the end date to a  value that is less than the end date of the latest posted accrual period for this plan (e.g. any changing of end date will need to be greater than the end date of the latest posted accrual period for that plan).  

5

E

Project_Org_Code

REQUIRED on ADD.  This code uniquely identifies the Organization to which the project belongs.  If the Organization you are trying to import does not already exist in the database, the entire record will be rejected.  

This field will be ignored when updating an existing entry.

6

F

Project_Code

REQUIRED on ADD.  This project code identifies the project to which this person's will be charging time (for this accrued item).  The project code is unique within an Organization.   If the Project you are trying to import does not already exist in the database,  the entire record will be rejected.  

This field will be ignored when updating an existing entry.

7

G

Task_Name

CONDITIONALLY REQUIRED. This field is required if the Project you are associating this person with requires task level assignments.   Otherwise, this field is not allowed (e.g. if the project is managed at the project level -- import records will be rejected if this field is populated).  When used, this value must match an existing Task Name value in your system.  If the Task Name you are trying to import does not already exist in the database,  the entire record will be rejected.

This field will be ignored when updating an existing entry.

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.

8

H

Hours

Inserting New

When establishing a new association, you can optionally supply a beginning balance by indicating a number of hours to begin with.   

  • If both the Hours and Transfer Plan field are populated, the entire record will be rejected.

Updating Existing

If this field is populated on an update (that is, the association already exists), then this value will be treated as an accrual adjustment and a new accrual adjustment entry will be inserted into the system for this user.  

The imported adjustment will be applied to a specific accrual period as follows:

  • Use the latest posted accrual period – if the user’s accrual plan association begin date is less than the end date of the latest posted accrual period

  • Otherwise, use the period that contains the user’s accrual plan association begin date – if the user’s accrual plan association begin date is greater than the end date of the latest posted accrual period  (such that we do not end up with a user having an accrual adjustment appear prior to their having an accrual plan association)

 

This field accepts a numeric value up to 5 positions to the left of the decimal and 12 positions to the right.  This values can be positive or negative.

9

I

Transfer_Plan

When establishing a new association, you can optionally supply a beginning balance by transferring a balance from an existing person accrual plan association.  In this situation, you would supply the name of an existing Person Accrual Plan Association in this field.

If this field is populated, the Transfer Plan Begin Date must also be populated.  If both the Hours and Transfer Plan field are populated, the entire record will be rejected.

This field is not allowed on updates and if present, the entire record will be rejected.

10

J

Transfer_Plan_Begin_Date

When establishing a new association, you can optionally supply a beginning balance by transferring a balance from an existing person accrual plan association.  In this situation, you would supply the Begin Date of an existing Person Accrual Plan association in this field.

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

If this field is populated, the Transfer Plan must also be populated.

This field is not allowed on updates and if present, the entire record will be rejected.

11

K

Delete

 

This field can be used to trigger the system to delete a Person Accrual entry.  In order for the delete to happen, you must include the following text string !DELETE! in this field.  

Removing the person accrual plan entry, will not remove any corresponding Assignments that may have been created via a person accrual import.

 

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.


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 Person Accruals screen may look 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.  

 

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 UnanetPersonAccrualsImportErrorxxx, 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