Avvik fra mal¶
Et avvik fra mal er en forskjell mellom det malpakkene sier at instrumentene om bord skal følges opp med, og det masterordren faktisk inneholder av linjer. Malpakken er alltid den gjeldende fasiten: endrer du malen i dag, blir ordrer som ikke stemmer med den nye malen synlige som avvik med én gang.
Avviket vises i fanen «Avvik fra mal» i detaljpanelet på Abonnement → Masterordre, ved siden av fanen «Instrumenter». Tallet i fanens merke er antall avvikslinjer på ordren. Vil du se hele porteføljen på én gang, finnes tilstanden også som kolonnen «Malavvik» i masterordrelista — se avsnittet «Malavvik for hele porteføljen» lenger ned.
Kontrollen er rådgivende. Den skriver ingenting på ordren, endrer ingen datoer og stopper ingen tilbudsutsending — den forteller deg hva som ikke stemmer, og du bestemmer hva som skal gjøres med det.
Slik leser du fanen¶
- Åpne masterordren og velg fanen «Avvik fra mal». Sammenligningen kjøres når du åpner fanen, med tallene slik de står akkurat da.
- Øverst står dekningslinja: hvor mange av instrumentene på ordren som faktisk ble kontrollert, og hvor mange mallinjer sammenligningen leste. Tidspunktet «Beregnet» viser når tallene ble hentet.
- Under står avvikene i en liste du kan filtrere og søke i. Har ordren ingen avvik, står det «Ingen avvik fra malen for denne masterordren» — men dekningslinja blir stående, slik at du ser hva det svaret bygger på.
Bytter du til en annen ordre, beregnes tallene på nytt for den ordren.
Hva sammenligningen faktisk gjør¶
For hvert aktivt instrument på ordren slås instrumentets eget produktnummer opp mot malpakkene. Hver mallinje som treffer, gir et forventet behov: et forbruksprodukt, et antall og en frekvens. Behovene summeres over alle instrumentene på ordren, og sammenlignes med ordrens egne linjer, summert på samme måte.
Nøkkelen i sammenligningen er instrumentgruppe + forbruksproduktnummer. Det er nødvendig fordi den samme forbruksartikkelen — et filter, for eksempel — kan tjene flere instrumenter: produktnummeret alene kan ikke si hvilket instrument en delt ordrelinje dekker.
Summeringen er poenget. Har skipet to instrumenter som hver krever 12 filtre, og ordren har én linje på 24 filtre, er ordren i orden. Ville sammenligningen målt hvert instrument for seg, ville den meldt avvik på begge.
Dette teller ikke med:
- Instrumenter med status Inaktiv, og instrumenter som er tatt ut av registeret. Du har markert at de ikke er om bord.
- Ordrelinjer uten frekvens — engangslinjer, som selve instrumentlinjen fra «Sett inn alle». En engangslevering kan ikke dekke et gjentakende malbehov.
- Ordrelinjer uten produktnummer.
- Ordrelinjer som ikke svarer til noe malbehov. En masterordre under oppfølging inneholder legitimt ting som ikke gjelder noe instrument, og slike linjer er aldri avvik.
De tre avvikstypene¶
| Type | Betyr | Alvorlighet |
|---|---|---|
| Mangler | Malen krever noe som ordren ikke dekker — verken på forventet frekvens eller på noen annen. Antallet i kolonnen «Forventet antall» er det som mangler. | Avvik |
| Overdekket | Ordren har mer enn malen krever, på en frekvens malen faktisk foreskriver. | Info |
| Frekvens | Behovet er dekket, men fra en annen frekvens enn malen forventer — for eksempel årlig der malen sier hver sjette måned, eller leie der malen sier støtte. | Info hvis frekvensen er malens egen alternative frekvens, ellers Avvik |
Underdekning meldes alltid som Mangler, aldri som «Overdekket med negativt fortegn». Er en del av behovet dekket fra en annen frekvens, er det den delen som blir en Frekvens-rad, og kun resten som blir Mangler. Hver fysiske enhet telles én gang: den samme forskjellen kan aldri vises både som mangel og som overdekning.
Frekvens, støtte og leie¶
En mallinje har en støttefrekvens og kan i tillegg ha en leiefrekvens. Sammenligningen
regner de to som hver sin «bøtte»: 6 mnd støtte er ikke det samme behovet som 6 mnd leie, og
12 mnd støtte er ikke det samme som 6 mnd støtte. I kolonnene «Forventet frekvens» og
«Faktisk frekvens» vises bøtta som antall måneder, med «(leie)» bak når linja er en
leielinje — for eksempel 6 mnd og 12 mnd (leie).
Er behovet dekket fra malens egen andre frekvens, er avviket bare informasjon: begge verdiene står i malen, så ordren følger en av dem. Er det dekket fra en helt annen frekvens, er det et reelt avvik. Har en mallinje ingen frekvens satt i det hele tatt, regnes den som 12 måneder.
Kolonnene i lista¶
| Kolonne | Innhold |
|---|---|
| Alvorlighet | «Avvik» eller «Info», som forklart over. |
| Type | Mangler, Overdekket eller Frekvens. |
| Instrumentgruppe | Gruppen instrumentene som utløste behovet tilhører. |
| Produktnr. / Produkt | Forbruksproduktet avviket gjelder — ikke instrumentets eget produktnummer. |
| Forventet antall | Det malen krever for denne gruppen og dette produktet, summert over instrumentene. |
| Faktisk antall | Det ordren har. |
| Forventet frekvens / Faktisk frekvens | Bøttene, som forklart over. |
| Instrumenter | Hvilke instrumenter som bidro til behovet, med serienummer (navn når serienummeret mangler). Er de flere enn tre, navngis de tre første i cella og resten telles opp — «+2 til». Hold pekeren over cella for å se alle; skjermlesere leser også opp hele lista. |
| Ordrelinjer | Hvilke av ordrens linjer som dekket det, med linjenummer — «#10, #20». Samme regel: over tre navngis de tre første, og hele lista ligger bak pekeren. Tomt felt (–) betyr at ingen linje dekket behovet. |
«Ingen avvik» betyr ikke alltid «alt er kontrollert»¶
Dette er den viktigste linja på hele sida. Et instrument uten produktnummer finner ingen malpakke og bidrar med null forventet behov — ordren ser da etterlevende ut selv om ingen har kontrollert den. Derfor står dekningstallene alltid ved siden av avvikene, også når det ikke er noen:
| Tall | Betyr |
|---|---|
| Kontrollerte instrumenter | Hvor mange av instrumentene på ordren som hadde både produktnummer og en treffende, aktiv malpakke — av totalt antall instrumenter. |
| Uten produktnummer | Kan ikke kontrolleres i det hele tatt. Vises bare når tallet er over null. |
| Uten malpakke | Har produktnummer, men ingen aktiv malpakke som utløses av det. |
| Uten gruppe | Mangler instrumentgruppe. De blir sammenlignet, men mot linjer som også mangler gruppe — så treffbildet er upresist. |
| Mallinjer | Hvor mange mallinjer sammenligningen leste. Er dette null, er det ingenting å måle ordren mot. |
Er Uten produktnummer, Uten malpakke eller Uten gruppe over null — ett av dem er nok — vises i tillegg varselet «Dekningen er ikke fullstendig» øverst. Mallinjer og Kontrollerte instrumenter utløser det ikke. Da er lista over avvik ikke fullstendig — rett datagrunnlaget først, og les tallene på nytt.
Manuelt registrerte instrumenter er den vanligste årsaken: instrumenter som fantes om bord fra før og ble ført inn for hånd, har ofte ingen produktnummer- eller gruppeverdi.
Malavvik for hele porteføljen¶
Fanen svarer for én ordre om gangen. Vil du se hvilke av alle masterordrene som har avvik, bruker du kolonnen «Malavvik» i masterordrelista. Den viser samme kontroll, men regnet ut på forhånd av en jobb som kjører om natten.
Kolonnen har fire verdier:
| Verdi | Betyr |
|---|---|
| Avvik fra mal | Kontrollen fant minst ett avvik. Tallet ved siden av er hvor mange avvikslinjer ordren har. |
| Ufullstendig kontroll | Ingen avvik ble funnet, men ordren har instrumenter som ikke kunne sammenlignes — uten produktnummer, uten malpakke eller uten instrumentgruppe. Svaret gjelder bare resten. |
| Kontrollert, ingen avvik | Ordren ble kontrollert, og alt stemte med malen. |
| Ikke beregnet ennå | Den nattlige kontrollen har ikke rukket denne ordren. Dette er ikke det samme som «i orden» — ingen har kontrollert ordren, så det finnes ikke noe svar å lese. |
De to siste ser like ut ved første øyekast fordi begge er nøytrale, og det er nettopp derfor de er holdt tydelig fra hverandre: «Ikke beregnet ennå» har egen tekst, eget ikon og stiplet ramme, og er en egen verdi i filteret. En ordre ingen har kontrollert blir aldri talt, sortert eller filtrert som en ordre som er funnet i orden.
Filtrere: hver av de fire verdiene kan velges for seg i filterraden over lista. Velger du ingen, vises alle ordrer som før. Kan et lagret filter ikke sendes til serveren slik det står, sier lista det med et varsel øverst — du får aldri en ufiltrert liste presentert som om den var filtrert. Er det ingen ordrer igjen etter filtreringen, sier lista at ingen ordrer matcher filteret — ikke at det ikke finnes masterordrer, som er et helt annet svar.
Sortere: klikk på kolonneoverskriften. Første klikk legger de mest alvorlige øverst — avvik, så ufullstendig kontroll, så kontrollert-og-ren, så ikke beregnet — og innenfor hver gruppe etter hvor mange avvik ordren har. Klikker du en gang til, snus rekkefølgen; tredje klikk slår sorteringen av. Alfabetisk sortering ville gitt en misvisende rekkefølge, så kolonnen sorterer bevisst ikke på bokstavene i teksten.
Hvor ferskt er svaret? Ved siden av hver verdi står tidspunktet det ble beregnet — «Beregnet i dag 02:14», «Beregnet i går 02:14», eller dato og klokkeslett når det er eldre. Tallene i lista er altså inntil ett døgn gamle, og det er med vilje: kontrollen er for tung til å regnes på nytt for hver visning. Retter du en ordre i dag, endrer ikke lista seg før neste nattkjøring — men fanen inne på ordren regner alltid live, og er alltid fersk. Er de to uenige, er det fanen som gjelder.
Tekniske detaljer
Kolonnen leser den nattlige cachen, ikke den live beregningen: jobben
«Masterordre: malavvik-cache» skriver én rad per levende masterordre i
wv_Subscription_MasterOrderTemplateDeviation, og lista henter tilstanden med en
LEFT JOIN mot den. En ordre uten cache-rad kommer ut som NotYetCalculated via
ISNULL(...) — den blir aldri borte fra resultatet og aldri lest som
CheckedCompliant. Filteret er en egen fasett i søke-requesten
(templateDeviationState), ikke et vanlig kolonnefilter, og en ukjent verdi avvises
med HTTP 400 i stedet for å utvide resultatet i stillhet.
Hva du gjør med et avvik¶
Systemet foreslår ingenting og retter ingenting. Du har fire reelle handlinger:
- Rett ordren. Legg til, fjern eller juster linjene på masterordren så de dekker behovet. Dette er svaret når malen er riktig og ordren har kommet i utakt med den.
- Rett malen. Stemmer ikke malpakken med hvordan produktet faktisk følges opp, er det malen som skal endres — se Malpakker (produktmaler). Husk at malen er felles: en endring slår ut på alle ordrer med instrumenter i samme gruppe.
- Rett instrumentet. Mangler produktnummer eller instrumentgruppe, hører det hjemme i Instrumentregisteret. Dette er det som fjerner dekningsvarselet.
- La den stå. Et Info-avvik — overdekning, eller en frekvens som treffer malens andre verdi — er ofte helt bevisst, og skal da bare leses som informasjon.
Avviket forsvinner av seg selv så snart årsaken er borte. Det finnes ingen «kvitter ut»-knapp, og ingenting lagres på avviket.
Tilgang¶
| Handling | Datatilgang (Subscription.MasterOrder) |
|---|---|
| Se fanen «Avvik fra mal» | CanView |
Typen konfigureres under Innstillinger → Datatilgang → Abonnement. Har du ikke lesetilgang til masterordrene, får du heller ikke avvikene.
Tekniske detaljer
Sammenligningen kjøres live per ordre, uten mellomlagring:
GET api/SubscriptionTemplateDeviation/master-order/{masterOrderId}. Et eget
endepunkt for flere ordrer om gangen,
POST api/SubscriptionTemplateDeviation/summary, returnerer kun tellere og har et
hardt serverside-tak på 200 ordre-ID-er per kall. Ingen av dem skriver noe.
Regelen lever ett sted, i TemplateDeviationCalculator, og bruker de samme
funksjonene for antall og frekvens som «Sett inn alle» —
TemplateResolutionLogic.ResolveTemplateLineQuantity og
ResolveTemplateFrequency — slik at avviket per definisjon måler ordren mot det
«Sett inn alle» ville produsert i dag. Instrumentene leses fra
wv_Subscription_ServiceObject, mallinjene fra wv_Subscription_TemplateProduct
og ordrelinjene fra wv_Subscription_MasterOrderLine.
Vanlige problemer¶
| Melding / symptom | Årsak og løsning |
|---|---|
| «Kunne ikke beregne avvik fra mal» | Beregningen feilet eller ble avbrutt. Bytt fane og tilbake for å prøve på nytt. Vedvarer det, kontakt konsulent. |
| «Ingen avvik fra malen for denne masterordren», men «Mallinjer» er 0 | Ingen av instrumentene traff en aktiv malpakke, så det finnes ikke noe å måle ordren mot. Kontroller at malpakkene er aktive og at instrumentenes produktnumre står i malenes utløserliste. |
| Fanen viser ingen avvik, men varselet «Dekningen er ikke fullstendig» står øverst | Ett eller flere instrumenter mangler produktnummer, gruppe eller malpakke. «Ingen avvik» gjelder da bare de kontrollerte instrumentene. Rett instrumentdataene og les på nytt. |
| Et instrument du forventet mangler helt i tallene | Instrumentet har status Inaktiv, er tatt ut av registeret, eller er knyttet til en annen masterordre. |
| Avvik av typen Mangler på noe ordren tydelig har | Linja har trolig ingen frekvens (engangslinje) eller en annen instrumentgruppe enn instrumentet. Kontroller frekvens og gruppe på ordrelinja. |
| Ordrelinjer som ikke gjelder noe instrument gir ingen avvik | Det er tilsiktet. Kontrollen går fra malen til ordren, aldri motsatt vei. |
| Kolonnen «Malavvik» i lista sier noe annet enn fanen på ordren | Lista viser nattkjøringens svar, fanen regner live. Har ordren, malen eller instrumentet endret seg siden i natt, er fanen den riktige. Beregningstidspunktet i lista sier hvor gammelt listesvaret er. |
| Alle ordrer står som «Ikke beregnet ennå» | Den nattlige jobben «Masterordre: malavvik-cache» er ikke satt opp eller har ikke kjørt ennå. Kontakt konsulent — det er en administratoroppgave, ikke noe du kan utløse fra lista. |
| Et lagret filter på «Malavvik» gir varselet om at filteret ikke kunne brukes | Filteret er lagret i en form serveren ikke kan ta imot — for eksempel «er ikke lik». Fjern det og velg verdiene på nytt i filterraden. |
Det som ennå ikke finnes¶
- Avvikslinjene for hele porteføljen. Masterordrelista viser tilstanden per ordre og hvor mange avvik den har, men ikke hvilke. Vil du se de enkelte avvikslinjene, må du fortsatt åpne ordren og fanen «Avvik fra mal».
- Umiddelbar oppdatering av lista. Kolonnen «Malavvik» oppdateres av nattkjøringen. Retter du en ordre nå, står den gamle tilstanden i lista til neste natt — det finnes ingen «regn på nytt»-knapp for porteføljen.
- Godkjenning av avvik. Å godkjenne et avvik med begrunnelse, eller å utsette det med en gyldig-til-dato, hører til neste steg i denne flyten og finnes ikke i dag.
- Blokkering. Et avvik hindrer ikke at det sendes tilbud eller ordre. Det er en bevisst beslutning så lenge dekningen kan være ufullstendig.
Se også¶
- Malpakker (produktmaler) — der det forventede behovet defineres
- Instrumentregister på masterordren — der produktnummer og gruppe settes
- Masterordre-liste og detaljvisning
- Begrepsliste