Saltar al contenido principal Saltar al contenido complementario

Llamadas a Funciones VBScript desde el Script

Las funciones VBScript o JScript definidas en el módulo de macros de un documento QlikView pueden invocarse desde el script. Si una llamada a una función no se reconoce como una función estándar de script, se llevará a cabo un control para verificar si hay una función personalizada en el módulo. De este modo existe un alto grado de libertad para definir funciones personalizadas. Naturalmente, es algo más lento utilizar funciones VBScript personalizadas en lugar de funciones estándar.

Rem

rem ***THIS IS VBSCRIPT CODE FROM THE MODULE*********

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);

Paso de parámetros

Las siguientes reglas se aplican para la transferencia de parámetros entre el script de carga y VBScript:

  • Los parámetros que faltan se transfieren como NULL.
  • Si la expresión actual da como resultado un número válido, se transfiere el número, en caso de ofrecer una cadena válida, se transfiere dicha cadena, en caso contrario devuelve NULL.
  • NULL se transfiere como VT_EMPTY.
  • Los valores de retorno son tratados de forma natural.

¿Esta página le ha sido útil?

No dude en indicarnos en qué podemos mejorar si encuentra algún problema en esta página o su contenido, como, por ejemplo, errores tipográficos, pasos que falta o errores técnicos.

Únase al Programa de modernización de la analítica

Remove banner from view

Modernícese sin comprometer sus valiosas aplicaciones de QlikView con el Programa de modernización de la analítica. Haga clic aquí para obtener más información o contactar con nosotros: ampquestions@qlik.com