# VBScript-functies aanroepen vanuit het script

VBScript- of JScript-functies die in de macromodule van een QlikView-document zijn gedefinieerd, kunnen vanuit het script worden aangeroepen. Als een functieaanroep niet als standaard scriptfunctie wordt herkend, wordt gecontroleerd of het een zelfgemaakte functie betreft. U hebt dus alle vrijheid om uw eigen functies te maken. Bij zelfgemaakte macrofuncties duurt de uitvoering echter iets langer dan bij standaardfuncties.

`rem *************************************************` `rem ***THIS IS VBSCRIPT CODE FROM THE MODULE********* rem**************************************************` `rem *************************************************` `rem ********* Global variables ********************` `dim flag` `rem *******functions accessible from script *********` `rem ************ wrap for input box ******************` `function VBin(prompt)` `VBin=inputbox(prompt)` `end function` ` ` `rem ************ clear global flag ******************` `function VBclearFlag()` `flag=0` `end function` `rem ********* test if reference has passed ***********` `function VBrelPos(Ref, Current)` `if Ref=Current then` `VBRelPos="Reference"` `flag=1` `elseif flag=0 then` `VBRelPos="Before "&Ref&" in table"` `else` `VBRelPos="After "&Ref&" in table"` `end if` `end function` `// **************************************************` `// *************THIS IS THE SCRIPT *****************` `// *************************************************` ` ` `let MaxPop=VBin('Max population in millions :');` `// Ask limit` ` ` `let RefCountry=VBin('Reference country :');` ` // Ask ref.  ` ` ` `let dummy=VBclearFlag(); // Clears the global flag` ` ` `Load` `Country,recno(),` `Capital,` `"Area(km.sq)",` `"Population(mio)",` `VBrelPos('$(RefCountry)',Country)` `as RelativePos` `from country1.csv` `(ansi, txt, delimiter is ',', embedded labels)` `where "Population(mio)" <= $(MaxPop);`

## Doorgifte van parameters

De volgende regels zijn van toepassing op de doorgifte van parameters tussen het load-script en het VBScript:

* Voor ontbrekende parameters wordt NULL (leeg) doorgegeven.
* Als de uitdrukking een geldig getal oplevert, wordt het getal doorgegeven. Anders, als de uitdrukking een geldige tekenreeks oplevert, wordt de tekenreeks doorgegeven, anders wordt de NULL (leeg) doorgegeven.
* NULL (leeg) wordt doorgegeven als VT\_EMPTY.
* Geretourneerde waarden worden op de gebruikelijke wijze verwerkt.