Ein CSV-Datensatz für den Import von Vorgängen muss einem gewissen Aufbau folgen. Wie genau, das erfährst du in diesem Artikel.
Der Massenimport per CSV – so gelingt's
Die Kopfzeile – der Ort für alle Verweise auf Felder in deinem Workflow
Die Kopfzeile enthält die Überschriften aller Spalten und gibt damit gleichzeitig auch die Anzahl der Spalten für die Tabelle vor. Jede Zeichenkette wird durch ein Komma abgetrennt. Es gibt keine Mindestzahl und keine Maximalzahl für Spalten.
Allgemeiner Aufbau
Beliebig viele Spalten werden durch Komma voneinander getrennt.
priority, tasks.(...).fields.(...), ...
Beispiel
priority, tasks.Stammdaten.fields.Vorname, tasks.Stammdaten.fields.Nachname
Mit dieser Kopfzeile erstellen wir also drei Spalten.
- Die erste Spalte
Priority
Die erste Spalte in der Tabelle wird alle Prioritäts-Werte enthalten, - das Spalten-Trennzeichen
,
das Komma trennt diese Spalte von der nächsten Spalte ab (), - die zweite Spalte
tasks.(...).fields.(...)
die zweite Spalte bezieht immer ihre Werte aus dem Schritt "Stammdaten" und dort aus dem Feld "Vorname" (tasks.Stammdaten.fields.Vorname
), - das Spalten-Trennzeichen
,
erneut ein Komma für eine neue Spalte (,
), - die dritte Spalte
...
hier könnten noch beliebig viele weitere Spalten stehen; wir füllen die dritte und damit letzte Beispielspalte mit Werten aus dem Schritt "Stammdaten" und dort aus dem Feld "Nachname" (tasks.Stammdaten.fields.Nachname
). - Ergebnis
Die von Vaira erkannte Kopfzeile besteht aus drei Spalten; die erste Spalte ist ein einfacher Prioritätswert, die zweite und dritte Zeile referenziert auf konkrete Feldwerte in Aufgaben.
Die Körperzeile(n) – hier kommen deine einzelnen Vorgänge hin
Körperzeilen sind alle Zeilen unterhalb deiner Kopfzeile – also die Zeilen, die den eigentlich Inhalt mit sich bringen. Sie sind vom Prinzip her genau wie die Kopfzeile aufgebaut.
Jede Zeile in deiner CSV steht für eine Zeile in einer Tabelle bzw. einen einzelnen Vorgang beim Instanzimport. Auch hier dient das Komma der Abtrennung für Spalten.
Eine Besonderheit dabei: du kannst auch leere Zellen erzeugen. Zwei Kommata hintereinander werden dabei als leere Zelle verstanden (,,)
.
Eine Beispieltabelle inklusive Kopfzeile wie diese hier:
priority |
tasks.Stammdaten.fields.Vorname |
tasks.Stammdaten.fields.Nachname |
High | Thorsten-Dieter | Mustermann |
Low | Musterfrau |
Wird dann in der CSV zu:
priority,tasks.Stammdaten.fields.Vorname,tasks.Stammdaten.fields.Nachname
High,Thorsten-Dieter,Mustermann
Low,,Musterfrau
In der zweiten Inhaltszeile siehst du hier auch noch einmal gut, wie mit leeren Zellen in CSVs umgegangen wird.
Welche Feldtypen werden beim Import unterstützt und welche Form müssen die Werte haben?
Type | Example | Explanation |
---|---|---|
Text | Joachim |
Inhalt für Textfelder |
Textbereich | Markus hat bei der Arbeit einen Hammer zerstört. |
Inhalt für Textbereiche Zeilenumbrüche werden ebenfalls übernommen. Diese nehmen in der CSV auch mehrere Zeilen ein. Dass dadurch keine separaten Vorgänge erzeugt werden liegt daran, dass die Anführungszeichen ( |
Zahl | 142.2345123 |
Inhalte für Zahlenfelder Als Kommazeichen dient hier nach internationaler Norm der Punkt. Achte darauf, dass hier keine Kommata genutzt werden. Bei den meisten Programmen kannst du das beim CSV-Export einstellen. |
Benutzer | "user:abcdef,group:123abc,user:aabbbcc" |
Inhalte für Benutzerfelder, um Nutzer oder Gruppen basierend auf ihrer ID hinzufügen Der Teil vor dem Der Teil hinter dem Achte darauf, bei mehreren Nutzern und/oder Gruppen die Anführungsstriche oben ( |
Datum | YYYY-MM-DD |
Inhalte für Datumsfeldern Das Format des Datums muss Beispiel:
|
Timestamp | YYYY-MM-DDThh:mm:ss+02:00 |
Inhalte für Timestamp-Felder Das Format ist RFC3339. Der Wert setzt sich also zusammen aus:
Beispiel:
was ausgeschrieben wäre: 25. April 2024 um 13:25 Uhr und 59 Sekunden in der Zeitzone +0200 (Deutsche Sommerzeit). |
Auswahl |
"hammer,bohrer,papier" |
Inhalte für Auswahl-Felder Die IDs der einzelnen Objekte, jeweils durch ein Wichtig: hier müssen die IDs deiner Auswahlobjekte genutzt werden, nicht die Anzeigenamen! |
Checkbox / Boolean | true |
Inhalte für Checkbox-Felder Diese können entweder Andere Werte werden von Vaira nicht akzeptiert. |
Sondertypen für weitere Importe
Neben den bekannten Feldtypen
Type | Example | Explanation |
---|---|---|
priority |
lowest , low , medium , high , highest |
Du hast fünf Prioritäten für den Import zur Verfügung: von Die Groß- und Kleinschreibung spielt keine Rolle, du könntest also auch einen Wert wie Außerdem erlaubt Vaira das Prefix |
priority_note |
Neue Deadline wegen paralleler Baumaßnahme. |
Einfacher Text als Notiz für eine Priorisierung. |
annotations.(...)/(...) |
annoations.meineFirma/label |
Gibt dem Vorgang ein Label. Es können auch mehrere Labels auf einmal erstellt werden; in diesem Fall achte darauf, alle Labels in Anführungszeichen oben zu setzen und als Trennzeichen ebenfalls das Komma zu nutzen:
Der erste Teil Der Teil vor dem Eine Besonderheit stellt die Unterkategorisierung Der Teil hinter dem Den Wert für das Label nimmt sich Vaira dann aus der entsprechenden Zelle in deiner Tabelle. |
annotations.vaira.app/(...) |
annoations.vaira.app/sync-groups |
Diese Annotation folgt dem bekannten Schema, ist aber für Sync-Groups (also verknüpfte Instanzen) vorbehalten. Wenn du zwei oder mehr Vorgänge erstellst, nutze als Verweis für die Kopfzeile den Befehl links. Anschließend gibst du Vorgängen, die miteinander verknüpft werden sollen, den gleichen Wert in den jeweiligen Zellen mit. Dadurch sind die Vorgänge miteinander verbunden. Was verknüpfte Vorgänge sind und wie du diese in Vaira nutzen kannst, erfährst du in diesem umfassenden Artikel: » Anleitung zum Verknüpfen von Vorgängen in Vaira allgemein |
Fehlerhandhabung durch Vaira, Fehlererkennung und Fehlerbehebung
Hier sind einige der häufigsten Fehlerquellen und was du gegen sie tun kannst.
- Deine importierte CSV wird von Vaira komplett abgelehnt
In diesem Fall stimmt etwas mit dem Grundaufbau deiner CSV nicht. Bitte überprüfe, ob alle Felder, die du importieren möchtest, auch wirklich so in deinem Vaira-Workflow existieren. Achte dabei auch auf mögliche Buchstabendreher. Überprüfe außerdem, ob alle Feldtypen, die du importieren möchtest, auch von Vaira unterstützt werden. - Der Import funktioniert, aber einige Vorgänge konnten nicht erstellt werden
Sofern der Grundaufbau deiner CSV stimmt und nur einzelne Felder fehlerhafte Werte aufweisen, wird Vaira den Import durchführen und die fehlerhaften Vorgangszeilen überspringen. Im Anschluss an den Import erhältst du eine CSV zum Download, in der alle fehlerhaften Zeilen, die nicht importiert wurden, inklusive Grund für den Fehler ausgegeben werden. Jede Zeile ist dabei eine fehlerhafte Zeile in deiner ursprünglichen CSV. Die neuen Fehlerspalten in der CSV sind:
vaira.row
: Verweist auf die Zeile in der originalen Import-CSV, damit du weißt, welche Zeile(n) nicht importiert werden konnten. Die Zählung in deiner originalen CSV beginnt mit 1.vaira.errors
: Ein kurzer Erklärtext dazu, warum diese Zeile nicht importiert werden konnte.
vaira.row
undvaira.errors
auch nicht entfernen; Vaira ignoriert diese Spalten beim Import.
Eine Fehlermeldung in der CSV kann zum Beispiel so aussehen:
vaira.row vaira.error annotations.vaira.app/comment tasks.t.fields.boolean 2invalid value for field tasks.t.fields.boolean: "hello" is not a boolean value invalid value hello 16 invalid value for field tasks.t.fields.number: hello is not a number invalid value hello