Data import documentation

Overview

This document describes the possibilities to import data from other systems (e.g. your club membership software) into my-rowing-club.

From the MYRC Admin Dashboard you can navigate to the import view.

Import data

You can choose here which kind of entity you want to import.

Remark: If you import more than one entity type, please follow the logical order of the import buttons. This is important because you have to take references between entity types into account.

General rules and hints

Currently MYRC only supports the import of .csv (Comma separated values) files.
The encoding of the .csv files have to be UTF-8.

The import resp. reimport of data is much safer, if you specify an id for every row of your import data. This id normally is the id (primary key) of your software system, where you exported your data from. MYRC stores this id as a foreign key.

So if you re-import a .csv file (e.g. update of your club members) MYRC recognizes, that one row was already imported and runs an update of this row instead of creating a new data object.

The first line of the .csv file have to define the field names of the columns.

Flow of import

For every import entity type the flow of import is the same.

First you select the entity type (e.g. “Import members“).

Then a import view for the entity type is shown.

Choose the “+” Button to open the file chooser for the selection of the .csv file.

Select the .csv file.

Remark: The format of the .csv file is different for every entity type. Please see below for the specification of the .csv files.

The .csv file is uploaded to the MYRC Cloud and a preflight of the import is run. MYRC validates the content of the .csv file and resolves possible references to other entity types.

Please verify the preflight result very carefully. Esp. take a look at references to other entities. (e.g. badges of members). If you find problems in your .csv file, just delete the file with “Delete File” and upload your corrected .csv file again.

If everything is ok, select “Run import” to import the data to MYRC.

After a successful import you will be automatically redirected to page displaying the imported entities.

CSV file format

Membership badge

These field names are supported:

  • id
    Type: string
    Required: false
    The id is the unique id of the member in the software system the membership badge were exported from. If you leave this out, MYRC tries to match an existing entry by the name field.
  • name
    Type: string
    Required: true
    The name of the badge.
  • icon
    Type: string
    Required: true
    MYRC uses the Material Icon Library. You have to use the name of the Material Icon (e.g. rowing ).
  • r
    Type: number (integer)
    Required: true
    Allowed Values: 0 <= r <= 255
    Red color part of the icon color.
  • g
    Type: number (integer)
    Required: true
    Allowed Values: 0 <= g <= 255
    Green color part of the icon color.
  • b
    Type: number (integer)
    Required: true
    Allowed Values: 0 <= b <= 255
    Blue color part of the icon color.
  • status
    Type: enum, allowed values are activedeleted
    Required: true
    You can also import membership badges, which are no longer active. For those set the status to deleted.

Members

These field names are supported:

  • id
    Type: string
    Required: false
    The id is the unique id of the member in the software system the members were exported from. This may help to identify a member in MYRC, if you import the same member again in a future import. You can leave it out, but then MYRC tries to find existing members by givenName and lastName, which may lead to duplicate members (e.g. member name changed).
  • title
    Type: string
    Required: false
    The title may have values like Dr. or Prof.
  • givenName
    Type: string
    Required: true
    The first name of the member
  • lastName
    Type: string
    Required: true
    The last name of the member.
  • gender
    Type: enum. Allowed values are MALEFEMALEOTHER
    Required: true
    The gender of the member. Choose OTHER for diverse gender.
  • birthday
    Type: ISO-Date (e.g. 1972-04-30)
    Required: true
    The birthday of the member.
    Hint: If you only know the year of birth of your members, you may choose the 1st of January (e.g. 1984-01-01) as a workaround.
  • badgeDefId<N>
    Type: string
    Required: false
    You can add up to 9 (N: 1-9) references to membership badge definitions. You have to use the foreign key of a badge definition. If you set a value (fk) for badgeDefId<N> MYRC assigns this badge to the member.
  • status
    Type: enum, allowed values are activedeleted
    Required: true
    You can also import members, which are no longer members of the club (e.g. for historical reasons). For those members set the status to deleted.

Boat location

