1. Home
  2. Administration
  3. System Maintenance: Exporting and Importing Data Files

System Maintenance: Exporting and Importing Data Files

Introduction

In terms of Epicflow system management we have functionality which grants an ability to seamlessly Import/Upload (further Import will be used) and Export data files such as: Resource Pool, Attributes, Calendars, Competences, Availability of Resources and Project directly through User Interface. Additionally, for Export there is system logs option, which provides valuable insights into operations. Worth to say that such operation is critical in prospective of data consistency and further analysis, so only System Administrator and PO are allowed to assign corresponding permission for the role.

#Screen 1 System Maintenance: Competences- Export, Update, Upload

With this functionality, users gain the capability to seamlessly upload and update data directly from their desktops. For those seeking to automate this process, we encourage reaching out to Epicflow Support at support@epicflow.net.

Options overview

Maintenance Page

  • Attributes – An attribute is a feature of a project, its item, or resource that distinguishes it from others. More about attributes you can read in this article.
  • Availability – Availability is a data that show us the accessibility of resources.
  • Calendar – Each company that uses Epicflow has it’s own calendar, allowing them to specify holidays, weekends, and the number of working hours, which can vary depending on company policies and practices.
  • Competences – Competence for employees in the system refers to the specific skills, knowledge, and abilities that individuals possess to perform their job roles effectively. More about competences you can read in this article.
  • Resource Pool – A resource pool is a data file containing information about all available employees within an organization, including details such as their names, availability, skills, and other relevant attributes.
  • Logs – System logs are concise records generated by a computer system, capturing events, actions, and errors that occur during its operation. Due to the nature of these data, which are used for system analysis, only exporting is possible.

Pipeline Page

  • Project – In project management, a project refers to a endeavor undertaken to create a unique product, service, or result. Projects have defined objectives, constraints, and a timeframe within which they are executed.

Permissions configuration

Be aware that Import\Export functionality is critical in prospective of data consistency and further analysis, so its usage is limited only to those users to which corresponding permission is assigned by System Administrator or PO.

For relevant permissions adjustment “Administrator” role is required. Generic permissions description can be found in this article.

In case of Import\Export Data Files functionality you need to set “System Maintenance” permission from the “Global Permission” group.

Important to say that “System Maintenance” is also required for Projects Import\Upload via the Pipeline page.

#Screen 2 “System Maintenance” permission

Guidelines for Uploading Data: Understanding the Different Methods

Depending on the type of data you’re working with, there are two methods for uploading it into our system. Below, we outline the different categories of data and the corresponding upload methods:

  1. Resource Pool, Attributes, Availability, Calendars, Competences:
  2. Project Data:

This image has an empty alt attribute; its file name is image-2-1024x536.png

#Screen 3 System Maintenance: Resource Pool, Calendar, Competences, Attributes, Availability, Logs

#Screen 4 System Maintenance: Project

Templates

To successfully import data, it’s crucial to ensure that files are prepared correctly. To assist you in this process, we have a set of templates that you can download and utilize as examples.

Please visit Downloads Website to download template files from the corresponding subsection labeled as ‘System Maintenance – Import\Export’.

If you have already data in the system it’s also good approach to export data, edit and upload it again

CSV File Structure Overview

This section outlines the key requirements and formats for CSV files used within the Epicflow system, ensuring users can manage their data with precision and efficiency. Understanding and implementing the correct CSV file structure is crucial for various system operations, including importing, exporting, updating, and deleting data.

– Competences

This CSV file provides a way to specify competences and their structure.

Download Competences Template

  • Example #1: Create Competences in the system

1. Below, you can see the table representing competence headers and values.

RecordTypeIdNameParentId
CAnalytical thinking
#Table 1 Create Competences Example 1

The 1st row – contains column names.

The 2nd row – contains record name: C that stand for competence and competence’s name which is Analytical Thinking.

2. In CSV File this example looks like this:

C;;Analytical thinking;

3. After upload in Epicflow this example looks like this:

#Screen 5 Competences in Epicflow

Minimum Required Fields to Upload Competences

RecordType: C, Name

Upload:

Read here how to upload competences to the system.

Export:

Read here how to export competences from the system.

Update:

To update competences, you must first obtain their unique IDs. This requires exporting the competences file to access this information. Once you have retrieved the IDs, you can proceed with updating the competences by modifying the desired fields, excluding the ID. Once your file is prepared you can update competences by uploading the file to the system.

  • Example #2: Update Competences in the system.

1. You have exported file that looks like this:

C;;Analytical thinking;

RecordTypeIdNameParentId
C1Analytical thinking
#Table 2 Exported Competences File Example 1

The 1st row – contains column names.

The 2nd row – contains record name: C that stand for competence and competence’s name which is Analytical Thinking.

2. To update Competence in the system your file needs to look like this:

C;1;New_name_for_Analytical_thinking;

RecordTypeIdNameParentId
C1New_name_for_Analythical_thinking
#Table 3 Update Exported Competences File Example 1

The 1st row – contains column names.

The 2nd row – contains record name: C that stand for competence, competence’s Id and updated competence’s name which is New_name_for_Analythical_thinking.

Add:

Previously, you saw an example of uploading new competences to the system when none were present. Now, we’ll demonstrate the correct procedure for adding additional competences to existing ones. This procedure is very similar to the update procedure. You need to export Competences file from the system, then edit this file by adding a new competence without specified ID.

  • Example #3: Add additional competences to existing ones in the system.

1. You have exported file that looks like this:

C;;Analytical thinking;

RecordTypeIdNameParentId
C1Analytical thinking
#Table 4 Exported Competences Example 2

The 1st row – contains column names.

The 2nd row – contains record name: C that stand for competence and competence’s name which is Analytical Thinking.

2. To add new Competence to the system your file needs to looks like this:

C;1;Analytical thinking;

C;;New_Competence;

RecordTypeIdNameParentId
C1Analytical thinking
CNew_Competence
#Table 5 Add Competence to exported Competences file Example 2

The 1st row – contains column names.

The 2nd row – contains record name: C that stand for competence and competence’s name which is Analytical Thinking.

The 3rd row – defining new competence named ‘”‘New_Competence’ that will be added to the system.

Delete:

To delete all competences from the system, you can upload a file containing only column names with empty values. This action will remove all competences from the system.

  • You can remove all competences via uploading this file.
  • Upload file to the system via Maintenance page as described in header: Import Resource Pool, Calendar, Attributes and Competences
Note

Please note: If you remove competence values in this manner, they will also be removed from all items such as resources, tasks, and projects.

Competences Structure: Nesting

It’s possible to build a nested structure for competences by first creating a Competences Group, where later we will nest its values.

To refer to the created Competences_Group, you should specify an unique Id. You do this to inform the system about the new record and references to it. Please note that the system will assign its own ID values, so they won’t be the same when you export competences from the system. You can read more about the requirements regarding the CSV file here.

  • Example #4: Build a nested structure for competences.

1. Below you can see the table that represents competences headers and values in nested structure.

RecordTypeIdNameParentId
G1Competences_Group
CCompetence_11
#Table 6 Create Competences Example 2

The 1st row – contains column names.

The 2nd row – contains the Record Type: ‘G’, which stands for a Competences Group named Competences_Group with an ID of 1, which we will later use as a reference to this group.

The 3rd row – contains record Type C that stands for a Competence named Competence_1 with ParentId 1. That means that this competence belongs to group Competences_Group.

2. CSV File this example looks like this:

G;1;Competences;

C;;Competence_1;1

3. After upload in Epicflow this example looks like this:

#Screen 6 Competences nested in Group in Epicflow

Competences CSV file contains next columns:

  • RecordType – Indicates the type of record, in this case, “C” stands for competence record and “G” stands for competences Group.
  • Id – Represents the unique identifier for the competence or competences group.
  • Name – The name of the competence or group.
  • ParentId – Specifies the identifier of the parent competence(competences group).

More Examples

  • Example #5: Build an advanced nested structure for competences.

1. Here you can learn how to build a more advanced nested structure for competences with usage of an ID with an unique ID, such as ‘1’, to refer to the IDs while nesting competences within the groups. You can read more about the requirements regarding the CSV file here.

RecordTypeIdNameParentId
G1Competences_Group1
G2Competences_Group2
CCompetence_11
CCompetence_22
#Table 7 Create Competences Example 3

The 1st row – contains column names.

The 2nd row – contains the Record Type: ‘G’, which stands for a Competences Group named Competences_Group1 with an ID of 1, which we will later use as a reference to this group.

The 3rd row – contains the Record Type: ‘G’, which stands for a Competences Group named Competences_Group2 with an ID of 2, which we will later use as a reference to this group.

The 4th row – contains record Type C that stands for a Competence named Competence_1 with ParentId 1. That means that this competence belongs to group Competences_Group1.

