| | 17 | |
| | 18 | Het decursusthema is te kiezen in het decursusblok in het patientendossier. De omschrijvingen van die thema's die in gebruik zijn, worden getoond, zoals in het screenshot hiernaast. De thema's worden op volgnummer gesorteerd, niet alfabetisch. |
| | 19 | |
| | 20 | == Velden == |
| | 21 | |
| | 22 | Een decursus-entry heeft standaard een groot aantal velden. Deze zijn gedefinieerd in de module `s080_decursus`. Niet alle velden zijn in alle thema's van toepassing, en worden dan onzichtbaar gemaakt. |
| | 23 | |
| | 24 | In een default-installatie van OpenAC zijn de volgende velden (onder andere) opgenomen in een decursus-entry: |
| | 25 | - Datum |
| | 26 | - Onderzoeker |
| | 27 | - Hoofdtekst |
| | 28 | - Anamnese (niet in alle thema's zichtbaar) |
| | 29 | - Gehoor (idem) |
| | 30 | - Reden van inbreng (idem) |
| | 31 | - Mondgedrag (idem) |
| | 32 | De velden van een cursusentry lopen uiteen van zeer algemeen naar zeer specialistisch. |
| | 33 | |
| | 34 | Nieuwe velden kunnen worden toegevoegd door in de tabel-definitie van `s080_decursus.cursusentry` (via het tabelscherm) een veld toe te voegen. Indien een veld wordt toegevoegd dat naar een codetabel wijst, verschijnt een drop-down veld; tekstvelden worden als gewone tekst-invoer vertoond. Tekstvelden kunnen een- of meer-regelig zijn. |
| | 35 | |
| | 36 | In deze screenshot is te zien dat er een mengsel is van codetabel-velden zoals ''Onderzoeker'' en ''Reden inbreng'' en tekst-velden zoals ''Minimaal aanw.'' en ''Notities OpenAC''. |
| | 37 | |
| | 38 | [[Image(decursusthema1.png)]] |
| | 39 | |
| | 40 | De velden in een cursusentry worden opgeslagen in de structuur-bestanden van OpenAC. Het is aan te bevelen wijzigingen in te leveren na het toevoegen van een veld. Gebruikers zullen moeten schakelen. |
| | 41 | |
| | 42 | == Thema-Engine == |
| | 43 | |
| | 44 | Omdat velden niet voor alle thema's van toepassing zijn, kan de layout van een decursus-entry aangepast worden per thema. De meest eenvoudige manier om dat te doen maakt gebruik van een ''thema-engine''. Deze wordt in het adaptatie-script ingesteld. De thema-engine maakt velden zichtbaar of onzichtbaar al naar gelang het gekozen thema. |
| | 45 | |
| | 46 | Als een veld slechts in enkele thema's zichtbaar hoeft te zijn, is het aan te bevelen het in de layout van de tabel `cursusentry` juist '''onzichtbaar''' te maken; dan laten we aan de thema-engine over om het zichtbaar te maken. Net zo kunnen we bij een veld dat meestal zichtbaar moet zijn (maar in enkele gevallen niet) het veld het beste een layout geven, en dan de thema-engine het laten verhullen als het niet nodig is. |
| | 47 | |
| | 48 | Documentatie over het gebruik van de thema-engine is te vinden in de broncode van [browser:/development/kern/s080_decursus/themaengine.py]. In de adaptatie-script wordt een thema gekoppeld aan gewenste effecten op de layout van de velden met code als deze: |
| | 49 | |
| | 50 | {{{ |
| | 51 | themaengine.registreer_thema( |
| | 52 | "uitbehandeld", |
| | 53 | layout={ |
| | 54 | "uitbehandelingsreden" : "2:8x3", |
| | 55 | "anamnese" : "-" |
| | 56 | }) |
| | 57 | }}} |
| | 58 | |
| | 59 | Het effect van zo'n thema met layout-wijzigingen is dat een thema "uitbehandeld" een eigen veld met codetabel kan krijgen, dat alleen zichtbaar is in dat thema, zoals in het screenshot hieronder. |
| | 60 | |
| | 61 | [[Image(decursusthema3.png)]] |
| | 62 | |