These field names are supported:

  • id
    Type: string
    Required: false
    The id is the unique id of the boat location in the software system the boat locations were exported from. This may help to identify a boat location in MYRC, if you import the same boat location again in a future import. You can leave it out, but then MYRC tries to find existing boat locations by the boat location name, which may lead to duplicate boat locations (e.g. boat name changed).
  • name
    Type: string
    Required: true
    The boat location name. The boat location name is used as identifier of the boat location, if id is not set.
  • status
    Type: enum, allowed values are activedeleted
    Required: true
    You can also import boat locations, which are no longer used (e.g. the location may be referenced by a deleted boat). For those boat locations set the status to deleted.

Destination

These field names are supported:

  • id
    Type: number
    Required: false
    The id is the unique id of the destination in the software system the destinations were exported from. This may help to identify a destination in MYRC, if you import the same destination again in a future import. You can leave it out, but then MYRC tries to find existing destinations by the destination name, which may lead to duplicate destinations (e.g. destination name changed).
  • name
    Type: string
    Required: true
    The destination name. The destination name is used as identifier of the boat location, if id is not set.
  • distanceInKm
    Type: number
    Required: true
    Allowed values: 1 <= n <= 1000
    The default distance of this destination. Will be used as default distance, if this destination is selected while creating a new trip log.
  • defaultTripLogCategory
    Type: enum
    Required: true
    Allowed values: DEFAULT, HIKE, RACE, TRAINING, EDUCATION
    The default of the trip log category. Will be used as default category, if this destination is selected while creating a new trip log.
  • status
    Type: enum, allowed values are activedeleted
    Required: true
    You can also import destinations, which are no longer used (e.g. the destination may be referenced by an old trip log). For those destinations set the status to deleted.

Boat classification

These field names are supported:

  • id
    Type: string
    Required: false
    The id is the unique id of the boat classification in the software system the boat classifications were exported from. If you leave this out, MYRC tries to match an existing entry by the name field.
  • name
    Type: string
    Required: true
    The name of the boat classification.
  • r
    Type: number (integer)
    Required: true
    Allowed Values: 0 <= r <= 255
    Red color part of the boat classification color.
  • g
    Type: number (integer)
    Required: true
    Allowed Values: 0 <= g <= 255
    Green color part of the boat classification color.
  • b
    Type: number (integer)
    Required: true
    Allowed Values: 0 <= b <= 255
    Blue color part of the boat classification color.
  • orderNum
    Type: number (integer)
    Required: true
    Allowed Values: 0 <= n <= 1000000
    You can sort your boat classifications through this orderNum.
  • status
    Type: enum, allowed values are activedeleted
    Required: true
    You can also import boat classifications, which are no longer active. For those set the status to deleted.

Boat damage type

These field names are supported:

  • id
    Type: number
    Required: false
    The id is the unique id of the boat damage type in the software system the boat damage types were exported from. This may help to identify a destination in MYRC, if you import the same boat damage type again in a future import. You can leave it out, but then MYRC tries to find existing boat damage types by the boat damage type name, which may lead to duplicate boat damage types (e.g. boat damage type name changed).
  • name
    Type: string
    Required: true
    The boat damage type name. The boat damage type name is used as identifier of the boat damage type, if id is not set.
  • type
    Type: enum
    Required: true
    Allowed values: BOAT, STRETCHER, OUTRIGGER, ROWLOCK, SEAT, RUDDER, OARS, OTHER
    The type of the boat damage.
  • status
    Type: enum, allowed values are activedeleted
    Required: true
    You can also import boat damage types, which are no longer used (e.g. the boat damage type may be referenced by an old boat damage). For those boat damage types set the status to deleted.

Boat