The 5th row – contains record Type C that stands for a Competence named Competence_2 with ParentId 2. That means that this competence belongs to group Competences_Group2.

2. In CSV File this example looks like this:

G;1;Competences_Group1;

G;2;Competences_Group2;

C;;Competence_1;1

C;;Competence_2;2

3. After upload in Epicflow this example looks like this:

#Screen 7 Competences nested in Groups in Epicflow

– Attributes

This CSV file provides a way to specify attributes and their structure.

Download Attributes Template

  • Example #1: Create attributes in the system

1. From this example, you can learn how to create a basic csv attributes file to create attributes in the system.

RecordTypeNameShortNameTypeIdTypeKindValueIdValueParentIdValueCode1ValueCode2AttributeExtraIdAttributeScopeAttributeVisibilityAttributeIsSingleAttributeValueOrderAttributeNameIsHiddenAttributeRepresentationAttributeDetailedRepresentation
ALocation1
TLocation1List
VGermany1
#Table 8 Create Attributes Example 1

The 1st row – contains column names.

The 2nd row – contains information about record Type: A that stand for attribute. Attribute Name that is Location and 1 TypeId that will let us refer to this attribute in next rows to associate them with this attribute.

The 3rd row – This record contains information about Type: T, which stands for Type and specifies whether it is a hierarchy or a list in the TypeKind column. Additionally, the Name field mirrors the attribute name associated with this record through the utilization of the same TypeId.

The 4th row – This record contains Record Type: V, representing a Value named “Germany.” It specifies values for the Attribute Location, as indicated in the TypeId column, which references the Attribute Location Id.

2. In CSV Format this example looks like this:

A;Location;;1;;;;;;;;;;;;;

T;Location;;1;List;;;;;;;;;;;;

V;Germany;;1;;;;;;;;;;;;;

3. In Epicflow this example looks like this:

#Screen 8 Attributes in Epicflow

Minimum Required Fields to Upload Attributes File

RecordType: T, Name, TypeId, TypeKind: Hierarchy/List

RecordType: V, Name, TypeId

Upload:

Read here how to upload attributes to the system.

Export:

Read here how to export attributes from the system.

Update:

To update attributes, you must first obtain their unique IDs. This requires exporting the attributes file to access this information. Once you have retrieved the IDs, you can proceed with updating the attributes by modifying the desired fields, excluding the ID. Once your file is prepared you can proceed with importing attributes to the system.

  • Example #2: Update Attribute in the System

1. You have exported file that looks like this:

A;Location;;1;;;;;;;;;;;;;

T;Location;;1;List;;;;;;;;;;;;

V;Germany;;1;;7;;;;;;;;;;;

RecordTypeNameShortNameTypeIdTypeKindValueIdValueParentIdValueCode1ValueCode2AttributeExtraIdAttributeScopeAttributeVisibilityAttributeIsSingleAttributeValueOrderAttributeNameIsHiddenAttributeRepresentationAttributeDetailedRepresentation
ALocation1
TLocation1List
VGermany12
#Table 9 Attributes Exported file Example 1

The 1st row – contains column names.

The 2nd row – contains information about record Type: A that stand for attribute. Attribute Name that is Location and its ID: 1

The 3rd row – This record contains information about attribute type which is List.

The 4th row contains Record Type: V, representing a value named ‘Germany.’ This value belongs to the attribute Location, as indicated by the TypeId that refers to the mentioned attribute. Furthermore, we see ValueId, which is 2. This ID is necessary to proceed with any updates to this value

2. To update the Attributes in the system your file needs to look like this

A;Location;;1;;;;;;;;;;;;;

T;Location;;1;List;;;;;;;;;;;;

V;New_Name_for_Germany;;1;;2;;;;;;;;;;;

RecordTypeNameShortNameTypeIdTypeKindValueIdValueParentIdValueCode1ValueCode2AttributeExtraIdAttributeScopeAttributeVisibilityAttributeIsSingleAttributeValueOrderAttributeNameIsHiddenAttributeRepresentationAttributeDetailedRepresentation
ALocation1
TLocation1List
VNew_Name_for_Germany12
#Table 10 Update Attributes Exported file Example 1

The 1st row – contains column names.

The 2nd row – contains information about record Type: A that stand for attribute. Attribute Name that is Location and its ID: 1

The 3rd row – This record contains information about attribute type which is List.

The 4th row – contains a record with Record Type: V, representing a value previously named ‘Germany,’ but now we can see that its name is being updated to ‘New_Name_For_Germany’.

Add:

Previously, you saw an example of uploading new attributes to the system when none were present. Now, we’ll demonstrate the correct procedure for adding additional attributes to existing ones. This procedure is very similar to the update procedure.

  • Example #3: Add additional attributes to the existing ones in the system

1. You have exported file that looks like this:

A;Location;;1;;;;;;;;;;;;;

T;Location;;1;List;;;;;;;;;;;;

V;Germany;;1;;2;;;;;;;;;;;

RecordTypeNameShortNameTypeIdTypeKindValueIdValueParentIdValueCode1ValueCode2AttributeExtraIdAttributeScopeAttributeVisibilityAttributeIsSingleAttributeValueOrderAttributeNameIsHiddenAttributeRepresentationAttributeDetailedRepresentation
ALocation1
TLocation1List
VGermany12
Table 11 Attributes Exported file Example 2

The 1st row – contains column names.

The 2nd row – contains information about record Type: A that stand for attribute. Attribute Name that is Location and its ID: 1

The 3rd row – This record contains information about attribute type which is List.

The 4th row contains Record Type: V, representing a value named ‘Germany.’ This value belongs to the attribute Location, as indicated by the TypeId that refers to the mentioned attribute. Furthermore, we see ValueId, which is 2. This ID is necessary to proceed with any updates to this value

2. To Add new Attribute your file needs to look like this:

A;Location;;1;;;;;;;;;;;;;

T;Location;;1;List;;;;;;;;;;;;

V;Germany;;1;;2;;;;;;;;;;;

V;Netherlands;;1;;;;;;;;;;;;;

RecordTypeNameShortNameTypeIdTypeKindValueIdValueParentIdValueCode1ValueCode2AttributeExtraIdAttributeScopeAttributeVisibilityAttributeIsSingleAttributeValueOrderAttributeNameIsHiddenAttributeRepresentationAttributeDetailedRepresentation
ALocation1
TLocation1List
VGermany12
VNetherlands1
Table 12 Add New attributes to Exported file Example 2

The 1st row – contains column names.

The 2nd row – contains information about record Type: A that stand for attribute. Attribute Name that is Location and its ID: 1

The 3rd row – This record contains information about attribute type which is List.

The 4th row contains a new record with Record Type: V, representing a value previously named ‘Netherlands.’ The TypeID is 1, which means that this value belongs to the attribute Location.

Delete:

You can remove attributes values by uploading file containing only columns names. It’s not possible to remove attributes types by uploading CSV File.

Note

Please note: If you remove attribute values by uploading an empty CSV Attribute File, attributes will also be removed from all items, including resources, projects, summaries, tasks, and projects.

Attributes Structure: Nesting

Attributes, as opposed to competences, always have a nested structure. It is not possible to send only the attribute value; its type must always be specified: hierarchy or list. The distinction between hierarchy and list lies in the fact that a hierarchy can be developed, meaning values can be nested within other values, while a list is like a Category Group for Attributes, exactly the same as the Category Group for Competences.

To refer to the created Attributes and its Values, you should specify an unique ID. You do this to inform the system about the new record and references to it. Please note that the system will assign its own ID values, so they won’t be the same when you export attributes from the system. You can read more about the requirements regarding the CSV file here.

To specify the parent value for an attribute, we should provide a unique ID for the parent value in the ValueId column. Subsequently, for the child attribute, we should specify this ID in the ValueParentId column.

  • Example #4: Build Nested Structure for Attributes.

1. Below, you can see a table representing attributes with a Hierarchy type that allows nesting values within values.

RecordTypeNameShortNameTypeIdTypeKindValueIdValueParentIdValueCode1ValueCode2AttributeExtraIdAttributeScopeAttributeVisibilityAttributeIsSingleAttributeValueOrderAttributeNameIsHiddenAttributeRepresentationAttributeDetailedRepresentation
ATechnology1
TTechnology1Hierarchy
VHardware12
VKeyboard12
Table 13 Create Attributes Example 2

The 1st row contains column names.

The 2nd row contains information about record Type: A that stand for attribute. Attribute Name that is Technology and 1 TypeId that will let us refer to this attribute in next rows to associate them with this attribute.

The 3rd row This record contains information about Type: T, which stands for Type and specifies whether it is a hierarchy or a list in the TypeKind column. Additionally, the Name field mirrors the attribute name, and this record is associated with the Attribute through the utilization of the same TypeId.

The 4th row of this record contains Record Type: V, representing a Value named ‘Hardware.’ It specifies values for the Attribute Technology, as indicated in the TypeId column, which references the Attribute Technology Id. Additionally, we can specify a ValueId, which we’ll later use to nest another value within the Hardware Value.

