Import Tasks

Overview

It is possible to import tasks, addresses, journal entries, or any other type of object into the diary from other data sources.   To do this you need to:

Dialog Options

To get to the import function, select File -> Import -> Entries.   This opens the Import dialog.

The import dialog has these fields:

Importing to iOS

iOS is a little more tricky to import to, as you cannot browse around the file system of your phone (you can only wander around your apps data area).

To make a CSV file available to the app, you will need to use the "Files" app on your iPhone/iPad.

The CSV File

The CSV file that you import from needs to be structured in a very particular way to be able to import into this application.
Key
ObjectParent
ObjectSpec
KEY-100

Task
KEY-200

Appointment
KEY-300
KEY-200
Task

In this example, after import:

A few important notes:

Sounds complex - It is much easier with an example...

An Example - Importing from Jira

OK - Imagine we want to import a full set of tasks from the task management system, Jira.

This is the sort of spreadsheet we might get out of a Jira query:

Displaying 300 issues at 6/Jun/16
Key
Summary
Assignee
ETC
Cost Centre
Target Effort
TASK-1200
Some random task
Joe Stubbs
3600
ABC123
7200

Of course, your Jira will almost certainly look different...   But for reference, ETC is the remaining effort, and Target Effort is the total time for a task.

If we make a new spreadsheet, we could paste the Jira dump into Sheet1.   Sheet2 might look like this:

JiraID
Title
Duration
Remaining
CostCentre
Resource
=Sheet1!A3
=Sheet1!B3
=Sheet1!F3/3600
=Sheet1!F3/3600
=Sheet1!E3
=Sheet1!C3
=Sheet1!A4
=Sheet1!B4
=Sheet1!F4/3600
=Sheet1!F4/3600
=Sheet1!E4
=Sheet1!C4

We can now import into an Object Spec like this:

$<EntryType> = eval("Task");
$<JiraID> = prompt;
$<CostCentre> = prompt;

It will match the "Key" field with an entry in the Diary Database with a matching JiraID.   If it cannot find that JiraID, then it will create a new entry.

If you save the spreadsheet out as a CSV file, you should be able to import it using the import function.

If you are importing time spent then there are some additional fields that you can use:
Field
Meaning
SpentDate
The date that the time was spent.
SpentResource
The name of the person who spent the time (if not specified the time defaults to the person the task is assigned to).
Spent
The amount of time that was spent - i.e. 2.5 means 2 hours 30 mins or 1800S means 1800 seconds. NOTE: If you specify a number < 0 here, then that is a signal to clear all recorded time for that task. This can be used to pre-clear the entries for the task.

Your input spreadsheet might look like this:

Key
SpentResource
SpentDate
Spent
TASK-1200
Joe Stubbs
14-Jul-2015
10

Your mapped spreadsheet would look like this:

JiraID
SpentResource SpentDate
Spent
=Sheet1!A2 =Sheet1!B2
=Sheet1!C2
=Sheet1!D2