These field names are supported:

  • id
    Type: string
    Required: false
    The id is the unique id of the boat in the software system the boats were exported from. This may help to identify a boat in MYRC, if you import the same boat again in a future import. You can leave it out, but then MYRC tries to find existing boats by the boat name, which may lead to duplicate boats (e.g. boat name changed).
  • name
    Type: string
    Required: true
    The boat name. The boat name is used as identifier of the boat, if no id is set.
  • shape
    Type: enum, allowed values are:

    RACE: Racing boat
    A: Gig A
    B: Gig B
    C: Gig C
    D: Gig D
    E: Gig E
    OTHER: Other kind of boat
    KIBO: Church boat
    TR: Trainingsboat
    TRIMMI: Trimmi

    Required: true
    The shape of the boat. Please let us know if you want MYRC to support additional shapes.
  • boatClassificationName
    Type: string
    Required: true
    The name of the boat classification. This name must match exactly to one one the configured boat classifications
  • defaultTripName
    Type: string
    Required: true
    The name of the default destination of the boat. This name must match exactly to one one the configured destinations.
  • boatPlaceName
    Type: string
    Required: true
    The name of the location of the boat. This name must match exactly to one one the configured boat locations.
  • yearOfConstruction
    Type: number
    Required: false
    The year of the construction of the boat.
  • manufacturer
    Type: string
    Required: false
    Manufacturer of the boat.
  • owner
    Type: string
    Required: false
    The owner of the boat.
  • responsibleId
    Type: string
    Required: false
    The foreign key of the member, which is responsible for the boat.
  • status
    Type: enum, allowed values are activedeleted
    Required: true
    You can also import boats, which are no longer used (e.g. the boat may be referenced by an old trip log). For those boats set the status to deleted.
  • var<N>CoxswainPlaces (e.g. var1CoxswainPlaces)
    Type: number (>=0)
    Required: true
    N: The index of the variant. 1 <= N <=9
    The count of coxswain places for the boat (rigger) variant N.
  • var<N>OarsmanPlaces (e.g. var1OarsmanPlaces)
    Type: number (>=0)
    Required: true
    N: The index of the variant. 1 <= N <=9
    The count of oarsman places for the boat (rigger) variant N.
  • var<N>RiggerType (e.g. var1RiggerType)
    Type: enum
    Allowed Values: SCULLS, OARS, OTHER
    Required: true
    N: The index of the variant. 1 <= N <=9
    The count of oarsman places for the boat (rigger) variant N.

Guest

These field names are supported:

  • id
    Type: string
    Required: false
    The id is the unique id of the guest in the software system the guests were exported from. This may help to identify a guest in MYRC, if you import the same guest again in a future import. You can leave it out, but then MYRC tries to find existing guests by the guest name, which may lead to duplicate guests (e.g. guest name changed).
  • name
    Type: string
    Required: true
    The guest name. The guest name is used as identifier of the guest, if id is not set.
  • status
    Type: enum, allowed values are activedeleted
    Required: true
    You can also import guests, which are no longer used (e.g. the guest may be referenced by a trip log). For those guests set the status to deleted.

Guest class

These field names are supported:

  • id
    Type: string
    Required: false
    The id is the unique id of the guest class in the software system the guest classes were exported from. This may help to identify a guest class in MYRC, if you import the same guest class again in a future import. You can leave it out, but then MYRC tries to find existing guest classes by the guest class name, which may lead to duplicate guest classes (e.g. guest class name changed).
  • name
    Type: string
    Required: true
    The guest class name. The guest class name is used as identifier of the guest class, if id is not set.
  • shortName
    Type: string
    Required: true
    Short name of the guest class. Used for display, if there is not so much space in UI.
  • status
    Type: enum, allowed values are activedeleted
    Required: true
    You can also import guest classes, which are no longer used (e.g. the guest class may be referenced by a trip log). For those guest classes set the status to deleted.

Boat damage

