ProcessFunction (Procesfunctie)
De ProcessFunction-entiteit representeert functionele posities in een installatie of vloot. Een procesfunctie beschrijft de functie (bijv. "Pomp P-101"), terwijl equipment het fysieke object beschrijft dat in die positie is ingebouwd. Dit maakt het mogelijk equipment te wisselen zonder de functiehistorie te verliezen.
Entiteitsnaam: ProcessFunction
Databasetabel: ProcessFunction
Primaire sleutel: PRFID (nvarchar 14)
Contextsbewerken
| Value | Naam | Beschrijving |
|---|---|---|
| 0 | ProcessFunctionContext.None | Procesfunctie |
| 1 | ProcessFunctionContext.ProcessFunction | Procesfunctie |
| 2 | ProcessFunctionContext.Configuration | Configuratie |
| 4 | ProcessFunctionContext.Fleet | Fleet |
| 32768 | ProcessFunctionContext.Object | Object |
| 65536 | ProcessFunctionContext.Complex | Complex |
| 131072 | ProcessFunctionContext.Route | Traject |
Statussenbewerken
| Value | Naam | Beschrijving |
|---|---|---|
| -1 | ProcessFunctionStatus.Trash | Prullenbak |
| 0 | ProcessFunctionStatus.None | Geen |
| 1 | ProcessFunctionStatus.Active | Actief |
| 2 | ProcessFunctionStatus.Created | Op te voeren |
| 4 | ProcessFunctionStatus.Borrowed | Uitgeleend |
| 8 | ProcessFunctionStatus.Missing | Vermist |
| 16 | ProcessFunctionStatus.ToDelete | Af te voeren |
| 32 | ProcessFunctionStatus.ToMove | Te verplaatsen |
Belangrijkste propertiesbewerken
| Property | Type | Kolom | Omschrijving |
|---|---|---|---|
| Id | UltimoString(14) | PRFID | Procesfunctie-ID |
| Description | UltimoString(200) | PRFDESCR | Omschrijving |
| Code | UltimoString(12) | PRFCODE | Code |
| Equipment | Equipment | PRFEQMID | Huidig ingebouwd equipment |
| EquipmentType | EquipmentType | PRFEQMTID | Equipmenttype |
| PartOfProcessFunction | ProcessFunction | PRFPARTOFPRFID | Bovenliggende procesfunctie |
| Location | Location | PRFLOCID | Locatie |
| Site | Site | PRFSITID | Vestiging |
| Space | Space | PRFSPCID | Ruimte |
| Department | Department | PRFDEPID | Afdeling |
| CostCenter | CostCenter | PRFCCRID | Kostenplaats |
| Critical | Boolean | PRFCRITICAL | Kritisch |
| CriticalityScore | Decimal | PRFSCORECRITICAL | Kritikaliteitsscore |
| RiskClass | RiskClass | PRFRISCID | Risicoklasse |
| PurchasePrice | CompanyMoney | PRFPURCHPRICE | Aanschafprijs |
| ReplacementCost | CompanyMoney | PRFREPLCOST | Vervangingskosten |
| InstallDate | Date? | PRFINSTDATE | Installatiedatum |
| SerialNumber | UltimoString(40) | PRFSERIALNR | Serienummer |
| CostCurrentYear | CompanyMoney | PRFMAINTYEAR | Kosten huidig jaar (readonly) |
| TotalCost | CompanyMoney | PRFMAINTTOTAL | Totale kosten (readonly) |
| ProductionLossPerHour | CompanyMoney | PRFPRODUCTIONLOSSPERHOUR | Productieverlies per uur |
| GeocodeX / GeocodeY | Decimal | PRFGEOCODEX/Y | GIS-coordinaten |
Functionaliteit & property-gedragbewerken
Veel ProcessFunction-properties worden niet alleen handmatig ingevuld maar door workflows gelezen en doorgegeven aan onderliggende entiteiten. Onderstaande paragrafen beschrijven het gedrag van de belangrijkste velden; gebruik lookup_property_usage("ProcessFunction", "<property>") voor de volledige, actuele lijst workflows per property en lookup_workflow("<naam>") voor de XML.
Kostendragers (
CostCenter,Department,Site) — Dit is de meest gebruikte read-kant van ProcessFunction: ~6 workflows lezen elk van deze drie velden om ze te kopiëren naar onderliggende objecten.PmWorkOrder_CreateJobs_ProcessCreatedJob_SetCostCarriersgebruiktCostCenter,DepartmentenSitevan de procesfunctie bij het aanmaken van PM-jobs, zodat kosten automatisch op de juiste dragers terechtkomen.PurchaseLine_CopyDataFromEquipmentProcessFunctionenPurchaseRequestLine_CopyValuesFromEquipmentOrProcessFunctiondoen hetzelfde voor inkoopregels en bestelaanvragen;InvoiceLine_CopyDataFromEquipmentProcessFunctionvoor factuurregels;WarehouseServeOut_GetCostCarriersvoor magazijnuitgifte. Het wijzigen van een kostendrager op de procesfunctie heeft daarmee uitwerking op alle toekomstige transacties — bestaande boekingen worden niet automatisch gecorrigeerd. GebruikProcessFunction_ChangeCostCenter,ProcessFunction_ChangeDepartmentenProcessFunction_ChangeSiteom de overerving consistent te houden.Department— Naast het overerven van de afdeling schrijftProcessFunction_ChangeDepartmentdit veld. Twee workflows filteren opDepartmentbij het openen van de storingsregistratie-dialoog (Dialog_RegisterDowntime_GetProcessFunctionList,Dialog_SelectObjectAndRegisterDowntime), waardoor medewerkers alleen procesfuncties van hun eigen afdeling te zien krijgen.EquipmentType— Wordt door 11 workflows gelezen maar nooit rechtstreeks geschreven via een workflow.Job_ChangeEquipmentleest het type om contextspecifiek gedrag in te schakelen;Dialog_RegisterDowntime_GetComponentList,Dialog_RegisterDowntime_GetFailTypeListenDialog_RegisterDowntime_GetRemedyListgebruiken het om de lijsten in de storingsregistratie te filteren op de juiste componenttypes, storingsoorzaken en remedies.Job_CreateConditionMeasurementsenProcessFunction_CopyFeaturesAndSparePartsFromEquipmentTypelezen het type om features en reserveonderdelen over te nemen. Consultanttip: wijs altijd eenEquipmentTypetoe — ontbreekt dit, dan vallen diverse dialoogfilters terug op een lege lijst.UseSpecificFailTypes— Geschreven doorActionField1533(een configureerbare knop). Als dit vlag optruestaat, filterenDialog_RegisterDowntime_GetFailTypeListenJob_SetFailTypeEmpty/Job_ResetStructuredFailureDataFieldsde beschikbare storingstypes op de lijst die specifiek aan de procesfunctie is gekoppeld in plaats van de algemene typestructuur. Relevant voor installaties met een afwijkend storingstype-schema.IndicatorValueenIndicatorValueLastRecordingDate—IndicatorValueLastRecordingDate(kolomPRFDATESTATE) wordt bijgewerkt doorActionField536telkens wanneer een nieuwe meterwaarde wordt ingevoerd. De workflowsProcessFunction_ProcessIndicatorValuesenProcessFunction_CreateProcessFunctionMeasurementPointlezen het veld om te bepalen of een nieuw meetpunt aangemaakt of bijgewerkt moet worden.IndicatorValue(kolomPRFSTATE) wordt geconsolideerd doorJob_CreateOrUpdateDefaultMeasurePoint. Dit duo vormt de basis voor conditiebewaking op procesfunctieniveau.PartOfProcessFunction(hiërarchie) — Nooit door een workflow beschreven, maar gefilterd doorProcessFunction_PreTrashenEquipmentOrProcessFunction_CopyMaintenanceStateCheckAndExecuteom de hiërachische structuur te bewaken: een procesfunctie met nog actieve kinderen mag niet worden verwijderd.Job_SearchForConditionFlawPresentsfiltert eveneens op ouder-kind om storingspresenties te koppelen aan het juiste installatieniveau.ProcessFunction_AddObjectObjectRiskAnalysisRecordsleestPartOfProcessFunctionom risicoanalyse-records voor de gehele deelboom aan te maken.CurrentMaintenanceState— Wordt nooit direct door een workflow geschreven (de waarde wordt via een aparte state-machine bijgehouden), maar door drie ArcGIS-rapportageworkflows gelezen (ArcGIS_ReportMaintenanceStatePerProcessFunction,ArcGIS_ReportJobsPerProcessFunction,ArcGIS_ReportConditionFlawPresentsPerProcessFunction) en als filtercriterium gebruikt in kaartlagen. Daarnaast validerenPmJob_PreApprove_ValidateenPmWorkOrder_PreApprove_ValidatedeStatusvan de gekoppelde procesfunctie vóór goedkeuring van PM-orders — een niet-actieve of verwijderde procesfunctie blokkeert de goedkeuring.
Sub-entiteitenbewerken
ProcessFunctionJobbewerken
Koppeling tussen procesfunctie en job. PK: PRFJPRFID + PRFJJOBID.
ProcessFunctionSparePartbewerken
Reserveonderdelen gekoppeld aan de procesfunctie. PK: PRFSPPRFID + PRFSPARTID.
| Property | Type | Omschrijving |
|---|---|---|
| Article | Article | Artikel (reserveonderdeel) |
| Quantity | Decimal | Benodigde hoeveelheid |
| SerialNumber | UltimoString(41) | Serienummer |
| Description | UltimoString(200) | Omschrijving |
Statussen: Standaard (1), Standaard aangepast (2), Handmatig toegevoegd (4).
Relaties met andere entiteitenbewerken
| Verwijst naar | Omschrijving |
|---|---|
| equipment | Ingebouwd equipment (1-op-1 koppeling) |
| job | Werkorders op deze procesfunctie |
| pm-workorder | PO-modellen |
| contract | Servicecontracten (via ProcessFunctionServiceContract) |
| location | Fysieke locatie |
| ProcessFunctionHierarchy | Hierarchische structuur |
| ProcessFunctionMeasurementPoint | Meetpunten |
| ProcessFunctionCostYear | Kostenhistorie per jaar |
Tips voor consultantsbewerken
- Procesfunctie vs. Equipment: De procesfunctie is de functionele positie, equipment is het fysieke object. Bij Infra en Fleet wordt vaak alleen de procesfunctie gebruikt.
- Hierarchie: Via
PartOfProcessFunctionen ProcessFunctionHierarchy wordt de installatiestructuur opgebouwd.TopOfProcessFunctionIdgeeft het topniveau. - Kritikaliteit: Het veld
CriticalityScorewordt berekend via risicoanalyse (ObjectRiskAnalysis). DeRiskClassgeeft de resulterende risicoklasse. - Kostenregistratie: Kosten worden automatisch bijgehouden in
CostCurrentYearenTotalCost. ProcessFunctionCostYear bevat de historische kosten per jaar (tot 40 jaar). - GIS-integratie: Via
GeocodeX,GeocodeY,FromGeocodeX,TillGeocodeXwordt de procesfunctie op een kaart gepositioneerd (Infra-trajecten). - Context Fleet/Object: Bij Fleet wordt de procesfunctie vaak als "vlootnummer" gebruikt met context Object (32768).
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("ProcessFunction")· reference/entities/ProcessFunction Alle properties, contexts en statussen. Bron:Entities.xml. - DB-schema —
lookup_table_schema("ProcessFunction")· reference/tables/ProcessFunction Alle DB-kolommen, triggers, computed columns en defaults. Bron:database-schema.json. - Gerelateerde workflows —
find_workflows("", entity="ProcessFunction")Alle Before/After Save events en andere workflow-ActionFields voor ProcessFunction. Bron:workflows.xml. - Property-gebruik —
lookup_property_usage("ProcessFunction", "CostCenter")· reference/properties/ProcessFunction Welke workflows de kostendrager-properties van ProcessFunction lezen, schrijven of filteren. Bron:workflows.xml. - Workflow-XML van een vuller —
lookup_workflow("ProcessFunction_ChangeCostCenter")De logica achter het bijwerken van de kostenplaats op een procesfunctie; representatief voorProcessFunction_ChangeDepartmentenProcessFunction_ChangeSite. Bron:workflows.xml.
Het volledige overzicht van álle ProcessFunction-properties met hun schrijvende/lezende/filterende workflows staat in reference/properties/ProcessFunction.
Zie ookbewerken
- equipment - Fysieke assets
- location - Locaties
- pm-workorder - PO-modellen
- risk-analysis - Risicoanalyse / kritikaliteit
- job - Werkorders