The 5th row This record contains Record Type: V, representing a Value named “Keyboard.” It specifies values for the Attribute Technology, as indicated in the TypeId column, which references the Attribute Technology Id. Additionally, we observe that this record has a Value Parent Id 2, indicating that it is nested under the value Hardware.

2. In CSV Format this example looks like this

A;Technology;;1;;;;;;;;;;;;;

T;Technology;;1;Hierarchy;;;;;;;;;;;;

V;Hardware;;1;;2;;;;;;;;;;;

V;Keyboard;;1;;;2;;;;;;;;;;

3. In Epicflow this example looks like this

#Screen 9 Attributes: Value nested in Value in Epicflow

Attributes CSV file contains next columns:

  • RecordType – Specifies the type of record (A for Attribute, T for Type: Hierarchy, List, V for Value).

Hierarchy is used when you want to have a nested structure.

  • Name – Name of the attribute.
  • ShortName – Short name or abbreviation for the attribute.
  • TypeId – Identifier for the type of attribute.
  • TypeKind – Kind of attribute type.
  • ValueId – Identifier for the attribute value.
  • ValueParentId – Identifier for the parent attribute value.
  • ValueCode1 – First code associated with the attribute value.
  • ValueCode2 – Second code associated with the attribute value.
  • AttributeExtraId – Extra identifier for the attribute.
  • AttributeScope – Scope of the attribute.
  • AttributeVisibility – Visibility of the attribute.
  • AttributeIsSingle – Indicates if the attribute is single.
  • AttributeValueOrder – Order of attribute values.
  • AttributeNameIsHidden – Indicates if the attribute name is hidden.
  • AttributeRepresentation – Representation of the attribute.
  • AttributeDetailedRepresentation – Detailed representation of the attribute.

More Examples:

  • Example #5: Create Attributes in the system: filling additional fields.

1. Below, you can see a table representing attributes as a List with specified Scope and Visibility.

RecordTypeNameShortNameTypeIdTypeKindValueIdValueParentIdValueCode1ValueCode2AttributeExtraIdAttributeScopeAttributeVisibilityAttributeIsSingleAttributeValueOrderAttributeNameIsHiddenAttributeRepresentationAttributeDetailedRepresentation
ALanguage1User, Group, Step, Project, ProjectGroupPublic
TLanguage1List
VEnglish1
Table 14 Create Attributes Example 3

The 1st row contains column names.

The 2nd row contains information about record Type: A that stand for attribute. Attribute Name that is Language and *1 TypeId that will let us refer to this attribute in next rows to associate them with this attribute.

The 3rd row This record contains information about Type: T, which stands for Type and specifies Type Kind that is list in this example. Additionally, the Name field mirrors the attribute name, and this record is associated with the Attribute through the utilization of the same TypeId.

The 4th row – This record contains Record Type: V, representing a Value named “English.” It specifies values for the Attribute Language, as indicated in the TypeId column, which references the Attribute Language Id.

2. In CSV Format this example looks like this

A;Technology;;1;;;;;;;User, Group, Step, Project, ProjectGroup;Public;;;;;

T;Technology;;1;List;;;;;;;;;;;;

V;English;;1;;;;;;;;;;;;;

– Calendar

This CSV file provides a way to specify different average hours for different days of the week or for specific date ranges.

Download Calendar Template

Note

In the calendar CSV File, we have an exception where column names appear twice. The first row is unusual because column names can be replaced with values.


Note

The ID column should always be empty when adding a new calendar and filled with the correct calendar ID during an update of the calendar.


Note

During the addition of a new calendar: the Calendar Name, SfsId, and PpmId must be unique. This means that other calendars existing in the system can’t have the same values. Therefore, in case you don’t use SAP or SuccessFactors, we recommend using the CalendarName as the id for sfsId and ppmId.

  • Example #1: Creating Calendar CSV File.

1. Below, you can see a table representing calendar headers and values.

Calendar1sfsIdCalendar1ppmIdCalendar1
AvgHoursDayOfWeek(optional)StartDate(optional)EndDate(optional)
8
0Sunday
425-12-202326-12-2023
Table 15 Calendar Example 1

The first row contains column names that we have replaced with values. The first column is for CalendarId, which remains empty during the addition of new calendars. The second column is for Calendar Name, and the name of the calendar is ‘Calendar1’. The third column is for SuccessFactorsID, where you can observe that we keep the column name and immediately specify sfsId as ‘Calendar1’. The fourth column is for ppmId, with its value being ‘Calendar1’, just as in the third column – we keep column name and right after this we specify its Id.

The 2nd row contains column names.

The 3rd row specifies the Average Hours for all days in the system for 8 hours per day.

The 4th row specifies 0 Average Hours for Sundays.

The 5th row specifies 4 hours as Average Hours in the date range 25-12-2023 to 26-12-2023

2. In CSV Format this example looks like this

;Calendar1;sfsIdCalendar1;ppmIdCalendar1

8;;;

0;Sunday;;

4;;25-12-2023;26-12-2023

Minimum Required Fields to Upload Calendar

CalendarName, AvgHours

Upload:

Read here how to upload Calendar CSV file to the system.

Export:

Read here how to export Calendar from the system.

Update:

To update the calendar, you must first obtain its ID. It’s necessary to export the calendar file to access this information. Once you have retrieved the calendar’s id, you can proceed with updating the calendar records by modifying the desired fields, excluding the calendar name.

  • Example #2: Updating the Calendar.

In the example below, you can see the correct procedure for updating calendars in the system.

1. You have exported file that looks like this:

1;My Calendar;sfsId;ppmId
AvgHours;DayOfWeek(optional);StartDate(optional);EndDate(optional)
8;;;
0;;25-12-2023;
26-12-2023

1MyCalendarsfsIdppmId
AvgHoursDayOfWeek(optional)StartDate(optional)EndDate(optional)
8
Table 16 Calendar Update

The 1st row contains either column names or values. In this example we can Calendar ID specified as value ‘1’ and CalendarName specified as ‘My Calendar’

The 2nd row contains column names.

The 3rd row specifies the Average Hours for all days in the system for 8 hours per day.

2. To update the calendar, keep the calendar ID, sfsId and ppmId as they are and edit the desired fields such as average hours values, calendar name and dates.

In below example you can update of Calendar Name.

1;NewName;sfsId;ppmId
AvgHours;DayOfWeek(optional);StartDate(optional);EndDate(optional)
8;;;
0;;25-12-2023;
26-12-2023

1NewNamesfsIdppmId
AvgHoursDayOfWeek(optional)StartDate(optional)EndDate(optional)
426-12-2023
Table 17 Calendar Update Example

The 1st row contains value calendar ID which is ‘1’ and updated Calendar Name which is ‘NewName’

The 2nd row contains column names.

The 3rd row specifies the Average Hours for all days in the system for 4 hours per day.

Add:

To add a new calendar to the system, you need to upload it without specifying the calendar’s ID. To add a new calendar to the system, you need to upload it without specifying the calendar’s ID. Additionally, you have to specify a unique calendar name, sfsId, and ppmId. These values must differ from those already present in the system.

  • Example #3: Adding new Calendar to the system.

;NewCalendar;sfsIdNewCalendar;ppmIdNewCalendar
AvgHours;DayOfWeek(optional);StartDate(optional);EndDate(optional)
4;;;

NewCalendarsfsIdNewCalendarppmIdNewCalendar
AvgHoursDayOfWeek(optional)StartDate(optional)EndDate(optional)
4
Table 18 Calendar Update Example

The 1st row doesn’t contain the Calendar ID, which is desirable behavior when adding new calendars. Additionally, we can see the name of the calendar, which is specified for ‘NewCalendar’. Furthermore we can see specified Ids for sfsId which is ‘NewCalendar’ and ppmId which is ‘NewCalendar’

The 2nd row contains column names.

The 3rd row specifies the Average Hours for all days in the system for 4 hours per day.

Delete:

It’s not possible to delete the calendar from the system by uploading a CSV file or manually. To do so, you need to contact Epicflow Support by sending an email to support@epicflow.net

Calendar CSV file contains next columns:

  • Calendar’s ID – The Calendar’s ID is a unique identifier assigned to each calendar within a system. This ID distinguishes one calendar from another.
  • Calendar Name – The Calendar Name is a textual label or identifier given to a calendar within a system. Like the Calendar’s ID, it serves as a unique identifier for different calendars. While the Calendar’s ID is a numerical code used for internal referencing, the Calendar Name provides a human-readable description of the calendar.
  • sfsd – SuccessFactorsID, refers to a unique identifier associated with objects or entities within the SuccessFactors Human Capital Management (HCM) suite. It’s needed if you use this system.
  • ppmId -ppmId refers to a unique identifier associated with objects or entities within the SAP system.
  • AvgHours – This column represents the average hours for users.
  • DayOfWeek(optional) – This column, marked as optional, likely denotes the day of the week for which the average hours are specified. If this field is left empty, it means the average hours apply for all days.
  • StartDate(optional) – This optional column specifies the start date for which the average hours apply.
  • EndDate(optional) – This optional column specifies the end date for which the average hours apply.

