# Taglog tutorial - working with other systems

Although taglog is primarily focussed on time management for an individual it has some features which help it to work with other systesm. These features require some setup outside of taglog so if you are working purely standalone you can skip this section.

## Saving Time Bookings for import to another program

You can save the output of the weekly time bookings as a Comma Separated Value file. This can be used to automate entry into a corporate time recording system, but the exact details will depend on the requirements of your corporate system.

To save the to a file select `Reports/Weekly time bookings by project` from the main menu and set the week you want to report for.

Select `Save As...` from the report display. You will be prompted for the file name to use to save the displayed times as a CSV file.

### File Format

The file is saved as a line containing the dates for which the report has been generated, comma seperated with an initial leading comma. The dates are expressed as Day/Month.

This is followed by as many lines as there are projects, starting with a project booking code and then the times spent on that project on each day of that week, all separated by commas.

### Advanced facilities

There are some advanced facilities which can be set by manually editing your taglog configuration file (`~/.taglog` on Unix or `taglog.cfg` on Windows). You can edit this file with an editor and make changes in the section after the line which says

    # above this line is automatically saved - put your changes below here

Even if you do know know the TCL language in which taglog is written it is fairly simple to follow the syntax of the lines above the marker, which are set by the `File/Preferences` menu entry.

#### Default Timebookings Save File

You can save the default file for the SaveAs operation by putting lines into your taglog configuration file which read
global default_save_timebookings_file
set default_save_timebookings_file "some filename"

You will still be prompted to confirm the filename.

#### Timebookings File Format

Unix and Windows have different ways to indicate the end of a line of text. If you are running taglog on a Unix or Linux system and saving your Timebookings CSV file to a network drive on a Windows shared drive where it will be read by an application expecting a Windows text file, or you are running taglog on a Windows PC to a network drive where the CSV file will be read by a Unix application you may need to change the file format.

If you are saving to the same kind of system as the one where the file will be read (or you have a flexible program reading the files) then you do not need to set this, but if you do then put the approporiate lines in your taglog configuration:

##### Saving in Windows format

global timebookings_file_format
set timebookings_file_format crlf

##### Saving in Unix or Linux format

global timebookings_file_format
set timebookings_file_format lf

## Updating Projects information over HTTP

If your organization has a web server which can deliver a list of the currently available project names and booking codes then you can set up a URL in the `Projects URL` field in preferences.

Once this is enabled you can update your current list of available projects via the `Projects/Update` menu entry.

Note that this URL could be something like

    http://projects.example.com/projects-list.php?jl

to deliver only the projects relevant to a particular person.

### Setting up the Projects information server

This section is under construction. The Projects information server should deliver the projects which are valid for the particular user (or possibly just the same set of projects to everybody) in the tagged format described in https://johnlines.github.io/tag-types/ for example it should look like

    Tag-accountproj-version: 1.0
    End:

    Name: breaks
    NextActionId: 1
    Code:
    Flags: Breaks
    Flags: Active
    StartDate: 2002-12-11
    End:
    Name: general admin
    NextActionId: 1
    Code:
    Flags: Overheads
    Flags: Active
    StartDate: 2002-12-11
    End:
    Name: Major Project1
    NextActionId: 1
    Code: MP1
    StartDate: 2002-12-11
    End:

and so on.

Taglog will detect a project being removed from the active projects list downloaded here and will set the EndDate of such projects to todays date.

Next More about Projects Contents