Ga naar inhoud

GitLab Sync voor Exact Online

Boek de tijd die je team logt in GitLab als uren in Exact Online: één concept-regel per persoon, issue en dag. Issues worden WBS-regels, en de goedkeuringsstatus van de uren komt terug in GitLab als labels.

Aan de slag Een project koppelen

Waar het zit

GitLab Sync is een app van het Exact Gateway portaal op https://apps.mvdw-software.com/exact/gitlab-sync/. Je account, organisatie, abonnement en de verbinding met Exact Online zitten in het portaal; deze app synchroniseert GitLab daarmee.

Waarom

Je ontwikkelaars loggen hun tijd in GitLab, omdat dat is waar het werk gebeurt. Jouw administratie en de winstgevendheid van het project zitten in Exact Online. Zonder koppeling moet iemand elk uur met de hand overtypen, en de geboekte uren wijken af van wat er daadwerkelijk gewerkt is: de verkeerde persoon, het verkeerde project, of een dag waarop niemand gelogd heeft.

GitLab Sync koppelt een GitLab-project aan een Exact-project en houdt ze bij elkaar:

  • elke tijdslage in GitLab (issue, merge request of het project zelf) wordt een concept-urenlijn in Exact, één regel per persoon, issue en dag, al op het juiste project en uurtypes;
  • issues en milestones worden WBS-activiteiten (en deliverables), zodat de werkstructuur volgt op de GitLab-structuur;
  • wanneer iemand de uren indient, goedkeurt of weigert in Exact, gaat het label terug naar GitLab (exact::submitted, exact::approved, exact::rejected), en een weigering laat een intern notitie achter;
  • personen worden automatisch gekoppeld via hun e-mailadres, dus een tijdslage geboekt door @jdoe belandt op Jans medewerkerrecord zonder dat iemand er iets voor hoeft te doen.

Ontwikkelaars blijven werken in GitLab; het beheer keurt de concept-regels in Exact goed zoals gewoonlijk.

Een gekoppeld project, aan het synchroniseren:

De projectenpagina: twee gekoppelde projecten met hun status, laatste sync en een Sync nu-knop

Hoe het samenkomt

flowchart TB
    subgraph gl ["GitLab (gitlab.com of self-hosted)"]
        T["tijdslages op issues, merge requests, projecten"]
        I["issues en milestones"]
        L["exact::submitted / approved / rejected labels"]
    end
    subgraph app ["GitLab Sync"]
        S["sync engine: elke 15 minuten, per gekoppeld project"]
        M["personen: GitLab-gebruiker → Exact-medewerker"]
    end
    subgraph exact ["Exact Online (via de verbinding van het portaal)"]
        H["concept-urenlijnen, één per persoon, issue en dag"]
        W["WBS-activiteiten en deliverables"]
        P["het gekoppelde Exact-project"]
    end

    T -- "lezen" --> S
    I -- "lezen" --> S
    S -- "create / update concept-regels" --> H
    S -- "WBS-regels aanmaken" --> W
    P -- "bestaand, of aangemaakt vanuit GitLab" --> S
    H -- "status: ingediend, goedgekeurd, geweigerd" --> L
    M -- "matchen op e-mailadres" --> S

De organisatie logt één keer in op het portaal, koppelt daar haar Exact Online-administratie (eenmaal per app), en voegt een GitLab-toegangstoken toe in GitLab Sync. Vanaf dat moment draait de sync op schema; een webhook zorgt ervoor dat hij binnen enkele seconden reageert wanneer je GitLab toegang heeft tot internet.

Wat deze documentatie behandelt

Je wilt… Lees
subscriberen, Exact Online verbinden en een GitLab-token toevoegen Aan de slag
een GitLab-project stap voor stap aan een Exact-project koppelen Een project koppelen
begrijpen wat er gesynchroniseerd wordt, wanneer, en wat er gebeurt bij conflicten Hoe de sync werkt
een mislukt token, een mislukken project of uren die niet verschijnen oplossen Probleemoplossing