– Availability

This CSV file provides a way to specify availability for resources.

Download Availability Template

Note

“Please note: To upload a CSV file containing availability data, you must have resources created within the system. Additionally, the past date threshold can be specified for a maximum of 60 days.

  • Example #1: Add Availability

1. Below, you can see the table representing availability headers and values.

NameStart DateEnd DateAvailability
Anne U19-08-202421-08-20244
Table 19 Add Availability Example 1

The 1st row contains column names.

The 2nd row specifies ‘Anne U’ as the named resource. The date range is from 19.08.2024, to 21.08.2024 with the user available for 4 hours.

2. In CSV Format this example looks like this

Name;Start Date;End Date;Availability
Anne U;19-08-2024;21-05-2020;4

3. in Epicflow this example looks like this:

#Screen 10 Resource Card: Availability

Minimum Required Fields to Upload Availability File

All fields are required.

Upload:

Read here how to upload an Availability file to the system.

Export:

Read here how to export Availability file from the system.

Update:

To update a user’s availability, you have two options: either export the existing availability from the system and make updates, or prepare a new file. Keep in mind that the past date threshold can be specified for a maximum of 60 days, so all availability date ranges before this date must be removed from the exported file.

  • Example #2: Updating the Resource Availability.

In the example below, you can see the correct procedure for updating resource’s availability in the system.

1. You have exported file that looks like this:

Name;Start Date;End Date;Availability
Anne U;19-05-2020;20-05-2020;8
Anne U;21-05-2020;26-05-2020;4
Anne U;27-05-2020;;8

NameStart DateEnd DateAvailability
Anne U19-05-202420-05-20248
Anne U21-05-202426-05-20244
Anne U27-05-20248
Table 20 Availability Update

The 1st row contains column names.

The 2nd row contains Resource Name that is Anne U and availability specified for 8 hours in date range from 19-05-2024 until 20-05-2024.

The 3rd row contains Resource Name that is Anne U and availability specified for 4 hours in date range from 21-05-2024 until 26-05-2024.

The 4rd row contains Resource Name that is Anne U and availability specified for 8 hours starting from day 27-05-2024.

2. To update the availability of the resource, keep its name and change the desired data.

In below example you can see how to update average working hours specified in above date ranges.

Name;Start Date;End Date;Availability
Anne U;19-05-2024;20-05-2024;2
Anne U;21-05-2024;26-05-2024;4
Anne U;27-05-2024;;1

NameStart DateEnd DateAvailability
Anne U19-05-202420-05-20242
Anne U21-05-202426-05-20244
Anne U27-05-20241
Table 21 Availability Update Example

The 1st row contains column names.

The 2nd row contains Resource Name that is Anne U and availability specified for 8 hours in date range from 19-05-2024 until 20-05-2024.

The 3rd row contains Resource Name that is Anne U and availability specified for 4 hours in date range from 21-05-2024 until 26-05-2024.

The 4rd row contains Resource Name that is Anne U and availability specified for 1 hour starting from day 27-05-2024.

Add:

To add availability for the user, you’ll need to prepare a file containing the user’s name and specified dates and hours that you would like to add. Keep in mind that if you intend to add different date ranges for one user, you’ll need to add 2 rows or even more, depending on how many ranges you want to include.

  • Example #3: Adding the Resource Availability.

In the example below, you can see the correct procedure for adding resource’s availability in the system.

1. You have exported file that looks like this:

Name;Start Date;End Date;Availability
Anne U;19-05-2020;20-05-2020;8

NameStart DateEnd DateAvailability
Anne U19-05-202420-05-20248
Table 22 Availability Update

The 1st row contains column names.

The 2nd row contains Resource Name that is Anne U and availability specified for 8 hours in date range from 19-05-2024 until 20-05-2024.

2. To add the availability, add new line with resource name that in this case is used as id.

In below example you can see how to add new line with availability.

Name;Start Date;End Date;Availability
Anne U;19-05-2024;20-05-2024;8
Anne U;21-05-2024;26-05-2024;4

NameStart DateEnd DateAvailability
Anne U19-05-202420-05-20248
Anne U21-05-202426-05-20244
Table 23 Availability Update Example

The 1st row contains column names.

The 2nd row contains Resource Name that is Anne U and availability specified for 8 hours in date range from 19-05-2024 until 20-05-2024.

The 3rd row contains Resource Name that is Anne U and availability specified for 4 hours in date range from 21-05-2024 until 26-05-2024.

Availability CSV file contains next columns:

Name – Refers to the resource name.

Start Date – Indicates the beginning date of the date range for which you want to specify working hours.

End Date – Represents the end date of the date range for which you want to specify working hours.

Availability – Refers to the working hours you wish to specify within the specified date range.

– Resource Pool

This template contains a structured format for importing resource data into a resource management system.

Note

Please note: If you intend to upload a Resource Pool File that includes roles, attributes and competences, it is necessary to first upload the roles, attributes and competences to the system.

  • Example #1: Creating a Resource Pool CSV FIle: including Multigroup.

1. Below you can see a table that represents Resource Pool headers and values such as Multigroup, Group and Resource.

ResIDResNameTypeParentIsMultiColorRiskFactorBookingIdGroupTypeEmailGroupsRolesCompetencesInitialsTagsAttributesUserTypeRateCalendarAvailabilityStartDateEndDateExternalID2MaterialNameMaterialShortNameMaterialCostMaterialRateTeamsTeamLeadAvailabilityPerUnit
MarketingGTrue
ResearchGMarketing
Amelia TRResearchUser
Table 24 Create Resources Example 1

The 1st row contains column names.

The 2nd row specifies Group named ‘Marketing’ that is Multi Group.

The 3rd row specifies group named ‘Research’ that isn’t Multi Group; however it belongs to the Multi Group specified in the 2nd row.

The 4th row Specifies a Resource Named Amelia T, with a ‘User’ Role and assigned to the Group ‘Research’.

2. In CSV Format this example looks like this

;Marketing;G;;;True;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;Research;G;;;Marketing;;;;;;;;;;;;;;;;;;;;;;;;;;
;Amelia T;R;;;;;;;;;;;;;;Research;User;;;;;;;;;;;;;;;;

Minimum Required Fields to upload Resource via Resource Pool:

ResName, Type: R, Groups

Minimum Required Fields to upload Group via Resource Pool:

GroupName, Type: G

Upload:

Read here how to upload Resource Pool to the system.

Export:

Read here how to export Resource Pool from the system.

Update:

To update Resources, you must first obtain their unique IDs. This requires exporting the Resource Pool file to access this information. Once you have retrieved the IDs, you can proceed with updating the resources by modifying the desired fields, preserving received IDs.

  • Example #2: Updating Resource Pool

1. You have exported file that looks like this:

1;Research;G;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2;Amelia T;R;;;;;;;;;;;;;;Research;User;;;;;;;;;;;;;;;;

ResIDResNameTypeParentIsMultiColorRiskFactorBookingIdGroupTypeEmailGroupsRolesCompetencesInitialsTagsAttributesUserTypeRateCalendarAvailabilityStartDateEndDateExternalID2MaterialNameMaterialShortNameMaterialCostMaterialRateTeamsTeamLeadAvailabilityPerUnit
1ResearchG
2Amelia TRResearchUser
Table 25 Exported Resource Pool File Example 1

The 1st row contains column names.

The 2nd row specifies a Group named ‘Research’ with ID 1. This ID is necessary to proceed with updates of this resource

The 3rd row specifies a Resource named ‘Amelia T’ with ID 2. This ID is necessary to proceed with updates of this resource.

2. To update the Resource Pool your file needs to look like this

1;Research;G;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2;NewUserName;R;;;;;;;;;;;;;;Research;User;;;;;;;;;;;;;;;;

ResIDResNameTypeParentIsMultiColorRiskFactorBookingIdGroupTypeEmailGroupsRolesCompetencesInitialsTagsAttributesUserTypeRateCalendarAvailabilityStartDateEndDateExternalID2MaterialNameMaterialShortNameMaterialCostMaterialRateTeamsTeamLeadAvailabilityPerUnit
1ResearchG
2NewUserNameRResearchUser
Table 26 Update Resource Pool Exported File Example 1

The 1st row contains column names.

The 2nd row specifies a Group named ‘Research’ with ID 1. Everything remains the same, which means this record is not updated.

The 3rd row changes the previous Resource name ‘Amelia T’ to ‘NewUserName’. This change is possible with the record ID, which is 2.

Add:

Previously, you saw an example of uploading new resources to the system when none were present. Now, we’ll demonstrate the correct procedure for adding additional resources to existing ones. This procedure is very similar to the update procedure. You need to export the resource pool from the system, then add a new resource with a specified unique ID.

  • Example #3 Adding New Resources to the Resource Pool

1. You have exported file that looks like this:

1;Research;G;;;;;;;;;;;;;;;;;;;;;;;;;;;;

ResIDResNameTypeParentIsMultiColorRiskFactorBookingIdGroupTypeEmailGroupsRolesCompetencesInitialsTagsAttributesUserTypeRateCalendarAvailabilityStartDateEndDateExternalID2MaterialNameMaterialShortNameMaterialCostMaterialRateTeamsTeamLeadAvailabilityPerUnit
1ResearchG
Table 27 Exported Resource Pool File Example 2

The 1st row contains column names.

The 2nd row specifies a Group named ‘Research’ with ID 1.

2. To add the Resource your file needs to look like this:

1;Research;G;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;New_Group;G;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;New_User;R;;;New_Group;;;;;;;;;;;;;;;;;;;;;;;;;

ResIDResNameTypeParentIsMultiColorRiskFactorBookingIdGroupTypeEmailGroupsRolesCompetencesInitialsTagsAttributesUserTypeRateCalendarAvailabilityStartDateEndDateExternalID2MaterialNameMaterialShortNameMaterialCostMaterialRateTeamsTeamLeadAvailabilityPerUnit
1ResearchG
New_GroupG
New_UserRNew_Group
Table 28 Add New Resources to Exported Resource Pool File Example 2

The 1st row contains column names.

The 2nd row specifies a Group named ‘Research’ with ID 1. It remains the same as in the exported file.

The 3rd row specifies a new group named ‘New_Group’.

The 4th row specifies a new resource named ‘New_User’ that belongs to ‘New_Group’.

Delete:

To remove resources from the system, you must first obtain their unique IDs by exporting the Resource Pool file. Once you have retrieved the IDs, you can proceed to remove the resources by specifying “-” before their IDs.

Competenies Levels in Resource Pool:

It’s possible to specify competences levels in Resource Pool.

Note

Please note: It’s necessary to upload or create competences in the Epicflow system.

  • Example #4: Defining Competencies Levels in Resource Pool
  1. Below, you can see a table representing resource pool headers with defined resources and their competences, including competences levels.
ResIDResNameTypeParentIsMultiColorRiskFactorBookingIdGroupTypeEmailGroupsRolesCompetencesInitialsTagsAttributesUserTypeRateCalendarAvailabilityStartDateEndDateExternalID2MaterialNameMaterialShortNameMaterialCostMaterialRateTeamsTeamLeadAvailabilityPerUnit
ResearchG
Tomas ZRResearchUserGraphic DesignCalendarName
Amber URResearchProjectManagerGraphic Design[4], Analytical thinking[1..5]CalendarName
Table 29 Competences Levels in Resource Pool

The 1st row contains column names.

The 2nd row specifies a Group named ‘Research’

The 3rd row specifies a resource named ‘Tomas Z’ that belongs to group research. User’s role is User, and Competences: Graphic Design. In this example in system will see competences levels as from 1-5 (see picture below.)

The 4th row specifies a resource named ‘Amber U’ that belongs to group research. User’s roles is ProjectManager and competences: Graphic Design[1], Analytical thinking[1..4]

2. In CSV File this example will look like this:

;Research;G;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;Tomas Z;R;;;Research;;;;;;User;Graphic ;Design;;CalendarName;;;;;;;;;;;;;;;;;;;;;;
;Amber U;R;;;Research;;;;;;ProjectManager;Graphic Design[4]; ;Analytical thinking[1..5];;CalendarName;;;;;;;;;;;;;;;;;;;;;;

3. In Epicflow File this example will look like this:

#Screen 11 Competences Tomas Z

#Screen 12 Competences Amber U

Resource Pool CSV file contains next columns:

  • ResID – This field represents the unique identifier for each resource. It’s a numeric value used to distinguish one resource from another within the system. During removing resources you need to specify “-” before Resource ID.
  • ResName – This field contains the name or title of the resource. It provides a human-readable identifier for the resource.
  • Type – Indicates the type of the resource. For example, it might specify whether the resource is a person or a group or any other relevant type.
  • ExternalID2 – Used for mapping a user to an external system. In the resource card, this value is displayed as the Internal ID.
  • Parent – This field establishes a hierarchical relationship between resources. It indicates the parent resource for each entry, helping to organize resources into groups or subgroups.
  • IsMulti – This field likely indicates whether the resource is multigroup.
  • Color – Defines color of the group. Specify # before defining color
  • RiskFactor – Indicates the risk factor associated with the resource.
  • BookingId – Defines booking id of the group.
  • GroupType – Specifies the type of group: Material or UCLT, in case the type of group is ordinary levae this field empty
  • Email – Represents the email address associated with the resource
  • Groups – Specifies any specific groups to which the resource belongs.
  • Roles – Specifies the roles associated with the resource.
  • Competences – Indicates the competences possessed by the resource.
  • Initials – represents the initials of the resource’s name
  • Tags – Provides tags associated with the resource.
  • Attributes – Provides attributes associated with the resource
  • UserType – Provides information abour UserType: Generic, User, UnitPool. If the UserType parameter is not specified/left empty, by default it will specified as User.
  • Rate – Specifies the rate associated with the resource.
  • Calendar – Indicates the calendar associated with the resource
  • Availability – Represents the availability of the resource.
  • StartDate and EndDate – Specify the start and end dates for the resource’s availability.
  • MaterialName, MaterialShortName, MaterialCost, MaterialRate – These fields are specific to materials associated with the resource, providing details such as name, cost, and rate.
  • Teams – Specifies any specific Teams to which the resource belongs.
  • TeamLead – The leader or manager of a team.
  • AvailabilityPerUnit – The amount of time, specified in hours, allocated for each unit.
Fields That Correspond to Resource/User

RedID ; ResName ; Type: R ; Email ; Groups ; Generic ; Roles ; Competences ; Initials ; Tags ; Attributes ; Calendar ; Availability ; StartDate ; EndDate

Fields That Correspond to Group

ResID ; ResName ; Type: G ; Parent ; IsMulti ; Color ; RiskFactor ; BookingId ; GroupType ; Tags ; Attributes ; Rate ; MaterialName ; MaterialShortName ; MaterialCost ; MaterialRate

UserType: UnitPool and AvailabilityPerUnit Fields

If you set the user type to ‘UnitPool’ and specify an ‘AvailabilityPerUnit’ that is less than the working hours defined in the calendar, the value will be rounded up and displayed as multiple units. The number of units will depend on how the specified availability fits into the defined working hours.

#Examples

1. If the calendar specifies 8 working hours for this unit and you set an AvailabilityPerUnit of 5, it will be displayed as 2 units in Epicflow.

2. If the calendar specifies 24 working hours and you set an AvailabilityPerUnit of 8, it will be displayed as 3 units in Epicflow.

More Examples:

  • Example #5: Define Group in Resource Pool

1. Below, you can see a table where the group name is specified as ‘Promotion.’ This group does not belong to a multi-group.

ResIDResNameTypeParentIsMultiColorRiskFactorBookingIdGroupTypeEmailGroupsRolesCompetencesInitialsTagsAttributesUserTypeRateCalendarAvailabilityStartDateEndDateExternalID2MaterialNameMaterialShortNameMaterialCostTeamsTeamLeadAvailabilityPerUnit
PromotionG
Table 30 Create Resources Example 2

The 1st row contains column names.

The 2nd row specifies Group named ‘Promotion’

2. In CSV Format this example looks like this

;Promotion;G;;;;;;;;;;;;;;;;;;;;;;;

  • Example #6

1.Below, you can see a table where the group name is specified as ‘Procurement’ and the resource is named ‘Lukas A.’ Other values such as Groups, Competences, Initials, Calendar, and StartDate are also filled.

ResIDResNameTypeParentIsMultiColorRiskFactorBookingIdGroupTypeEmailGroupsRolesCompetencesInitialsTagsAttributesUserTypeRateCalendarAvailabilityStartDateEndDateExternalID2MaterialNameMaterialShortNameMaterialCostMaterialRateTeamsTeamLeadAvailabilityPerUnit
ProcurementG
Lukas ARProcurementUser, AdministratorLACalendarName08-02-2023
Table 31 Create Resources Example 3

The 1st row contains column names.

The 2nd row specifies Group named ‘Procurement’

The 3rd row Specifies a Resource Named Lukas A with ‘User’ and ‘Administrator’ Roles assigned to the Group ‘Procurement’. Additionally, we have initials specified as ‘LA’, a calendar assigned to the user named ‘CalendarName’, and the user’s start date specified as 08-02-2023.

2. In CSV Format this example looks like this

