Categorie: entities
Bijgewerkt: 2026-04-05
job werkorder servicedesk onderhoud storingsmelding
Job (Werkorder)
De Job-entiteit is de centrale entiteit voor werkzaamheden in Ultimo. Jobs worden gebruikt voor correctief onderhoud, storingen, servicedesk-meldingen, selfservice-aanvragen, inspecties en veel meer. Door het uitgebreide context-systeem kan een Job in meer dan 20 verschillende verschijningsvormen voorkomen.
Entiteitsnaam: Job
Databasetabel: Job
Primaire sleutel: JOBID (nvarchar 12)
| Value |
Naam |
Beschrijving |
| 0 |
JobContext.None |
TD |
| 1 |
JobContext.TD |
TD (Technische Dienst) |
| 2 |
JobContext.SpaceReservation |
Zaalreservering |
| 4 |
JobContext.ServiceDesk |
Servicedesk |
| 8 |
JobContext.TaskPackage |
Takenpakket |
| 16 |
JobContext.ConditionMeasure |
Conditiemeting |
| 32 |
JobContext.ItilChangeJob |
Wijzigingsjob |
| 64 |
JobContext.ITKnownError |
Bekende fout |
| 128 |
JobContext.ITIncident |
Incident |
| 256 |
JobContext.ITProblem |
Probleem |
| 512 |
JobContext.Instrument |
Instrument |
| 1024 |
JobContext.Action |
Actiepunt HSE |
| 2048 |
JobContext.Building |
Gebouw |
| 4096 |
JobContext.Cleaning |
Schoonmaak |
| 8192 |
JobContext.Move |
Verhuizing |
| 16384 |
JobContext.Fleet |
Fleet |
| 32768 |
JobContext.Infra |
Infra |
| 65536 |
JobContext.InfraConditionMeasure |
Conditiemeting infra |
| 131072 |
JobContext.ServiceRequest |
Serviceaanvraag |
| 262144 |
JobContext.ItilChange |
Wijziging |
| 524288 |
JobContext.SelfService |
Selfservice |
| 1048576 |
JobContext.SurveyAction |
Actiepunt evaluatie |
| 2097152 |
JobContext.LinkedIncident |
Gekoppeld incident |
| 4194304 |
JobContext.ActionItem |
Actiepunt |
| 8388608 |
JobContext.RootCauseAnalysisAction |
RCA action item |
| Value |
Naam |
Beschrijving |
| -1 |
JobStatus.Trash |
Trash |
| 0 |
JobStatus.None |
None |
| 1 |
JobStatus.Created |
Open |
| 2 |
JobStatus.Approved |
Goedgekeurd |
| 4 |
JobStatus.Active |
Actief |
| 16 |
JobStatus.Finished |
Gereed |
| 32 |
JobStatus.Closed |
Gesloten |
| 64 |
JobStatus.Requested |
Aanvraag |
| 4096 |
JobStatus.Completed |
Compleet |
| 8192 |
JobStatus.Postponed |
Uitgesteld |
Belangrijkste propertiesbewerken
| Property |
Type |
Kolom |
Nullable |
Omschrijving |
| Id |
UltimoString(12) |
JOBID |
Nee |
Uniek job-ID |
| Description |
UltimoString(200) |
JOBDESCR |
Ja |
Omschrijving |
| Status |
Status |
JOBRECSTATUS |
Nee |
Recordstatus |
| Context |
Context |
JOBCONTEXT |
Nee |
Context (default: 1) |
| Priority |
Priority |
JOBPRIID |
Ja |
Prioriteit |
| Duration |
Decimal |
JOBDURATION |
Nee |
Doorlooptijd |
| Hours |
Decimal |
JOBHOURS |
Nee |
Gerealiseerde uren (readonly) |
| HoursCalculated |
Decimal |
JOBHOURSCALC |
Nee |
Berekende uren (readonly) |
| HoursPlanned |
Decimal |
JOBPLANHOURS |
Nee |
Geplande uren (readonly) |
| ScheduledStartDate |
DateTime? |
JOBSCHSTARTDATE |
Ja |
Geplande startdatum |
| TargetDate |
DateTime? |
JOBTARGETDATE |
Ja |
Streefdatum |
| PercentageComplete |
Decimal |
JOBPERCCOMPLETE |
Nee |
Voortgangspercentage |
| Tariff |
CompanyMoney |
JOBTARIFF |
Nee |
Uurtarief |
| TotalCost |
CompanyMoney |
JOBTOTALCOST |
Nee |
Totale kosten (readonly/computed) |
| TotalCalculated |
CompanyMoney |
JOBTOTALCALC |
Nee |
Totaal berekend (readonly/computed) |
| Text |
UltimoString |
JOBTEXT |
Ja |
Vrij tekstveld |
| ReportText |
UltimoString |
JOBREPORTTEXT |
Ja |
Meldtekst |
| FeedbackText |
UltimoString |
JOBFEEDBACKTEXT |
Ja |
Terugkoppeltekst |
| Canceled |
Boolean |
JOBCANCELLED |
Nee |
Geannuleerd |
| IsMultijob |
Boolean |
JOBISMULTIJOB |
Nee |
Is multijob |
| SelfServiceRequest |
Boolean |
JOBSELFSERVICEREQUEST |
Nee |
Selfservice-aanvraag |
| Reporter |
UltimoString(41) |
JOBREPORTEMPID |
Ja |
Melder |
| StatusCreatedDate |
DateTime? |
JOBOPENDATE |
Ja |
Aanmaakdatum |
| StatusFinishedDate |
DateTime? |
JOBFINISHDATE |
Ja |
Gereeддatum |
| StatusClosedDate |
DateTime? |
JOBCLOSEDATE |
Ja |
Sluitdatum |
Relaties met andere entiteitenbewerken
| Property |
Verwijst naar |
Omschrijving |
| Equipment |
equipment |
Gekoppeld equipment |
| Equipments |
List[EquipmentJob] |
Meerdere equipments |
| WorkOrder |
WorkOrder |
Werkorder/project |
| PmWorkOrder |
PmWorkOrder |
PO-model |
| Project |
project |
Project |
| Employee |
employee |
Uitvoerend medewerker |
| Department |
Department |
Afdeling |
| CostCenter |
CostCenter |
Kostenplaats |
| Priority |
Priority |
Prioriteit |
| FailType |
FailType |
Storingstype |
| Activity |
Activity |
Activiteit |
| WorkOrderType |
WorkOrderType |
Werkordertype |
| Vendor |
Vendor (supplier) |
Leverancier |
| ServiceContract |
ServiceContract |
SLA/Servicecontract |
| BackOffice |
BackOffice |
Backoffice (readonly) |
| SkillCategory |
SkillCategory |
Vakgroep |
| Foreman |
Foreman |
Voorman |
| Site |
Site |
Vestiging |
| ProcessFunction |
ProcessFunction |
Procesfunctie |
| ParentJob |
Job |
Bovenliggende job (multijob) |
| ChildJobs |
List[Job] |
Onderliggende jobs |
| MasterJob |
Job |
Master-job |
| ChangeJob |
Job |
Wijzigingsjob |
| ProblemJob |
Job |
Probleemjob |
| SafetyIncident |
SafetyIncident |
Veiligheidsincident |
| Permits |
List<Permit> |
Werkvergunningen |
| Materials |
List[JobMaterial] |
Materialen |
| Resources |
List[JobResource] |
Resources |
| Externals |
List[JobExternal] |
Externe kosten |
| Tasks |
List[JobTask] |
Taken |
| Tools |
List[JobTool] |
Gereedschappen |
| InspectionLines |
List[JobInspectionLine] |
Inspectielijnen |
| PurchaseLines |
List[PurchaseLine] |
Inkoopregels |
| PurchaseRequestLines |
List[PurchaseRequestLine] |
Bestelaanvraagregels |
| Customer |
Customer |
Klant |
Tips voor consultantsbewerken
- Context is allesbepalend: De context bepaalt welke velden zichtbaar zijn, welke workflows actief zijn en welke statustransities mogelijk zijn. TD (1) is de standaard voor technisch onderhoud.
- Statusflow: De standaard statusflow is: Aanvraag (64) -> Open (1) -> Goedgekeurd (2) -> Actief (4) -> Gereed (16) -> Compleet (4096) -> Gesloten (32). Niet alle statussen worden in elke context gebruikt.
- Multijobs: Via
IsMultijob en Multijob/SubJobs kunnen jobs hiermee worden gebundeld.
- Kostenregistratie: Kosten worden opgebouwd uit uren (WeekLabs), materialen (Materials), externe kosten (Externals), resources (Resources) en gereedschappen (Tools).
- SLA-bewaking: Via
ServiceContract, ServiceContractTargetFinishedDate en gerelateerde velden wordt de SLA-naleving gevolgd.
- Remark-velden: Er zijn veel RemarkChar-, RemarkInt-, RemarkDate- en RemarkText-velden beschikbaar voor klantspecifieke uitbreiding.
- Selfservice: Jobs met context SelfService (524288) worden typisch aangemaakt via het eindgebruikersportaal.
- Werkvergunningen: Via de
Permits-relatie kunnen werkvergunningen worden gekoppeld aan een job.
De tabel dba.Job bevat 308 kolommen -- verreweg de grootste tabel in Ultimo. Hieronder de belangrijkste technische details.
Computed columns (berekende velden)bewerken
| Kolom |
Formule (vereenvoudigd) |
Toelichting |
JobTotalCost |
JobMatCost + JobExtCost + JobTlsCost + JobLabCost + JobPurchCost + JobMemorandumCost |
Totale werkelijke kosten -- som van materiaal, extern, gereedschap, arbeid, inkoop en pro-memorie |
JobTotalCalc |
JobMatCalc + JobExtCalc + JobTlsCalc + JobResCalc + PurchaseLine-kosten + PurchaseRequestLine-kosten |
Totaal berekend (begroot) -- inclusief positieve inkoopkosten |
JobTotalInv |
JobEqmInv + JobMatInv + JobExtInv + JobTlsInv + JobLabInv + JobPurchInv + JobIoTermInv |
Totaal gefactureerd -- som van alle facturatiecomponenten |
JobPurchCalc |
Positieve som van JobPchTotalBookCostExlVat + JobPchTotalBookCostInclVat |
Berekende inkoopkosten (negatieve waarden worden op 0 gezet) |
JobPurchaseRequestCalc |
Idem voor bestelaanvraagregels |
Berekende kosten uit bestelaanvragen |
JobPercCompleteRaw |
JobHours / JobHoursCalc * 100 |
Voortgangspercentage op basis van uren (onafgerond) |
JobHoursToPlan |
max(JobHoursCalc - JobPlanHours, JobHoursToPlanFromResources) - niet-goedgekeurde uren |
Nog te plannen uren |
JobExceedsOriginalTimeEstimate |
1 als gerealiseerde uren (minus niet-goedgekeurd) < geplande uren (minus niet-goedgekeurd) |
Indicator of de tijdsschatting is overschreden |
JobNonServDeskServRequest |
0 als CreatedByServiceDesk of SelfServiceRequest, anders 1 |
Indicator voor niet-servicedesk meldingen |
JobFinalFinishDate |
JobOriginalSchStartDate + JobExecutionDays + JobExtensionDays - 1 |
Uiterste afrondingsdatum inclusief verlengingen |
JobOriginalFinalFinishDate |
JobOriginalSchStartDate + JobExecutionDays - 1 |
Oorspronkelijke uiterste afrondingsdatum |
Kolommen gezet door triggers (selectie van 43 trigger-kolommen)bewerken
Kostengerelateerde kolommen (allemaal decimal(21,5), bijgewerkt vanuit Cost/PurchaseLine/etc.):
| Kolom |
Bron |
Toelichting |
JobMatCalc / JobMatCost / JobMatInv |
JobMat |
Materiaalkosten: berekend / werkelijk / gefactureerd |
JobExtCalc / JobExtCost / JobExtInv |
JobExt |
Externe kosten: berekend / werkelijk / gefactureerd |
JobTlsCalc / JobTlsCost / JobTlsInv |
JobTls |
Gereedschapskosten |
JobResCalc |
JobRes |
Resourcekosten (berekend) |
JobLabCost / JobLabInv |
Cost |
Arbeidskosten / gefactureerd |
JobPurchCost / JobPurchInv / JobPurchCommit |
PurchaseLine |
Inkoopkosten / gefactureerd / commitment |
JobMemorandumCost |
Cost |
Pro-memorie kosten |
JobEqmInv / JobIoTermInv |
InvoiceOutLine / JobInvOutTerm |
Equipment-facturatie / uitbestedings-termijnen |
Urengerelateerde kolommen:
| Kolom |
Type |
Toelichting |
JobHours |
decimal(21,2) |
Gerealiseerde uren (uit uren-boekingen) |
JobHoursCalc |
decimal(21,2) |
Berekende/begrote uren |
JobHoursInv |
decimal(21,2) |
Gefactureerde uren |
JobPlanHours |
decimal(21,2) |
Geplande uren (uit JobSchedulePart) |
JobHoursToPlanFromResources |
decimal(21,2) |
Te plannen uren vanuit resources |
JobUnapprovedHoursCalculated / JobUnapprovedHoursPlanned |
decimal(21,2) |
Niet-goedgekeurde uren |
Statusgerelateerde kolommen:
| Kolom |
Type |
Toelichting |
JobRecStatus |
int |
Status (gezet door trigger bij statuswijziging) |
JobActiveDate / JobActiveEmpId |
datetime / nvarchar |
Datum en medewerker van activering |
JobApprvDate / JobApprvEmpId |
datetime / nvarchar |
Datum en medewerker van goedkeuring |
JobPercComplete |
decimal(21,2) |
Voortgangspercentage (afgerond) |
JobBofId |
nvarchar(4) |
Backoffice-ID |
JobPrsId |
nvarchar(11) |
Persoon-ID |
JobInspectionLines |
int |
Aantal inspectielijnen |
JobRequestedResponse / JobRequestedCustomerSatisfaction |
smallint |
SLA-response en klanttevredenheid |
JobExtensionDays |
int |
Aantal verlengingsdagen |
JobNumberOfMaterials |
int |
Aantal materiaalregels |
Belangrijke defaultsbewerken
| Kolom |
Default |
Toelichting |
JobContext |
1 (TD) |
Standaard context Technische Dienst |
JobRecStatus |
0 (None) |
Standaard status |
JobCreatedByServiceDesk |
0 (false) |
Niet via servicedesk aangemaakt |
JobSelfServiceRequest |
0 (false) |
Geen selfservice-aanvraag |
JobIsMultijob |
0 (false) |
Geen multijob |
JobIsMaster |
0 (false) |
Geen master-job |
JobNoPermit |
0 (false) |
Werkvergunning niet uitgesloten |
JobLotoApplicable |
0 (false) |
LOTO niet van toepassing |
JobUseWorkScheduleForPlanning |
1 (true) |
Werkrooster gebruiken voor planning |
JobUseEquipmentReservation |
1 (true) |
Equipment-reservering gebruiken |
JobAllowMultijobPlanningFieldsToExpand |
1 (true) |
Multijob-planvelden uitklapbaar |
JobConvertedDurationToHours |
1 (true) |
Doorlooptijd omgezet naar uren |
JobRecCreateDate |
sysdatetimeoffset() |
Aanmaakdatum automatisch |
Triggers en externe triggersbewerken
Job heeft 5 eigen triggers (INSERT, UPDATE, INSTEAD OF DELETE, plus 2 summary-triggers) en wordt beinvloed door 40 externe triggers -- het hoogste aantal van alle entiteiten:
- Cost-triggers: Wijzigingen in kostenboekingen updaten alle kostenvelden
- PurchaseLine/PurchaseRequestLine-triggers: Inkoopgerelateerde kostenaggregatie
- JobMat/JobExt/JobTls/JobRes-triggers: Materiaal-, externe-, gereedschaps- en resourceregels
- JobWeek-triggers: Weekplanning-aggregatie
- JobSchedulePart-triggers: Planningsuren-aggregatie
- JobInsp-triggers: Inspectielijnaantallen
- InvoiceOutLine/JobInvOutTerm-triggers: Facturatie-aggregatie
- JobMaintRangeHistory-triggers: Onderhoudsbereik-historie
- BackOffice-triggers: Backoffice-toewijzing
- Project/Incident-triggers: Project- en incident-statuswijzigingen propageren naar de job
- SDefPrsContext-triggers: Procesfunctie-context synchronisatie
- UmmSettings-triggers: Applicatie-instellingen propagatie
Consultanttip: Door de 40 externe triggers is de Job-tabel sterk gekoppeld aan andere entiteiten. Bulkwijzigingen op gerelateerde tabellen (bijv. Cost, PurchaseLine) kunnen significante performance-impact hebben. Het INSTEAD OF DELETE-trigger voorkomt directe verwijdering.