Alleen-lezenvelden in rtSurvey stellen u in staat informatie weer te geven die niet door de respondent kan worden bewerkt. Deze functie is bijzonder nuttig voor het tonen van vooraf ingevulde gegevens, berekende resultaten of informatie die gedurende de gehele enquête constant moet blijven.

Basisgebruik

Om een veld alleen-lezen te maken, gebruikt u de kolom read_only in uw XLSForm:

  | type    | name | label                | read_only | default |
|---------|------|----------------------|-----------|---------|
| integer | num  | Patiëntnummer is:    | yes       | 5       |
  

In dit voorbeeld is het patiëntnummer ingesteld op 5 en kan het niet door de respondent worden gewijzigd.

Alleen-lezen combineren met standaardwaarden

Alleen-lezenvelden worden vaak gebruikt in combinatie met standaardwaarden om vooraf bepaalde of berekende informatie weer te geven:

  | type    | name     | label              | read_only | default         |
|---------|----------|--------------------|-----------|-----------------|
| text    | username | Ingelogde gebruiker:| yes      | ${current_user} |
| date    | today    | Datum van vandaag: | yes       | today()         |
  

Hier worden de gebruikersnaam en huidige datum weergegeven maar kunnen ze niet worden bewerkt.

rtSurvey-specifieke functies

Voorwaardelijk alleen-lezen

rtSurvey breidt de alleen-lezenfunctionaliteit uit met voorwaardelijke logica:

  | type    | name     | label      | read_only                          |
|---------|----------|------------|------------------------------------|
| integer | age      | Leeftijd:  | ${role} = 'viewer'                 |
| text    | comments | Opmerkingen:| selected(${status}, 'closed')    |
  

In deze voorbeelden:

  • Het veld ‘age’ is alleen-lezen als de rol van de gebruiker ‘viewer’ is.
  • Het veld ‘comments’ wordt alleen-lezen als de status ‘closed’ is.

Dynamische alleen-lezenstatus

rtSurvey staat toe dat u de alleen-lezenstatus dynamisch wijzigt:

  | type      | name     | label   | read_only              |
|-----------|----------|---------|------------------------|
| text      | address  | Adres:  | ${edit_mode} = 'false' |
  

Hiermee kunt u wisselen tussen bewerkbare en alleen-lezenmodi op basis van bepaalde voorwaarden of gebruikersacties.

Aanbevolen werkwijzen voor alleen-lezenvelden

  1. Duidelijkheid: Geef duidelijk aan welke velden alleen-lezen zijn via visuele aanwijzingen of labels.
  2. Consistentie: Gebruik alleen-lezenvelden consistent door uw enquête.
  3. Validatie: Hoewel alleen-lezenvelden niet kunnen worden bewerkt, neemt u ze op in uw gegevensvalidatieproces.
  4. Prestaties: Wees voorzichtig met complexe berekeningen in alleen-lezenvelden, omdat ze de laadtijd van formulieren kunnen beïnvloeden.
  5. Toegankelijkheid: Zorg ervoor dat alleen-lezenvelden correct zijn gemarkeerd voor schermlezers.

Geavanceerde technieken

Berekende alleen-lezenvelden

Gebruik alleen-lezenvelden om berekeningen weer te geven op basis van andere responsen:

  | type      | name | label | read_only | calculation                            |
|-----------|------|-------|-----------|----------------------------------------|
| calculate | bmi  | BMI:  | yes       | ${weight} / (${height} * ${height})    |
  

Historische gegevens weergeven

Alleen-lezenvelden kunnen gegevens uit eerdere enquêtes of externe bronnen weergeven:

  | type    | name           | label                      | read_only | default                                                   |
|---------|----------------|----------------------------|-----------|-----------------------------------------------------------|
| text    | last_visit_date| Datum van laatste bezoek:  | yes       | ${pulldata('visits', 'date', 'id', ${patient_id})}        |
  

Overwegingen voor gegevensbeheer

  • Alleen-lezenvelden worden opgenomen in gegevensexports, doorgaans met een markering die hun alleen-lezenstatus aangeeft.
  • Bij het bijwerken van bestaande records bewaren alleen-lezenvelden hun oorspronkelijke waarden tenzij expliciet overschreven via de backend.

Gedrag in de mobiele app

  • De mobiele app van rtSurvey respecteert alleen-lezeinstellingen, inclusief voorwaardelijke alleen-lezelogica.
  • De offlinemodus ondersteunt volledig de alleen-lezenfunctionaliteit, inclusief dynamische en berekende alleen-lezenvelden.

Bekende beperkingen

  • Sommige complexe dynamische alleen-lezevoorwaarden kunnen een geringe prestatieimpact hebben op apparaten aan de onderkant van de markt.
  • Alleen-lezenvelden voorkomen mogelijk niet alle vormen van gegevensmanipulatie in geëxporteerde gegevensbestanden, dus validatie aan de serverzijde wordt aanbevolen voor kritieke gegevens.

Problemen met alleen-lezenvelden oplossen

  1. Veld onverwacht bewerkbaar: Controleer op syntaxfouten in de kolom read_only of voorwaardelijke logica.
  2. Berekende waarden worden niet bijgewerkt: Verifieer de berekeningslogica en zorg dat alle gerefereerde velden correct zijn benoemd.
  3. Prestatieproblemen: Optimaliseer complexe berekeningen of overweeg alternatieve benaderingen voor het weergeven van alleen-lezengegevens.
Was deze pagina nuttig?