;Procurement;G;;;;;;;;;;;;;;;;;;;;;;;;
;Lukas A;R;;;Procurement;;;;LA;;User; Administrator;;CalendarName;;08-02-2023;;;;;;;;;;;;;;;;;;

– Project

This CSV file provides a way to specify project data and their structure.

Download Project Template

  • Example #1: Creating Project in CSV File
  1. Below, you can see a table that represents the project headers and values. Here, you can observe the basic structure, including references such as nesting tasks under a summary and defining predecessors for tasks.
Note

You need to upload a Resource Pool or have created resources within the system if you want to create tasks in the Project CSV file, as it’s necessary to assign a group or resource for such tasks.

OrderNumberTaskTypeProjectIDProjectNameTaskUIDPriorityTaskNameUIDSummaryResUIDResNameGroupUIDGroupNameUniqueIDPredecessorsRemainingWorkActualWorkScheduledWorkDeadlineStartFinishBaselineWorkAssignmentIDProjManagerHyperlinkReadyToStartByPMAssignmentUnitsTaskRemark1TaskRemark2TaskRemark3CompetenciesNotesDurationUCLTShortNamePhaseTypeColorTaskPhasesPhaseStageTagsAttributesGlobalPhaseProjectBookingIDItemBookingIDBudgetResourceIdBudgetResourceNameBudgetGroupIdBudgetGroupNameBudgetDistributionPercentsAutoDepletionsManuallySetDuration
projsumProject 102-01-202431-12-2026Amelia T
eddProject external end
smsProject start01-01-2024
iddProject end31-12-2026
Milestone1Milestone Name
Summary2Summary Name 1
TaskTask Name 12Promotion1
Table 32 Project Example 1

The 1st row – contains column names.

The 2nd row – ProjSum – specifies project data such as project name (Project 1), start date (02-01-2024), end date (31-12-2026), and Project Manager (Amelia T.).

The 3rd row – Edd – specifies the project end date for 31-12-2026. Same as IDD (5th row). Both are needed due to technical reasons.

The 4th row – Sms- specifies the project start date for 01-01-2024.

The 5th row – Idd – same as the 3rd row, specifies the project end date for 31-12-2026. Both are needed due to technical reasons.

The 6th row – Milestone- specifies information regarding milestone such as ID in the column Task_UID (1), which we will later use to refer to this Milestone as a task predecessor. Milestone Name (Milestone Name) and Milestone Deadline (26-04-2024)

The 7th row – Summary – specifies information regarding summaries such as Summaries ID in the column Task_UID – 2, which we will later use to place tasks in a summary.

The 8th row – Task – specifies information regarding tasks such as the task name (Task Name 1), UID_Summary (which will place tasks in a summary), Group Name (Promotion), and Unique_ID_Predecessors 1 (which refers to previously defined milestones).

2. In CSV Format this example looks like this:

;projsum;;Project 1;;;;;;;;;;;;;;02-01-2024;31-12-2026;;;Amelia T;;;;;;;;;;;;;;;;;;;;;;;;;
;edd;;;;;Project external end;;;;;;;;;;31-12-2026;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;sms;;;;;Project start;;;;;;;;;;01-01-2024;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;idd;;;;;Project end;;;;;;;;;;31-12-2026;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;Milestone;;;1;;Milestone Name;;;;;;;;;;26-04-2024;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;Summary;;;2;;Summary Name 1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;Task;;;;;Task Name 1;2;;;;Promotion;1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

3. In Epicflow this Example looks like this:

#Screen 13 Project Card First Example

#Screen 14 Project Structure First Example

Minimum Required Fields to Upload Project

For Project: TaskType: ProjSum, ProjectName

Minimum Required Fields to Upload Additional Items: Task, Milestone, Summary, Phase Data Records

For Task: TaskType, TaskName, GroupUID or GroupName

For Milestone, Summary, Phase: TaskType, TaskName

Note

Please keep in mind that Project Record is required to send these data.

Upload:

Read here how to upload Project to the system.

Export:

Read here how to export Project from the system.

There is no possibility to remove project within CSV file usage and that must be done directly from Web User Interface. For additional information please refer to the next article Project Card

Update:

Note

Please note: When you update the project via the CSV file, the data in Epicflow will match the latest CSV file. Keep in mind that any changes made directly in Epicflow between the export and import processes will be replaced by the latest CSV data.

To update project you need to first export Project from the system since you need id’s of project items.

Once you exported the file, access the file, edit desired fields, further sign in Epicflow, navigate to the Pipeline Page, click on three dots next to the Project Name and select an option Update Project from File, Selected the file and Upload it to the system. Once you did it changes will be applied.

#Screen 15 Project Update From File

  • Example #2Updating Project Start and End Dates

1. You have exported file that looks like this:
;projsum;2051;Project 1;;190;;;;;;;;;;;;02-01-2024;31-12-2026;;;Sara H;;;;;;;;;;;;;;;Tag1;;;;;;;;;;;
1;sms;2051;Project 1;3;0;Project start;;;;;;;;;;02-01-2024;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2;Summary;2051;Project 1;9;190;Summary Name 1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;Tag1;;;;;;;;;;;
3;Task;2051;Project 1;11;190;Task Name 1;9;;;2000000004;Branding;;4;4;8;;;;0;1;Joan G;;;1;;;;;;;;;;;;Tag2;;;;;;;;;;;
9;idd;2051;Project 1;5;0;Project end;;;;;;;;;;31-12-2026;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

OrderNumberTaskTypeProjectIDProjectNameTaskUIDPriorityTaskNameUIDSummaryResUIDResNameGroupUIDGroupNameUniqueIDPredecessorsRemainingWorkActualWorkScheduledWorkDeadlineStartFinishBaselineWorkAssignmentIDProjManagerHyperlinkReadyToStartByPMAssignmentUnitsTaskRemark1TaskRemark2TaskRemark3CompetenciesNotesDurationUCLTShortNamePhaseTypeColorTaskPhasesPhaseStageTagsAttributesGlobalPhaseProjectBookingIDItemBookingIDBudgetResourceIdBudgetResourceNameBudgetGroupIdBudgetGroupNameBudgetDistributionPercentsAutoDepletionsManuallySetDuration
projsum2051Project 102-01-202431-12-2026Joan G
sms2051Project 13Project start01-01-2024
Summary 2051Project 19Summary 1
Task2051Project 19Task 12000000004BrandingTag1, Tag2Attribute1, Attribute2
idd2051Project 1594431-12-2026
Table 33 Update Project from file 1

The 1st row contains column names.

The 2nd row specifies a Project named ‘Project 1’ with ID 2051. This ID is necessary to proceed with updates of this resource

The 3rd row specifies a start milestone date with ID 3. This ID is necessary to proceed with updates of this resource.

The 4th row specifies a Summary item with ID 9. This ID is necessary to proceed with updates of this resource.

The 5th row specifies a Task item date with ID 9. This ID is necessary to proceed with updates of this resource.

The 6th row specifies an End Milestone with ID 5. This ID is necessary to proceed with updates of this resource.

2. To update Project from file your file needs to looks like this

;projsum;2051;Project 1;;190;;;;;;;;;;;;02-01-2022;31-12-2028;;;Sara H;;;;;;;;;;;;;;;Tag1;;;;;;;;;;;
1;sms;2051;Project 1;3;0;Project start;;;;;;;;;;02-01-2022;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2;Summary;2051;Project 1;9;190;Summary Name 1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;Tag1;;;;;;;;;;;
3;Task;2051;Project 1;11;190;Task Name 1;9;;;2000000004;Branding;;4;4;8;;;;0;1;Joan G;;;1;;;;;;;;;;;;Tag2;;;;;;;;;;;
9;idd;2051;Project 1;5;0;Project end;;;;;;;;;;31-12-2028;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

OrderNumberTaskTypeProjectIDProjectNameTaskUIDPriorityTaskNameUIDSummaryResUIDResNameGroupUIDGroupNameUniqueIDPredecessorsRemainingWorkActualWorkScheduledWorkDeadlineStartFinishBaselineWorkAssignmentIDProjManagerHyperlinkReadyToStartByPMAssignmentUnitsTaskRemark1TaskRemark2TaskRemark3CompetenciesNotesDurationUCLTShortNamePhaseTypeColorTaskPhasesPhaseStageTagsAttributesGlobalPhaseProjectBookingIDItemBookingIDBudgetResourceIdBudgetResourceNameBudgetGroupIdBudgetGroupNameBudgetDistributionPercentsAutoDepletionsManuallySetDuration
projsum2051Project 102-01-202231-12-2028Joan G
sms2051Project 13Project start01-01-2022
Summary 2051Project 19Summary 1
Task2051Project 19Task 12000000004BrandingTag1, Tag2Attribute1, Attribute2
idd2051Project 1594431-12-2028
Table 34 Update Project from file 2

The 1st row contains column names.

