Saltar al contenido principal
Versión: 20 R7 BETA

WA EXECUTE JAVASCRIPT FUNCTION

WA EXECUTE JAVASCRIPT FUNCTION ( {* ;} objeto ; funcionjs ; resultado|* {; param}{; param2 ; ... ; paramN} )

ParámetroTipoDescripción
*OperadorSi se especifica, objeto es un nombre de objeto (cadena) Si se omite, objeto es una variable
objetoanyNombre de objeto (si se especifica *) o Variable (si se omite *)
funcionjsTextNombre de la función JavaScript a ejecutar
resultado|*Variable* para una función sin resultado o
Resultado de la función (si se espera)
paramText, Number, Date, Object, CollectionParámetro(s) a pasar a la función

Este comando no es hilo seguro, no puede ser utilizado en código apropiativo.

Descripción

El comando WA EXECUTE JAVASCRIPT FUNCTION ejecuta en el área Web designada por los parámetros * y objeto, la función JavaScript funcionJS y devuelve opcionalmente su resultado en el parámetro resultado.

Si la función no devuelve un resultado, pase * en el parámetro resultado.

Puede pasar en param una o varios parámetros que contengan los parámetros de la función.

El comando soporta varios tipos de parámetros, tanto para entrada (param) como para salida (resultado). Puede pasar y recuperar datos de tipos cadena, número, fecha, objeto y colección. Si el tipo de parámetro no está definido, el tipo texto se utiliza de manera predeterminada.

Atención: no se recomienda utilizar este comando para llamar directamente a una función JavaScript que muestre un diálogo (alert(), print()...) ya que el usuario no puede interactuar con el área web mientras se ejecuta el código 4D. Si necesita implementar dicha interfaz, puede llamar, por ejemplo, a setTimeout(function(){alert();}, 50)) para dejar que termine la ejecución del código 4D y permitir la interacción del usuario.

Ejemplo 1

Llamada de una función JavaScript con 3 parámetros:

 $JavaScriptFunction:="FuncionAEjecutar"
 $Param1:="10"
 $Param2:="true"
 $Param3:="1,000.2" //note "," como separador de miles y "." como separador décimal
 
 WA EXECUTE JAVASCRIPT FUNCTION(MyWArea;$FuncionAEjecutar;$Result;$Param1;$Param2;$Param3)

Ejemplo 2

La función JavaScript "getCustomerInfo" recibe un número ID como parámetro y devuelve un objeto:

 var $Result : Object
 var $ID : Integer
 $ID:=1000
 WA EXECUTE JAVASCRIPT FUNCTION(*,"WA";"getCustomerInfo";$Result;$ID)

Ver también

WA Evaluate JavaScript