Een project koppelen¶
Een project koppelen is een wizard met vier stappen: GitLab-project → Exact-project → wat synchroniseren → overzicht. Elke stap wordt gecontroleerd voordat de volgende opent, en de eerste sync start zodra je bevestigt; je belandt op de pagina van het project en ziet hem draaien.
Druk vanuit de Overzichtpagina op de instapstap, of vanuit Projecten op Sync een project.
Stap 1: het GitLab-project¶
Wanneer de organisatie meer dan één GitLab-verbinding heeft, kies eerst het instance (met één staat de naam er). Zoek dan:
- typ in het projectveld, de lijst filtert mee terwijl je typt (debounced), met het avatar van het project, zijn
group/projectpad en de laatste activiteit; - druk op Volgende zodra een project gemarkeerd is; reeds gekoppelde projecten zijn grijs met een gekoppeld-badge, zodat een project niet tweemaal gekoppeld kan worden.

Stap 2: het Exact-project¶
- Administratie: de Exact-administratie (divisie) waar de uren naartoe gaan; alleen de divisies die voor GitLab Sync ingeschakeld zijn op de verbinding worden aangeboden.
- Exact-project: entweder Bestaande gebruiken (doorzoekbaar op code of beschrijving) of Nieuwe aanmaken. Wanneer je in stap 1
een GitLab-project kiest, wordt de code van het nieuwe project daarvoor ingevuld (bijv.
group/website→WEBSITE), en kies je het projecttype (Time & materials, Vaste prijs, Niet-factureerbaar, Prepaid). - Uurtypes: het uuritem waarmee de regels geboekt worden, voorafgevuld met degene die jouw andere koppelingen in deze administratie het vaakst gebruiken. Leeg laten zodat de persoon in Exact per regel kan kiezen.

Stap 3: wat synchroniseren¶
| Instelling | Betekenis |
|---|---|
| Issues naar WBS | drie kaarten: Issues (elke issue wordt een WBS-activiteit), Milestones (milestones worden WBS-deliverables, issues hun activiteiten) of Uit (geen WBS, alleen uren). Kies Uit wanneer het Exact-project al zijn eigen werkstructuur heeft |
| Alleen deze labels | ingevuld betekent dat alleen issues met ten minste één van deze labels gesynchroniseerd worden (chips; Enter voegt er één toe). Leeg betekent elke issue |
| Sync tijdsgelogd vanaf | de eerste datum op de eerste run, eerdere logs worden niet geïmporteerd (standaard: de eerste dag van de huidige maand). Na de eerste run dekt elke run de laatste 45 dagen, dus deze datum is geen verschuivende vloer |
| Tijdzone | de zone waarin een tijdslage's dag geteld wordt wanneer GitLab en Exact het oneens zijn over data (standaard: de zone van je browser) |
| Back-sync status | schakel de exact::submitted / approved / rejected labels terug naar GitLab. Standaard aan wanneer het token schrijven kan; vereist een token met de api scope. De waarschuwing onder de schakelaar zegt precies wat er geschreven wordt: een label op de issue, en een interne notitie bij een weigering |

Stap 4: overzicht¶
Alles in één lijst: het project en instance, de administratie, het Exact-project (of de nieuwe code en type), het uurtypes, de WBS-modus, de labelfilter, de datum en zone, en de back-sync. Druk op Aanmaken & eerste sync uitvoeren:

Je wordt naar de pagina van het project gebracht terwijl de eerste run bezig is.
De pagina van het project¶
Elk gekoppeld project heeft zijn eigen pagina (Projecten → de projectnaam):

- Koptekst: het GitLab- en Exact-project als links, de status-badge, en de acties Sync nu en Pauzeren / Hervatten.
- Activiteit: elke run met zijn trigger (schema, handmatig, webhook), wanneer hij draaide, hoe lang hij duurde en een samenvatting van wat hij deed; runs die ongekoppelde gebruikers vermelden linken rechtstreeks naar Personen.
- Conflicten: de runs vonden een verschil dat de sync niet zelf mag beslissen (een urenlijn die al goedgekeurd was in Exact, bijvoorbeeld). Elke conflict zegt wat GitLab heeft en wat Exact heeft; de uren blijven waar ze zijn totdat een persoon actie onderneemt. Zie Conflicten.
- Instellingen: de sync-modus (Automatisch elke … minuten of Alleen handmatig), de back-sync-schakelaar en een gevaarzone om Koppeling verwijderen. Een koppeling verwijderen stopt de sync; de uren die al in Exact staan blijven daar.
Pauzeren en verwijderen¶
- Pauzeren (in de koptekst) houdt de koppeling en haar instellingen vast; runs worden overgeslagen tot je hervat. Gebruik dit voor een project dat even stil ligt.
- Koppeling verwijderen (Instellingen → gevaarzone) vraagt om bevestiging en verwijdert de koppeling en haar sync-state. De concept-urenlijnen en WBS-regels die aangemaakt waren in Exact worden niet aangeraakt.