The 2nd row specifies a project named ‘Project 1’ with ID 2051. This ID is necessary to proceed with updates to this resource. You can see that the Start and End Dates are updated compared to the table: Table 33 Update Project from file 2.

The 3rd row specifies an updated start milestone date with ID 3. This ID is necessary to proceed with updates to this resource.

The 4th row specifies a Summary item with ID 9. This ID is necessary to proceed with updates of this resource. In this example nothing was updated in this row.

The 5th row specifies a Task item date with ID 9. This ID is necessary to proceed with updates of this resource. In this example nothing was updated in this row.

The 6th specifies an updated End Milestone with ID 5. This ID is necessary to proceed with updates to this resource.

Delete:

There is no possibility to remove project within CSV file usage and that must be done directly from Web User Interface. For additional information please refer to the next article “Deleting a Project

Project CSV file contains next columns:

Note

Please note: In column naming, ‘TaskType’ represents all types of items, including Project Milestone, Summary, Task, and Phase. ‘TaskName’ represents all types of items except for Project.

  • OrderNumber – Displays the order number of items in Quick Edit Mode. This is not editable and is only for export purposes, making it easier for the user to quickly match items in the file
  • TaskType – Type of Item. In Epicflow’s Projects, we distinguish five types of items here is how you should refer to them in csv file.
    • ProjSum – defines beginning of the Project’s information block
    • Phase – refers to phase,
    • Milestone – refers to Milestone,
    • Summary – refers to Summary
    • Task – refers to Task,
    • SMS – refers to a Project Start Date,
    • EDD and IDD both refer to the Project End Date (External and Internal correspondingly)
  • ProjectID – Unique identifier for the project.
  • ProjectName – Name of the project.
  • TaskUID – Unique identifier for the item.
  • Priority – Priority of the item.
  • TaskName – Name of the item.
  • UIDSummary – Summary task’s unique identifier.
  • ResUID – Unique identifier for the resource assigned to the task.
  • ResName – Name of the resource assigned to the task.
  • GroupUID – Unique identifier for the group assigned to the task.
  • GroupName – Name of the group assigned to the task.
  • UniqueIDPredecessors – Unique identifiers of task predecessors.
  • RemainingWork – Remaining work required for task completion.
  • Actual_Work – Actual work completed on the task.
  • ScheduledWork – The work scheduled for the task is for export purposes and it is displaying the total work. During importing only the remaining work and actual work (spent hours) are required and used by the system to calculate the total hours for the task.
  • Deadline – Item deadline or due date.
  • Start – Start date of the item.
  • Finish – Finish date of the item.
  • BaselineWork – Baseline work for the task.
  • AssignmentID – Identifier for the task assignment. This column is filled when exporting project. When importing new project this column should be left empty.
  • ProjManager – Project manager responsible for the project.
  • Hyperlink
  • ReadyToStartByPM – It means that task has status “Force Ready to Start”
  • AssignmentUnits – Assignment units for the task.
  • TaskRemark1 – Remark or additional information about the task (1st remark).
  • TaskRemark2 – Remark or additional information about the task (2st remark).
  • TaskRemark3 – Remark or additional information about the task (3st remark).
  • Competencies– Competence required for task completion.
  • Notes – Additional notes or comments about the task.
  • DurationUCLT
  • ShortName
  • PhaseType – Type of project phase: Sprint, Release, Customized. (If you would like to refer to phase item you need to specify Task_UID for this phase. f.e “1”, and then you can specify this ID in Task_Phases field “1”)
  • Color – Only for Customized Phase Type.
  • TaskPhases – Phases associated with the task
  • PhaseStage – Stage of the project phase
  • Tags – Tags associated with the task.
  • Attributes – Attributes associated with the task.
  • GlobalPhase – This field indicates whether there are any global phases, and can be specified as either true or false.
  • ProjectBookingID – This can only be specified for projects, and the value in Epicflow can be found in the project card.
  • ItemBookingID – This can be specified for tasks, summaries, and milestones, and the value in Epicflow can be found in the item card.
  • BudgetResourceId – A unique identifier for a specific budgeted resource.
  • BudgetResourceName – The name of a budgeted resource.
  • BudgetGroupId – A unique identifier for a group of budgeted resources.
  • BudgetGroupName – The name of a group of budgeted resources.
  • BudgetDistributionPercents – The percentage distribution of a budget among various resources.
  • AutoDepletionsValue: True/False – A feature that automatically depletes tasks. Setting it to True enables the feature. If the value is not specified or left empty, the default is False.
  • ManuallySetDuration – A user-defined time period specifying the duration of tasks.
Fields That Corresponds to Project


Task_Type (only when “ProjSum” value is defined) ; Project_ID ; Project_Name ; Priority ; Start ; Finish ; Proj_Manager ; ShortName ; Tags ; Attributes ; SMS ; EDD ; IDD

Fields That Corresponds to Summary


Task_Type (only when “Summary” value is defined) ; Project_ID ; Project_Name ; Task_UID ; Priority ; Task_Name ; UID_Summary ; Skill ; Unique_ID_Predecessors ; Task_Phases ; Tags ;Attributes

Fields That Corresponds to Task


Task_Type ; Project_ID ; Project_Name ; Task_UID ; Priority ; Task_Name ; UID_Summary ; Res_UID ; Res_Name ; Group_UID ; Group_Name ; Unique_ID_Predecessors ; Remaining_Work ; Actual_Work ; Scheduled_Work (only export) ; Baseline_Work ; ReadyToStartByPM ; Assignment_Units ; Task_Remark1 ; Task_Remark2 ; Task_Remark3 ; Skill ;Notes ; Duration UCLT ; Task_Phases ; Tags ; Attributes

Fields That Correspond to Phase

Task_Type ; Project_ID ; Project_Name ; Task_UID ; Priority ; Task_Name ; ShortName ; Start ; Finish ; PhaseType ; Color ; PhaseStage

Fields That Correspond to Milestone

Task_Type ; Project_ID ; Project_Name ; Task_UID ; Priority ; Task_Name ; UID_Summary ; Unique_ID_Predecessors ; Deadline ; Task_Phases ; Tags

More Examples

  • Example #2: Creating Project in CSV File Including Phases.
  1. Below, you can see a table representing the project headers and values. Here, you can observe the structure, including phases and defining these phases for tasks.
Note

You need to upload a Resource Pool or have created resources within the system if you want to create tasks in the Project CSV file, as it’s necessary to assign a group or resource for such tasks.

OrderNumberTaskTypeProjectIDProjectNameTaskUIDPriorityTaskNameUIDSummaryResUIDResNameGroupUIDGroupNameUniqueIDPredecessorsRemainingWorkActualWorkScheduledWorkDeadlineStartFinishBaselineWorkAssignmentIDProjManagerHyperlinkReadyToStartByPMAssignmentUnitsTaskRemark1TaskRemark2TaskRemark3CompetenciesNotesDurationUCLTShortNamePhaseTypeColorTaskPhasesPhaseStageTagsAttributesGlobalPhaseProjectBookingIDItemBookingIDBudgetResourceIdBudgetResourceNameBudgetGroupIdBudgetGroupNameBudgetDistributionPercentsAutoDepletionsManuallySetDuration
projsumProject 102-01-202431-12-2026Joan G
eddProject external end
smsProject start01-01-2024
iddProject end31-12-2026
Phase1Phase 1Sprint
Phase2Phase 2Release
MilestoneMilestone Name
Summary4Summary Name 1Tag1, Tag2Attribute1, Attribute2
TaskTask Name 14Promotion441, 2
Table 35 Project Example 2: including Phases.

The 1st row – contains column names.

The 2nd row – ProjSum – specifies project data such as project name (Project 1), start date (02-01-2024), end date (31-12-2026), and Project Manager (Joan G.).

The 3rd row – Edd – specifies the project end date for 31-12-2026. Same as IDD (5th row). Both are needed due to technical reasons.

The 4th row – Sms- specifies the project start date for 01-01-2024.

The 5th row – Idd – same as the 3rd row, specifies the project end date for 31-12-2026. Both are needed due to technical reasons.

The 6th row – Phase – specifies information regarding Phase, such as Phase Name (Phase 1) and Phase Type (Sprint). We have also specified information regarding the Phase’s ID in the column Task_UID (1), which we will later use to refer to this Phase as a Task Phase.

The 7th row – Phase – specifies information regarding Phase, such as Phase Name (Phase 2) and Phase Type (Release). We have also specified information regarding the Phase’s ID in the column Task_UID (2), which we will later use to refer to this Phase as a Task Phase.

The 8th row – Milestone- specifies information regarding milestone such as Milestone Name (Milestone Name) and Milestone Deadline (26-04-2024)

The 9th row – Summary – specifies information regarding summaries, such as the Summaries ID in the column Task_UID – 4, which we will later use as a reference to place tasks in a summary. Additionally, we can see tags and attributes added to the summary in columns Tags (Tag1, Tag2) and Attributes (Attribute1, Attribute2).

