Über die Relation workflow_extmod_param können Variablen an ein externes Modul/Skript übergeben werden. Die Relation verwendet als Schlüssel die Attribute 'workflownummer', 'extmod_id', 'aufruf_id' und 'paramnr'. Letzteres hat nur technischen Charakter. Der Variablenname wird im Attribut 'paramkey', der Variablenwert in 'paramvalue' abgelegt. Es können auch Arrays über 'workflow_extmod_param' übergeben werden. Diese werden jedoch in ihre einzelnen Bestandteile zerlegt und so in die Relation eingetragen. Ein zweidimensionales Array beispielsweise verursacht mehrere Tupel, wobei die Einträge unter 'paramkey' die folgende Form haben:
Wie in Abschnitt
beschrieben, trägt die Funktion 'modul_extmod' die Namen der Views
und temporären Tabellen, sowie mit den ``ext_''-Schlüsseln
weiter Informationen für die externen Module in die Relation 'workflow_extmod_param'
ein. Sollte dies nicht ausreichen, können aus einem ExtMod-Submodul
heraus auch direkt Einträge in die Relation vorgenommen werde, indem
die Funktionen 'wf_extmod_param_set' und 'wf_extmod_param_setarray'
aus 'lib-extmodul-control.inc.php' verwendet werden. Erstere ist für
einfache Variablen, letztere für Arrays. Der Funktion 'wf_extmod_param_set'
müssen die Parameter (in dieser Reihenfolge) 'extmod_id', 'aufruf_id',
'variablenname' und 'variablenwert' übergeben werden. Bei 'wf_extmod_param_setarray'
sind die Parameter (in dieser Reihenfolge) 'zu_speicherndes_Array',
'arrayname', 'extmod_id' und 'aufruf_id'.
Im folgenden Beispiel wird ein Array mit Queries ('query_extern') mit dem ersten Funktionsaufruf in die DB eingetragen, wobei als Array-Name 'queries' verwendet wird. Anschließend werden alle zum externen Modul gehörenden Werte aus der DB wieder ausgelesen und das Array 'queries' rekonstruiert.
$param = extmod_param(10, ``extmod1'', ``test'');
$queries = modparam_getarray($param, ``queries'');