ReservationOccurrence (Reserveringsinstantie)
ReservationOccurrence is de groeperende entiteit boven ReservationLine: één herhalende reservering (bv. een wekelijkse vergadering) bestaat uit één ReservationOccurrence met meerdere gekoppelde ReservationLines per tijdslot. Via de Context (SpaceReservation, Event, Catering, Visit, PoolCarReservation, Exchange) en een uitgebreide statusset — inclusief de nuance ProcessedConflict en PartiallyProcessed — maakt Ultimo zichtbaar in welke mate een terugkerende reservering succesvol is verwerkt. De entiteit houdt ook de aanvrager (Applicant) en statushistorie met medewerker/tijdstip bij voor elke transitie.
Entiteitsnaam: ReservationOccurrence
Databasetabel: ReservationOccurrence
Contextsbewerken
| Value | Naam | Beschrijving |
|---|---|---|
| 0 | ReservationOccurrenceContext.None | Standaard |
| 1 | ReservationOccurrenceContext.SpaceReservation | Zaalreservering |
| 2 | ReservationOccurrenceContext.Event | Evenement |
| 4 | ReservationOccurrenceContext.Catering | Catering |
| 8 | ReservationOccurrenceContext.Visit | Bezoek |
| 16 | ReservationOccurrenceContext.PoolCarReservation | Poolautoreservering |
| 256 | ReservationOccurrenceContext.Exchange | Outlook-reservering |
Statussenbewerken
| Value | Naam | Beschrijving |
|---|---|---|
| -1 | ReservationOccurrenceStatus.Trash | Trash |
| 0 | ReservationOccurrenceStatus.None | None |
| 1 | ReservationOccurrenceStatus.Created | Open |
| 2 | ReservationOccurrenceStatus.Requested | Aangevraagd |
| 4 | ReservationOccurrenceStatus.RequestedConflict | Aangevraagd met conflicten |
| 8 | ReservationOccurrenceStatus.Processed | Verwerkt |
| 16 | ReservationOccurrenceStatus.ProcessedConflict | Verwerkt met conflicten |
| 32 | ReservationOccurrenceStatus.PartiallyProcessed | Deels verwerkt |
| 64 | ReservationOccurrenceStatus.PartiallyProcessedConflict | Deels verwerkt met conflicten |
| 128 | ReservationOccurrenceStatus.Canceled | Geannuleerd |
Belangrijkste propertiesbewerken
De entiteit heeft in totaal 41 properties. Hieronder de belangrijkste; gebruik
lookup_entity("ReservationOccurrence")voor de volledige lijst.
| Property | Type | Kolom | Nullable | Default | Omschrijving |
|---|---|---|---|---|---|
| Id.Reservation | Reservation | RESOCRESID | Nee | Verwijzing naar de bovenliggende Reservation waartoe deze instantie behoort | |
| Applicant | Employee | RESOCAPPLICANTEMPID | Ja | Medewerker die de reservering heeft aangevraagd | |
| EndDate | DateTime? | RESOCENDDATE | Ja | Einddatumtijd van de (herhalende) reserveringsperiode | |
| LastChange | DateTime? | RESOCLASTCHANGE | Ja | Tijdstip van de laatste wijziging aan de reserveringsinstantie | |
| LastEmailDate | DateTime? | RESOCLASTEMAILDATE | Ja | Tijdstip waarop de laatste e-mailnotificatie voor deze instantie is verstuurd | |
| ProviderMutationDate | DateTime? | RESOCPROVIDERMUTDATE | Ja | Laatste mutatiedatum vanuit de externe provider (bijv. Exchange/Outlook) | |
| RecordChangeDate | DateTime? | RESOCRECCHANGEDATE | Ja | Laatste wijzigingsdatum (gezet door trigger TR_RESERVATIONOCCURRENCE) | |
| RecordCreateDate | DateTime? | RESOCRECCREATEDATE | Ja | SYSDATETIME | Aanmaakdatum van het record |
| Site | Site | RESOCSITID | Ja | Vestiging waaraan de reserveringsinstantie is gekoppeld | |
| StartDate | DateTime? | RESOCSTARTDATE | Ja | Begindatumtijd van de (herhalende) reserveringsperiode | |
| StatusCanceledDate | DateTime? | RESOCCANCELEDDATE | Ja | Tijdstip waarop de instantie is geannuleerd | |
| StatusCanceledEmployee | Employee | RESOCCANCELEDEMPID | Ja | Medewerker die de annulering heeft uitgevoerd | |
| StatusCreatedDate | DateTime? | RESOCCREATEDDATE | Ja | Tijdstip waarop de instantie is aangemaakt | |
| StatusCreatedEmployee | Employee | RESOCCREATEDEMPID | Ja | Medewerker die de instantie heeft aangemaakt | |
| StatusPartiallyProcessedConflictDate | DateTime? | RESOCPARTIALLYPROCESSEDCONFLICTDATE | Ja | Tijdstip waarop de status 'Deels verwerkt met conflicten' is ingesteld | |
| StatusPartiallyProcessedConflictEmployee | Employee | RESOCPARTIALLYPROCESSEDCONFLICTEMPID | Ja | Medewerker die de status 'Deels verwerkt met conflicten' heeft ingesteld | |
| StatusPartiallyProcessedDate | DateTime? | RESOCPARTIALLYPROCESSEDDATE | Ja | Tijdstip waarop de status 'Deels verwerkt' is ingesteld | |
| StatusPartiallyProcessedEmployee | Employee | RESOCPARTIALLYPROCESSEDEMPID | Ja | Medewerker die de status 'Deels verwerkt' heeft ingesteld | |
| StatusProcessedConflictDate | DateTime? | RESOCPROCESSEDCONFLICTDATE | Ja | Tijdstip waarop de status 'Verwerkt met conflicten' is ingesteld | |
| StatusProcessedConflictEmployee | Employee | RESOCPROCESSEDCONFLICTEMPID | Ja | Medewerker die de status 'Verwerkt met conflicten' heeft ingesteld | |
| StatusProcessedDate | DateTime? | RESOCPROCESSEDDATE | Ja | Tijdstip waarop de volledige verwerking is afgerond | |
| StatusProcessedEmployee | Employee | RESOCPROCESSEDEMPID | Ja | Medewerker die de volledige verwerking heeft afgerond | |
| StatusRequestedConflictDate | DateTime? | RESOCREQUESTEDCONFLICTDATE | Ja | Tijdstip waarop de aanvraag met conflicten is ingediend | |
| StatusRequestedConflictEmployee | Employee | RESOCREQUESTEDCONFLICTEMPID | Ja | Medewerker die de aanvraag met conflicten heeft ingediend | |
| StatusRequestedDate | DateTime? | RESOCREQUESTEDDATE | Ja | Tijdstip waarop de aanvraag is ingediend | |
| StatusRequestedEmployee | Employee | RESOCREQUESTEDEMPID | Ja | Medewerker die de aanvraag heeft ingediend | |
| SystemCompany | Company | RESOCCOMPID | Nee | Bedrijf waartoe de reserveringsinstantie behoort | |
| Id.Id | UltimoString(4) | RESOCID | Nee | Volgnummer dat samen met Id.Reservation de samengestelde primaire sleutel vormt |
Relaties met andere entiteitenbewerken
| Property | Verwijst naar | Nullable |
|---|---|---|
| Id.Reservation | Reservation | Nee |
| Applicant | Employee | Ja |
| Site | Site | Ja |
| StatusCanceledEmployee | Employee | Ja |
| StatusCreatedEmployee | Employee | Ja |
| StatusPartiallyProcessedConflictEmployee | Employee | Ja |
| StatusPartiallyProcessedEmployee | Employee | Ja |
| StatusProcessedConflictEmployee | Employee | Ja |
| StatusProcessedEmployee | Employee | Ja |
| StatusRequestedConflictEmployee | Employee | Ja |
| StatusRequestedEmployee | Employee | Ja |
| SystemCompany | Company | Nee |
Onderliggende / verwijzende entiteiten (1-op-veel)bewerken
De volgende entiteiten verwijzen naar ReservationOccurrence:
| Entiteit | Via property |
|---|---|
| InternalCharge | ReservationOccurrence |
| InternalChargeCreate | ReservationOccurrence |
| InternalChargeLine | ReservationOccurrence |
| ReservationLine | ReservationOccurrence |
Tips voor consultantsbewerken
- Één instantie, meerdere regels: ReservationOccurrence groepeert de bijbehorende ReservationLines. Verwijder nooit een instantie zolang er actieve reserveringsregels aan hangen; gebruik de annuleringsstatus om de gehele herhalende reeks te beëindigen.
- Conflictstatus als signaal: Statussen
RequestedConflict(4),ProcessedConflict(16) enPartiallyProcessedConflict(64) geven aan dat minstens één tijdslot in de herhaling een bezettingsconflict heeft. Behandel deze status actief via een workflow (notificeer aanvrager, stel alternatief voor) in plaats van de reservering als voltooid te markeren. PartiallyProcessed: Status 32/64 treedt op wanneer slechts een deel van de herhaalde tijdsloten beschikbaar en verwerkt kon worden. Controleer welke ReservationLines de statusConflict(4) hebben om de blokkerende slots te identificeren.- Exchange-synchronisatie: Bij context
Exchange(256) spiegelt elke ReservationOccurrence een Outlook-afspraakserie.ProviderMutationDateenLastChangezijn cruciaal om de synchronisatiestatus te bewaken; een hoogResocExchangeFailCount(uit DB-defaults) wijst op een structureel synchronisatieprobleem. NoShow-registratie: De DB-kolomResocNoShow(default 0) legt vast of de aanvrager niet is komen opdagen — relevant voor analyses van ruimtebenutting en het bijsturen van reserveringsbeleid.- Interne verrekening: Via de koppeling naar InternalCharge worden reserveringskosten doorbelast. De InternalCharge wordt op het niveau van de Occurrence aangemaakt en uitgesplitst naar de onderliggende ReservationLines.
Database Detailsbewerken
De tabel dba.ReservationOccurrence bevat 40 kolommen, 1 eigen trigger(s), 0 externe triggers en 12 foreign keys.
Kolommen gezet door triggersbewerken
Deze kolommen worden automatisch bijgewerkt door database-triggers en mogen niet handmatig worden aangepast.
| Kolom | Type | Trigger(s) |
|---|---|---|
ResocRecChangeDate |
datetimeoffset(7) | TR_RESERVATIONOCCURRENCE |
Belangrijke defaultsbewerken
| Kolom | Default |
|---|---|
ResocContext |
0 |
ResocRecStatus |
0 |
ResocExchangeFailCount |
0 |
ResocNoShow |
0 |
ResocNumberOfPersons |
0 |
ResocRecCreateDate |
sysdatetimeoffset() |
ResocTransferNextTime |
0 |
Brondatabewerken
Let op: De wiki-samenvatting hierboven toont een curated subset van properties en praktische consultant-tips. Voor ground truth (exacte kolomnamen, alle properties, defaults, triggers) gebruik de onderstaande tools.
- Entity-definitie —
lookup_entity("ReservationOccurrence")· reference/entities/ReservationOccurrence Alle properties, contexts en statussen. Bron:Entities.xml. - DB-schema —
lookup_table_schema("ReservationOccurrence")· reference/tables/ReservationOccurrence Alle DB-kolommen, triggers, computed columns en defaults. Bron:database-schema.json. - Gerelateerde workflows —
find_workflows("", entity="ReservationOccurrence")Alle Before/After Save events en andere workflow-ActionFields. Bron:workflows.xml.
Zie ookbewerken
- reserveringen - Overzicht van het reserveringsproces in Ultimo
- reservation-line - Individuele tijdslotregels onder de instantie
- reservable-object - De gereserveerde objecten
- internal-charge - Interne verrekening gekoppeld aan reserveringsinstanties
- employee - Aanvrager en statusmedewerkers