Infoga utdrag |
---|
| Beräkningar |
---|
| Beräkningar |
---|
name | programmering av uträkningar |
---|
nopanel | true |
---|
|
Utdrag |
---|
Resultat | Vårdpersonal | Invånare |
---|
En beräkning som genererar ett resultat | Visas längst ner i det besvarade formuläret i Uppföljning. | Visas för invånaren efter formuläret är inskickat. Inspelningen visar hur det presenteras för invånaren. Titta 26:44 in i videon: https://inera.atlassian.net/wiki/spaces/OFORM/pages/449709127 | Null | “Inget resultat” | Om resultatet blir null visas resultatet inte för invånaren. | Error/Fel | “Beräkningen kunde inte utföras”. “Minst en resultatberäkning kunde inte genomföras. Det kan bero på felaktigt skriven beräkningskod där malladministratören inte hanterar invånarens kombination av svar på ett korrekt sätt. Kontakta malladministratören snarast möjligt så att åtgärder kan vidtas.“ Se skärmbild: Image Modified | Om resultatet genererar ett fel visas resultatet inte för invånaren |
|
...
Skillnader mellan beräkningskod i SoB och Formulärhantering
Beräkningskoden är väldigt lik mellan Stöd och behandling och Formulärhantering. Det finns dock några skillnader:
Stöd och behandling (SoB) | Formulärhantering (FRM) |
---|
För befintlig SoB ser det ut så här 1. rule efsob 2. when 3. field: Field() 4. then 5. result.add( field.get("Etikettnamn") ); 6. end | Rad 1: har FRM tagit bort. Rad 3: här använder FRM Questions() istället för Fields(). Om man då låter variablen heta field så behöver man inte ändra i själva beräkningen. Rad 5: här byter ni result.add(...) till outcome.set(…) Syntaxen blir då: 1. when 2. field: Questions() 3. then 4. outcome.set( field.get("QuestionId") ); 5. end |
Exempel:
Kodblock |
---|
when
$q: Questions()
then
outcome.set($q.get("weight") / ($q.get("height")/100 * $q.get("height")/100));
end |
...