Changes between Version 6 and Version 7 of Documentatie/Ontwikkelaar/OpenAC3/Scriptfuncties
- Timestamp:
- 03/20/20 10:57:05 (6 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Documentatie/Ontwikkelaar/OpenAC3/Scriptfuncties
v6 v7 21 21 22 22 == Registratie == 23 Alle klassen die interface {{{ ITabelScript }}} implementeren worden automatisch geregistreerd als de static constructor van {{{ TabelScripts }}} wordt uitgevoerd. Een static constructor wordt gegarandeerd maar één keer uitgevoerd, de eerste keer dat een reguliere constructor van die klasse wordt uitgevoerd. 24 23 25 Om scriptfuncties uit te kunnen voeren moet je eerst klasse {{{ TabelScripts }}} instantiëren: 24 26 {{{ … … 28 30 }}} 29 31 30 Alle klassen die interface {{{ ITabelScript }}} implementeren worden automatisch geregistreerd als de static constructor van {{{ TabelScripts }}} wordt uitgevoerd. Een static constructor wordt gegarandeerd maar één keer uitgevoerd, de eerste keer dat een reguliere constructor van die klasse wordt uitgevoerd.31 32 32 33 === Interface ITabelScript === … … 60 61 Voor elk van bovenstaande events zal method {{{ ExecuteAsync }}} van de klasse worden uitgevoerd. 61 62 62 == Data en !ParentData == 63 == !ExecuteAsync == 64 Bij elk scriptfunctie event wordt de {{{ ExecuteAsync }}} method van alle geregistreerde klassen aangeroepen. Deze functie krijgt een {{{ TabelScriptResult }}} mee als argument en geeft ook een {{{ TabelelScriptResult }}} terug. Op die manier kunnen meerdere scriptfuncties iets toevoegen aan het uiteindelijke resultaat. 65 66 === Data en !ParentData === 63 67 In de {{{ ExecuteAsync }}} method zijn data die nodig zijn om een UPDATE scriptfunctie uit te voeren beschikbaar in scriptResult.Data. Soms is het ook nodig om te beschikken over de data van een parent. Bijvoorbeeld in een scriptfunctie voor een bezoek kan het nodig zijn om te beschikken over de data van het zorgtraject waar het bezoek bij hoort. Parent data kan worden opgevraagd met de functie {{{ scriptResult.GetParent() }}}. Deze functie kan {{{ null }}} teruggeven. In dat geval is de conventie om de parent data op te halen en toe te voegen aan scriptResult met {{{ scriptResult.SetParent() }}}. 64 68