Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents
outlinetrue

...

Die Funktionalität

Die Troi-JIRA-Integration bietet im Wesentlichen die folgenden Funktionalitäten:

...

Für die Zusammenfassung der Daten erfolgt eine Aggregation aller JIRA-Issues pro Kalkulationsposition, sofern mehrere JIRA-Issues mit derselben Position verknüpft sind. Darüber hinaus wird eine Gesamtsumme auf Projektebene berechnet, was eine vereinfachte Kontrolle und Überwachung des Projektfortschritts ermöglicht.

Übergabe des in JIRA erfassten Arbeitsprotokolls an die Troi-Stundenerfassung

Die TROI-JIRA-Integration bietet eine Funktionalität zur Übertragung der in JIRA erfassten Arbeitsprotokolle in die TROI-Stundenerfassung. Diese Funktion erzeugt automatisch Stundenbuchungen für die korrespondierenden Kalkulationspositionen in den zugehörigen TROI-Projekten.

...

Dieser Prozess der Datensynchronisation erfolgt periodisch, basierend auf voreingestellten Zeitintervallen.  Die Wiederholrate ist standardmäßig auf 15 Minuten eingestellt.

Übergabe der in JIRA ermittelten Restaufwandsschätzungen an TROI

Ebenso werden im Rahmen dieser Synchronisation die in JIRA ermittelten Restaufwandsschätzungen in die zugehörigen Stundenbuchungen und TROI-Projekte integriert.

...


Abb.: Konfiguration von Jira in TROI

  • Server-URL: Bitte geben Sie hier die Server-URL der JIRA-Instanz an

    • incl. http bzw. https

  • Benutzername: Bitte geben Sie hier den Benutzernamen des JIRA-Benutzers an

  • Benutzerpasswort: Bitte geben Sie hier das Passwort des JIRA-Benutzers an

    • Für die Authentifizierung bei JIRA-Cloud wird ein API-Token statt Passwort benötigt. Dieses Token wird als Benutzerpasswort-Passwort in den TROI-EInstellungen eingetragen.

  • Name des Jira-Feldes für die Referenz zur Kalkulationsposition: Bitte geben Sie hier den Namen des CustomFields ein, welches Sie später in JIRA erstellen und zur Eingabe der zu verknüpfenden ID's zu TROI Kalkulationspositionen verwenden.

  • Formatierungs-Zeichenfolge für den Kommentar: %2$s // %1$s 

    • %1$s = Kommentar, %2$s = Ticket-Nummer (Beispiel: '%1$s (%2$s)')

  • JIRA-PlugIn installiert: Bitte die Checkbox aktivieren, sofern das Jira-PlugIn verwendet wird

...

Die Verbindung von JIRA zu TROI

...

Falls erforderlich, kann der in Jira dokumentierte Kommentar durch Hinzufügung der Jira-Issue-Nummer ergänzt werden. Dies bietet eine zusätzliche Methode zur Nachverfolgung und Identifizierung spezifischer Datenpunkte zwischen Jira und TROI.

Info

Um den Projektschlüssel in Jira zu finden, kann wie folgt vorgegangen werden:

1.) Öffnen Sie Ihr Jira-Projekt: Gehen Sie zu Ihrem Jira-Projekt und klicken Sie auf die Projektübersicht.

2.) Projektinformationen anzeigen: In der oberen rechten Ecke finden Sie einen Link "Projektinformationen" oder "Project Details". Klicken Sie darauf.

3.) Projektschlüssel finden: In den Projektinformationen sehen Sie den Projektschlüssel unter dem Abschnitt "Projektübersicht" oder "Project Summary".

Alternativ können Sie den Projektschlüssel auch in der URL sehen, wenn Sie das Projekt öffnen. Die URL sieht normalerweise so aus: https://yourdomain.atlassian.net/browse/PROJECT_KEY .

Falls Sie den Projektschlüssel programmatisch abrufen möchten, können Sie versuchen die Jira REST API zu verwenden:
GET https://yourdomain.atlassian.net/rest/api/2/project/PROJECT_KEY?expand=projectKeys

...

Installation vom Jira-PlugIn (optional)

...

Das Plugin wird mittels einer Konfigurationsdatei konfiguriert. Dazu erstellen Sie die Datei troi.properties im Verzeichnis /target/Jira/home  (Standard: /var/atlassian/application-data/Jira) mit folgendem Inhalt:

...

Config Stuff
Code Block
#TROI - Jira - Integration
TROI.cp_id_field_name= Hier bitte den exakten Namen des benutzerdefinierten Feldes eingeben
TROI.TROI_url=Hier bitte die URL Ihrer TROI Installation eingeben z.B. https://kundenname.TROI.de
TROI.TROI_user_name=Hier bitte den TROI Benutzernamen eingeben
TROI.TROI_user_password_md5=Hier bitte das Kennwort, welches für den o.g. Benutzer in TROI hinterlegt ist, (als MD5 Hash) eingeben. Bspw. hier können Sie Ihr Passwort in einen MD5 Hash konvertieren > http://www.md5-generator.de/
TROI.max_cache_age_in_seconds=3600

...

Konfigurieren Sie die Screens, in denen das Feld sichtbar sein soll.

Image Modified

Wenn Sie nun einen neuen Vorgang anlegen, steht Ihnen das zuvor erstelle Feld zur Verfügung.

...

Dazu navigieren Sie bitte in das TROI Projekt, klicken oben links das erweitert Icon an → wählen das Projekt und klicken auf den Eintrag Erweiterte Einstellungen.

Dort geben Sie bitte den Jira-Projektschlüssel ein und speichern. 