These field names are supported:

  • id
    Type: string
    Required: true
    The id is the unique id of the boat damage in the software system the boat damages were exported from. This may help to identify a boat damage in MYRC, if you import the same boat damage again in a future import.
  • boatDamageNr
    Type: string
    Required: true
    A human readable identifier of the boat damage.(e.g. 100000).
  • boatId
    Type: string
    Required: true
    The foreign key of the boat (id from boat import).
  • standardDamageId
    Type: string
    Required: true
    The foreign key of the boat damage type (id from boat damage type import).
  • description
    Type: string
    Required: true
    The description of the boat damage.
  • damageCreatedAt
    Type: ISO Date-Time (e.g. “2009-01-01T12:00:00+01:00“)
    Required: true
    The creation timestamp of the boat damage.
  • creatorMembershipId
    Type: string
    Required: false
    The foreign key of the member (id from member import).
  • status
    Type: enum, allowed values are active, repaired, deleted
    Required: true
    Status of the boat damage.

Triplog

Importing triplogs is quite complex. The import makes only sense, if you have imported all your master data from above upfront. The triplog imports have a lot of foreign key references. Please check these references before you run your import. Imports can not be reverted. Please import the triplogs only in yearly chunks. The .csv file should not have more than 5000 lines.

These field names are supported:

  • id
    Type: string
    Required: true
    The id is the unique id of the trip log in the software system the triplogs were exported from. This may help to identify a triplog in MYRC, if you import the same trip log again in a future import.
  • boatId
    Type: string
    Required: true
    The foreign key of the boat used for this triplog. (id from boat import)
  • boatVariantId
    Type: string
    Required: true
    The foreign key of the boat variant of the boat used for this triplog. (boatVariantId from boat import)
  • startTripDate
    Type: string , ISO-DateTime: e.g. 2020-01-01T08:30:00+01:00
    Required: true
    Start time of the triplog.
  • startTripDate
    Type: string , ISO-DateTime: e.g. 2020-01-01T10:30:00+01:00
    Required: true
    End time of the triplog. Must be after startTripDate.
  • tripId
    Type: string
    Required: true
    The foreign key of the destination used for this triplog. (id from destination import)
  • tripDescription
    Type: string
    Required: false
    The optional description of the triplog. e.g. the description of your hiking tour.
  • tripLogCategoryId
    Type: string, enum – Allowed values are
    DEFAULT, HIKE, RACE, TRAINING, EDUCATION
    Required: true
    The category of the triplog.
  • creatorMembershipId
    Type: string
    Required: false
    The foreign key of the member (id from member import).
  • tripLogNr
    Type: string
    Required: true
    A human readable identifier of the triplog.(e.g. 100000).
  • boatDamageId
    Type: string
    Required: false
    The foreign key of the boat damage related to this triplog. (id from boat damage import).
  • oarsmanCount
    Type: number
    Required: true
    The number of oarsmen and coxswains for this triplog.
  • oarsmanType_<N> (e.g. oarsmanType_0)
    Type: string, enum – allowed values are MEMBER or GUEST
    Required: true
    N: The index of the oarsman. 0 <= N < oarsmanCount
    The type (Member or Guest) of oarsman N.
  • oarsmanRoles_<N> (e.g. oarsmanRoles_0)
    Type: string[], space separated enum – allowed values are
    OARSMAN: No special role. Just rowing.
    RESPONSIBLE: The responsible person. (Obmann)
    COXSWAIN: The cox.
    Required: true
    N: The index of the oarsman. 0 <= N < oarsmanCount
    The roles of oarsman N for this triplog.
  • oarsmanId_<N> (e.g. oarsmanId_0)
    Type: string
    Required: true
    N: The index of the oarsman. 0 <= N < oarsmanCount
    The id depends on the oarsmanType.
    If oarsmanType is MEMBER, than the id refers to the id of a member from the member import (foreign key).
    If oarsmanType is GUEST, than the id refers to the id of a guest from the guest import (foreign key).
  • guestClassId_<N> (e.g. guestClassId_0)
    Type: string
    Required: if oarsmanType is GUEST
    N: The index of the oarsman. 0 <= N < oarsmanCount
    The id refers to the guest class id from your guest class import (foreign key).

Support

If you have further questions or ideas for the improvement of MYRC please contact us:

support [at] my-rowing-club [dot] com

Your MYRC Support Team