The 10th row – Task – specifies information regarding tasks, such as the task name (Task Name 1), UID_Summary (ID: 4 from the 9th row), Group Name (Promotion), Remaining Work (4), Actual Work (4), and Task_Phases (1, 2), which refer to previously defined phases.

2. In CSV Format this example looks like this:

;projsum;;Project Name;;;;;;;;;;;;;;02-01-2024;31-12-2026;;;;;;;;;;;;;;;;;;Tag1, Tag2;;;;;;;;;;;
;sms;;;;;Project start;;;;;;;;;;01-01-2024;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;idd;;;;;Project end;;;;;;;;;;31-12-2026;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;Phase;;;1;;Phase 1;;;;;;;;;;;;;;;;;;;;;;;;;;Sprint;;;;;;;;;;;;;;; ;Phase;;;2;;Phase 2;;;;;;;;;;;;;;;;;;;;;;;;;;Release;;;;;;;;;;;;;;;
;Milestone;;;3;;Milestone Name;;;;;;;;;;26-04-2024;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;Summary;;;4;;Summary Name 1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;Tag1, Tag2;;;;;;;;;;;
;Task;;;;;Task Name;4;;;;Marketing;3;4;4;;;;;;;;;;;;;;;;;;;;1, 2;;;;;;;;;;;;;

3. In Epicflow this example looks like this:

#Screen 16 Project Structure Second Example

#Screen 17 Task Card displaying Phases

Colors in Epicflow

In Epicflow, you have the possibility to choose the color that a group or phase will be represented in. However, in CSV files, the naming is different, and you need to use unique codes to specify specific colors. Here are the codes:

#Screen 18 Epicflow Colors

#4FC3DE – Light Blue #70B0FF – Sky Blue #7A82D4 – Lavender Blue #B4D769 – Lime Green

#8BC874 – Light Green #60B5AB – Turquoise #FCDA00 – Yellow #F8BC00 – Orange Yellow

#DC7772 – Salmon Pink #E56597 – Pink #00BCD4 – Cyan #2196F3 – Blue

#3F51B5 – Indigo #8FC435 – Green #4CAF50 – Medium Green #009688 – Teal

#FCC400 – Golden Yellow #FA9C00 – Dark Orange #F44336 – Red #E91E63 – Rose

#3396AA – Steel Blue #2D6FDE – Royal Blue #3136A9 – Sapphire Blue #70A100 – Olive Green

#488F14 – Olive #287869 – Dark Green #FFAC00 – Bright Orange #EC8200 – Amber

#F32D45 – Cherry Red #B9225F – Raspberry Pink #1E5F65 – Dark Cyan #1940AB – Cobalt Blue

#1A1787 – Midnight Blue #3C6B00 – Dark Olive Green #295E00 – Deep Olive Green #0074D3 – Azure

#FF7C02 – Deep Saffron #DB5900 – Pumpkin #CA1F07 – Cardinal Red #811355 – Red Wine

Rules and Recommendation for CSV preparation

  • New CSV file must be always created in accordance to the defined above CSV file Structure. Such can be downloaded from the page Wiki page.
  • Keep in mind that defined changes will override old values for specified range in case of Update.
  • Verify used separators and date format right before upload of the file
    • Next separators of CSV file must be used
      • for columns – ” ; “
      • The date format should be compatible with the date format of your local Operating System.
  • Structure of the CSV file verification is strongly advised (Example: you should not have extra separators at the end of the line which are not expected in accordance to the file structure)
  • Before applying\introducing any new changes (Import) into the system backup preparation is advised. For that you can use Export functionality for the corresponding files.
  • During the creation of any items, it’s not required to specify item IDs. However, if you need to build a structure in attributes, competences, or projects, each ID should be unique . This way, the system is informed that this is a new item.

Import and Export

Be aware that Import\Export functionality is critical in prospective of data consistency and further analysis, so its usage is limited only to those users to which corresponding permission is assigned by System Administrator or PO.

For relevant permissions adjustment please refer to Permission configuration item.

Be aware that only CSV files of the corresponding structure are allowed for upload. Please use templates beforehand for data preparation. Do not hesitate to follow-up our Recommendations at CSV file preparation. Once you have all of the above, you can proceed with the Import or Export file functionalities.

Be aware that in contradistinction to Import \ Export of the Resource Pool, Calendar, Attributes, Competences, Logs (Export Only), which is done from the “System Maintenance” frame located at Settings page, Import \ Export of Projects is done from the Pipeline page.

Date Format Verification

Date Format Verification

Before exporting a file, ensure that you know your date format, which corresponds to the settings on your Operational System: Region and Language configuration. This is important because 3rd party tools interpretation and conversion of the date format is based on it (f.e Excel). Matching the date format ensures seamless compatibility and avoids potential errors when working with dates formats in the csv files when using 3rd party tools.

  1. Verify your local date format
    • For Windows – you can use this link as a guidance.
    • For Mac – you can use this link as a guidance.
  2. It’s crucial to ensure that the same date format is selected during Project Export in Epicflow to avoid possible errors during the edit.

#Screen 21 Date Format Compatibility

Column Separator Verification

Date Format Verification


To work smoothly with 3rd party tools (f.e Excel) when handling CSV files, check your local column separator setting. If needed, set it to ‘;’, as this is the separator Epicflow uses. This ensures compatibility with 3rd party tools, which interpret the separator based on local settings, preventing errors and ensuring a seamless experience.

  1. Verify your local column separator
    • Windows – use this link for further guidance
    • MacOS – the CSV separator depends on the system’s region settings, which also affect number and date formats. For example, the US uses a comma (“,”) as the separator, while Germany and France use a semicolon (“;”). Changing the region can solve compatibility issues with 3rd party tools like f.e Excel, however will also change how dates and numbers are displayed. If you decide to change your region please refer to this link for detailed guidance.
  2. Change your local column separator to ‘;’ if required

#Screen 19 Local Column Separator Windows Verification

Below more in details about each of such.

Import Project

  1. Prepare file: export Project from the system and edit it or download template
  2. Verify that the column separator in your file is set up as a semicolon (‘;’)
  3. Navigate to Pipeline Page.
  4. Click on + Create New Icon.
  5. From Drop-Down Menu select option Upload Project From File.
  6. Select a date format compatible with your local date format.
  7. Select a file.
  8. Click Upload Button.

#Screen 20 Import Project

Export Project

Project Export

  1. Verify your local date format (as described in the item above).
  2. Navigate to Pipeline Page
  3. Click on three dots icon next to the Project Name.
  4. From Drop-Down Menu select the ‘Export Project’ option.
  5. Specify the following settings for the exported file
    • (Optional) Decimal Separator
    • (Required) Date format
    • (Optional) Thousands separators
  6. Click the ‘Export’ Button to download the file.

#Screen 22 Export Project

Import Resource Pool, Calendar and Availability

  1. Prepare file: export data from the system and edit it or download template
  2. Verify that the column separator in your file is set up as a semicolon (‘;’)
  3. Navigate to the settings.
  4. In the top right corner click on Maintenance button.
  5. Choose Import Field.
  6. Select an appropriate file type: Resource Pool, Calendar or Availability.
  7. Specify Decimal Separator compatible with your file.
  8. Specify a date format compatible with your local date format.
  9. Specify Thousands separators compatible with your file.
  10. (only for Availability Import) Specify Past date threshold.
  11. Select a file.
  12. Click Import Button

#Screen 23 Import Data File

Import Attributes and Competences

  1. Prepare file: export data from the system and edit it or download template
  2. Verify that the column separator in your file is set up as a semicolon (‘;’)
  3. Navigate to the settings.
  4. In the top right corner click on Maintenance button.
  5. Choose Import Field.
  6. Select an appropriate file type: Attributes or Competences.
  7. Select a file.
  8. Click Import Button

#Screen 23 Import Data Files

Export Resource Pool, Calendar and Availability

  1. Verify local date format.
  2. Navigate to the settings.
  3. In the top right corner click on Maintenance button.
  4. Choose Export Field.
  5. Select an appropriate file type: Resource Pool, Calendar or Availability.
  6. Specify Decimal Separator compatible with your file.
  7. Specify a date format compatible with your local date format (See step 1).
  8. Specify Thousands separators compatible with your file.
  9. Select the saving location on your computer.
  10. Click Export button.

#Screen 24 Export Data Files

Export Attributes, Competences and Logs

  1. Navigate to the settings.
  2. In the top right corner click on Maintenance button.
  3. Choose Export Field.
  4. Select an appropriate file type: Attributes, Competences or Logs.
  5. Specify date range (required only during logs export).
  6. Select the saving location on your computer.
  7. Click Export button.

#Screen 24 Export Data File

Updated on December 11, 2024
Was this article helpful?

Related Articles