Kodeoppsett dagbok og ordre (v2)

Oppsett av dagbok styres gjennom koder. Koder legges inn i admin under egen seksjon for dette. Se nedenfor:

Kodeoppsett er litt som tidligere i Veg. Man oppgir:

    • Feltnavn (påkrevd) som styrer hvilke felt i ulike skjema eller dialoger koden benyttes i. Denne vil variere for ulike moduler man er inne i. Se nedenfor
    • Kode (påkrevd) som er en bokstavkode på inntil 6 karakterer
    • Kodebeskrivelse (påkrevd)
    • Tabellnavn (opsjon) som vil være det tabellnavn man også finner i oppsett av digitheme og tema
    • Tag (opsjon) en JSON streng som gir regler for hvordan kode skal oppføre seg eller fungere. Oppsett av tag er nærmere beskrevet her

Feltnavn

Lovlige feltnavn avhengig av modul man er inne i. Formål med kode er vel selvforklarende.:

Dagbok gruppe diary_group_code
Dagbok diary_code
Dagbok detalj guppe detail_group_code
Dagbok detalj detail_code
Ordre hovedfilter order_main_filter
Ordre eier order_owner
Ordre prioritet order_priority
Ordre ansvarlig order_responsible
Ordre type order_type
Meldingstype message_type
Melding kode message_code

Koder og relasjon

Når man velger en kode for et objekt vil dette påvirke hvilke koder man får videre for andre objekter. Den vanligste relasjon vil være:

[Dagboks gruppekode] -> [Dagbokskode] -> [Detalj gruppekode] ->[Detaljkode]

Hvis dagbokskoden er «KONT» vil alle dateljer som begynner på «KONT..» komme opp som forslag. Man kan overstyre dette med såkalte tag’s. Hvis man for koden «KONT» legger inn en tag slik:

[
{
"key": "rel_kode",
"value": "KRE"
}
]

Så vil du få opp alle detaljkoder som begynner på «KRE..» osv..  Merk også at det er en relasjon mellom dagboks gruppekode og dagboks kode. Tilsvarende detalj gruppe og detaljkode. Her kommer en litenspesialhåndtering:

  • Når man velger en dagbokskode så vil detaljkoder først settes for alle som begynner på samme bokstaver som dagbokskoden. Detalgruppekoden settes så og forutsettes å være lik detaljkoden minus siste bokstav. Dvs settes detaljkode til «TITES Skadetype» vil detaljgruoekode settes til «TITE Tilstand egenskaper». Samme gjelder for dagbok.
  • Dersom man oppretter en ny dagbokspost velger man først gruppekode f.eks «UT Tømming utført/bestilt» og man får da opp alle forslag som begynner på «UT..».

En siste ting når det gjelder relasjoner er relasjon mellom ordre og dagbok. Her gjelder følgende:

[Ordretype] -> [Dagboks gruppekode] -> [Dagbokskode] -> [Detalj gruppekode] ->[Detaljkode]

Tag

Bruk av tag gir ny funksjonalitet til kodene man velger. Tag’s er knyttet til kolonnenavn. Dvs noen tag’s fungerer bare for ordrefilter, mens andre fungerer for dagbokskoder osv..

Minimized (Ordrefilter) 

Gjelder for ordre og ordrefilter. Denne tag gjør gir tilgang til å filtrere ordreliste utover det selve ordrefilteret du har valgt gjør.

[ 
  { 
    "key": "minimized", 
    "value": "true" 
  }
]

Sql (Ordrefilter) 

Sql benyttes for å spørre rett i databasen. Standard PostGres SQL benyttes her. Eksemplet nedenfor vil gjøre at ordre som med denen ukes ukenummer vises så lenge ordretypen er en av de man ser i parantesen.

[ 
  { 
    "key": "sql", 
    "value": "week=DATE_PART('week',now()) and type in ('TES','THN','TRE','TPP')" 
  }
]

Rolle (Ordrefilter, Dagbokgruppekode) 

En kan begrense en kode til rolle pålogget bruker har. Nyttig når en i ordrebehandling skal regulere hvem som skal se tømminger av glass og metall versus kompostering. Man legger inn rolle navngitt som i Adaptive.

[
  { 
    "key": "role", 
    "value": "komprimator" 
  }
]

Startvekt (Ordrefilter/Crm) 

Gjelder renovasjon. For enkelte ordre skal startvekt og sluttvekt registreres. Valget gjelder kun for kompostbiler og bruk i renovasjon.

[ 
  { 
    "key": "startweight", 
    "value": "true" 
  }
] 

Crm (Ordrefilter/Crm) 

Gjelder renovasjon. For enkelte ordretyper må vi vite om ordre skal opprettes spesielt for CRM kjøring eller ikke. Med dette valget blir data som skal hentes ned til Ordrebehandling lagt i en egen tabell for raskere nedlasting.Valget gjelder derofor kun for kompostbiler og bruk i renovasjon.

[ 
[
  { 
    "key": "crm", 
    "value": "true" 
  } 
]

Valuetype (Detalj) 

Når en registrere detaljer får man tilgang til en verdifelt vi kan få til å oppføre seg på litt ulike måter. Nedenfor et eksempel på dette. Her vil man presenteres for en nedtrekksmeny hvor en kan velge blandt de values som er angitt. Placeholder norsk/nynorsk gir en tekst som dukker opp i felt før man velger.

[
  {
    "key": "valuetype",
    "value": {
      "type": "list",
      "values": "Bio,PPP,Rest",
      "placeholder_nb": "Vel frå liste",
      "placeholder_nn": "Velg fra liste"
    }
  }
]

Andre varianter er av type er:

  • Date som gir deg en datokalender for å legge inn en dato
  • Number som gir deg mulighet til å legge inn et tall, f.eks vekt
  • Text som er kun en tekst

Showowner (Ordretype) 

Når en lister ordreobjekter kan det være nyttig å skifte til eier/adresse i listen i stedet for default objekttype/objektid. Dette fungerer bare for objekter som har kundenavn, kundenummer og henteadresse som egenskaper.

[
  {
    "key": "show_owner",
    "value": "false"
  },

Rel_code (Ordretype, Dagbokskode) 

Denne er omtalt over og benyttes for å overstyre regel om relasjon mellom koder.

[
 {
    "key": "rel_code",
    "value": "KO"
  }
]