| Version 10 (modified by henk, 5 years ago) (diff) |
|---|
TOC(heading=Mailmerge variabelen)? TOC(heading=Procedures, sectionindex, compact, depth=3, allactive, Documentatie/Ontwikkelaar/Procedures/)? TOC(heading=Ontwikkelaar, sectionindex, compact, depth=2, allactive, Documentatie/Ontwikkelaar/)? TOC(heading=Documentatie, sectionindex, compact, depth=1, allactive, Documentatie/)?
Mailmerge variabelen
Quote uit Wikipedia: "Mailmerge is een techniek om vanuit een sjabloonbrief een veelvoud aan documenten te genereren waarin enkele gegevens verschillen.". OpenAC gebruikt mailmerge om documenten te maken waarin automatisch gegevens uit het dossier worden opgenomen zoals naam, adres, woonplaats van de patiënt. Het gaat hierbij meestal om Word-documenten maar mailmerge wordt ook gebruikt voor Excel, labels, e-mails etc.
MailMerge module
Als het secretariaat een uitnodigingsbrief wil versturen dan moet het gekozen sjabloon worden gevuld met mailmerge-variabelen die nodig zijn om de brief te completeren. Denk hierbij aan de datum van de afspraak, het type onderzoek, locatie etc. De MailMerge module is een framework voor het samenstellen en beschikbaar maken van mailmerge-variabelen.
Mailmerge-variabelen
Om een uitnodigingsbrief te kunnen maken op basis van een sjabloon moeten we eerst alle gerelateerde gegevens ophalen. Het gaat hierbij niet alleen om gegevens over de afspraak zelf, maar ook om gegevens over het zorgtraject waar de afspraak bij hoort en gegevens over de patiënt.
In OpenAC kunnen alle gegevenselementen worden geadresseerd met een pad. Het pad voor een afspraak heeft de vorm patient(x)/behandelingen(y)/plandagen(z). Hier zijn x, y en z de database keys. Om mailmerge-variabelen voor een afspraak te kunnen maken moeten we de gegevens van alle entiteiten in het pad ophalen. De MailMerge module heeft hier een mechanisme voor.
MergeValues en MergeValue getters
Voor het samenstellen van mailmerge-variabelen voor een entiteit hebben we een "MergeValue getter" nodig. Een MergeValue getter is een klasse die interface IMergeValueGetter implementeert.
Getter registreren
MergeValue getters worden geregistreerd voor één of meer ACL-paden. Een ACL-pad is de generieke vorm van het pad naar een entiteit. Als patient(x)/behandeling(y)/plandagen(z) het pad is naar afspraak z, dan is patient/behandeling/plandagen het ACL-pad.