Changes between Version 18 and Version 19 of Documentatie/Ontwikkelaar/Procedures/MailmergeVariabelen


Ignore:
Timestamp:
06/24/21 07:03:24 (5 years ago)
Author:
henk
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Documentatie/Ontwikkelaar/Procedures/MailmergeVariabelen

    v18 v19  
    2929 
    3030== !MergeValue getter implementatie == 
    31 Je vindt de !MailMerge module in OpenACLogica/Modules/!MailMerge. Je implementeert een getter door een nieuwe klasse toe te voegen aan de map !MergeValueGetters. De klasse moet een subclass zijn van !MergeValueGetterBase en interface !IMergeValueGetter implementeren: 
     31Je vindt de !MailMerge module in OpenACLogica/Modules/!MailMerge. Je implementeert een getter door een nieuwe klasse toe te voegen aan de map !MergeValueGetters. De klasse moet een subclass zijn van {{{MergeValueGetterBase}}} en interface {{{IMergeValueGetter}}} implementeren: 
    3232{{{#!csharp 
    3333namespace OpenACLogica.Modules.MailMerge.MergeValueGetters 
     
    4040}}} 
    4141 
     42Interface {{{IMergeValueGetter}}} bevat 6 methods: 
     43{{{#!csharp 
     44    public interface IMergeValueGetter 
     45    { 
     46        IEnumerable<string> RegisterFor { get; } 
     47        Task<MergeGlobalContainer> GetMergeGlobals(PathElement path, MergeGlobalContainer values, IEnumerable<MergeGlobalContainer> parentValues, Dictionary<string, object> data); 
     48        Task<MergeRecords> GetMergeRecords(PathElement path, MergeRecords parentMergeRecords, List<string> relaties, Dictionary<string, object> data); 
     49        void Init(string pad); 
     50        Task<Dictionary<string, object>> GetData(PathElement path); 
     51        void VulStandaardvelden(Dictionary<string, object> data); 
     52    } 
     53}}} 
     54 
     55Je hoeft alleen de eerste 3 methods te implementeren, de overige methods zijn geïmplementeerd in {{{MergeValueGetterBase}}}. 
     56=== {{{RegisterFor}}} === 
     57 
     58 
    4259=== Getter registreren === 
    4360!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.