...

Info

...

Jira Cloud

Für die Authentifizierung bei Jira Cloud wird ein API Token benötigt.

Dieses Token wird als Benutzerpasswort-Passwort in den TROI-EInstellungen eingetragen.

API Token Generierung bei Atlassian unter https://id.atlassian.com/manage/api-tokens.

...

Tipps

JIRA-Projekt-Schlüssel

...

Ändern Sie die Anzahl der Tage, welche rückwirkend für Benutzer bzw. Mandanten übernommen werden sollen, über System → Systemeinstellungen → Stundenerfassung.Image Removed

...

Abb.: Position für Anzahl Tage, Stunden erfasst/geändert werden können

...

Prüfen Sie einmal die folgenden Hinweise:

Troubleshooting

Spezialfälle beim Umbuchen in TROI

...

Das Umbuchen von Stunden aus Jira folgt folgendem Schema:

  1. Wenn Stunden von Jira in ein TROI-Projekt auf Position 1A synchronisiert wurden und die Stunden anschließend in TROI umgebucht werden in ein anderes Projekt auf Position 2B, gibt es zwei Fallunterschiede:

    1. das Projekt, auf das umgebucht wird, ist mit irgendeinem Jira-Projekt verbunden (Projektschlüssel).
      → dann werden die Stunden aus Jira bei der nächsten Synchronisation wieder auf Position 1A gebucht.

    2. das Projekt, auf das umgebucht wird, ist

...

    1. mit keinem

...

    1.  Jira-Projekt verbunden.
      → dann bleiben die Stunden aus Jira bei der nächsten Synchronisation auf der Position 2B

  1. Wenn Stunden von Jira in ein TROI-Projekt auf Position 1A synchronisiert wurden und die Stunden anschließend in TROI umgebucht werden in dasselbe Projekt auf Position 1B:
    → dann bleiben die Stunden aus Jira bei der nächsten Synchronisation auf der Position 1B

  2. Wenn Stunden von Jira in ein TROI-Projekt auf Position 1A synchronisiert wurden und die Stunden anschließend in TROI umgebucht werden in dasselbe Projekt auf Position 1B, wobei Position 1B in Jira bei einer anderen Aufgabe eingetragen ist:
    → dann werden die Stunden bei der nächsten Synchronisation von der Position 1B gelöscht. Bei der darauffolgenden Synchronisation werden die Stunden wieder auf die Position 1A synchronisiert.

Troubleshooting

Im Jira-Tab werden mehr Stunden angezeigt, als Stunden protokolliert wurden.

...

In einem Task A soll ein Sub-Task B angelegt werden.

  1. Wenn in einem Task A ein Sub-Task B angelegt werden soll, dann kann dieser im Task A neu angelegt und anschließend Stunden darauf protokolliert werden.

  2. Wenn es bereits einen Task B mit Stunden gibt, der zu einem Sub-Task zu Task A konvertiert werden soll, kann dieser erst einmal einem anderen Task C (z.B. Dummy) zugeordnet werden. Anschließend kann in Task A ein Sub-Task angelegt und dabei der bestehende Sub-Task B ausgewählt werden. Sub-Task B wechselt jetzt von Task C zu Task A und die Stunden werden in TROI im Jira-Tab auch nur einmal angezeigt.

Erweitertes Troubleshooting

Meldung

Verhalten

SKIP CP BECAUSE IT IS LOCKED FOR TIME RECORDING

Dieses Verhalten tritt auf, wenn eine bestimmte Kalkulationsposition für die Zeiterfassung gesperrt ist. (kann auch dort Projektstatus, Unterprojekt, etc. ausgelöst werden)

Unable to update estimation: Issue has no assigned employee

Dieses Verhalten tritt auf, wenn ein Jira-Issue keinem Mitarbeiter zugeordnet ist.

Jira API returned nothing

Dieses Verhalten tritt auf, wenn die Jira API keine Daten zurückgibt.

Jira API returned invalid result

Dieses Verhalten tritt auf, wenn die Jira API ein ungültiges Ergebnis zurückgibt.

Billing parent is locked for time recording

Dieses Verhalten tritt auf, wenn das übergeordnete Abrechnungselement für die Zeiterfassung gesperrt ist.

Billing is billed, so it is not possible to edit it

Dieses Verhalten tritt auf, wenn ein bestimmter Zeiterfassungseintrag bereits abgerechnet wurde und daher nicht bearbeitet werden kann.

Billing is invoiced, so it is not possible to edit it

Dieses Verhalten tritt auf, wenn ein bestimmter Zeiterfassungseintrag bereits in Rechnung gestellt wurde und daher nicht bearbeitet werden kann.

Billing is billed, so it is not possible to delete it

Dieses Verhalten tritt auf, wenn ein bestimmter Zeiterfassungseintrag bereits abgerechnet wurde und daher nicht gelöscht werden kann.

Billing is invoiced, so it is not possible to delete it

Dieses Verhalten tritt auf, wenn ein bestimmter Zeiterfassungseintrag bereits in Rechnung gestellt wurde und daher nicht gelöscht werden kann.

No employee found for SMTP address

Dieses Verhalten tritt auf, wenn kein Mitarbeiter für eine bestimmte E-Mail-Adresse gefunden wird.

Multiple employees found for SMTP address

Dieses Verhalten tritt auf, wenn mehrere Mitarbeiter für eine bestimmte E-Mail-Adresse gefunden werden.

Problem finding employee for SMTP address

Dieses Verhalten tritt auf, wenn ein Problem beim Finden eines Mitarbeiters für eine bestimmte SMTP-Adresse auftritt.