PC SOFT

ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Home | Sign in | English EN

This content has been translated automatically. Click here to view the French version.
  • Local variables
  • Compiling the code
  • Dynamic code
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Others
Stored procedures
Runs the WLanguage code found in a character string.
Example
sTexte is string = "Texte"
// Affiche le texte dans une fenêtre
ExécuteCode("Info(sTexte)")
// Déclaration des variables.
sCodeAExécuter is string
xRésultatOpération is numeric
 
// Code WLangage à exécuter.
// Ce code renvoie le résultat d'une opération %1.
sCodeAExécuter = [
MonCalcul est un numérique
MonCalcul = %1
RENVOYER MonCalcul
]
 
// Code WLangage à exécuter.
// Remplacement de %1 par l'opération affichée
// dans le champ de saisie SAI_EXPRESSION.
sCodeAExécuter = StringBuild(sCodeAExécuter, SAI_EXPRESSION)
 
// Exécution du code et récupération du résultat.
xRésultatOpération = ExécuteCode(sCodeAExécuter)
 
// Affiche le résultat de l'opération dans une boîte de message de type Info()
Info("Le résultat de votre opération est: " + xRésultatOpération)
Syntax
<Result> = ExecuteCode(<Code>)
<Result>: Any type
  • Result of the code if this one contains a RESULT statement,
  • Nothing otherwise. In this case, an error message may be displayed when the result is assigned in a variable for example.
<Code>: Character string (with quotes)
WLanguage code to run.
Versions 25 and later
Remark: This code may contain the call and declaration code of an internal procedure.
New in version 25
Remark: This code may contain the call and declaration code of an internal procedure.
Remark: This code may contain the call and declaration code of an internal procedure.
Remarks

Local variables

The local variables of the current process can be directly used in the code to run.
If the code is compiled without error, the code is run directly.
A fatal error is triggered if the code is not compiled.

Compiling the code

The code is recompiled each time the function ExecuteCodeis called.
To avoid the compilation step, you have the ability to use Compile and Execute.

Dynamic code

The constants cannot be used in the dynamic code (defined by the CONSTANT keyword).
When using constants in a code, all the occurrences of the constants are replaced by their value during the compilation in the editor but the correspondence between the name of constants and their value is not "embedded" in the application. Therefore, the dynamic compilation cannot use the constants.
Let's see two alternatives:
1 - Use variables instead of constants
CONSTANT
CST_Name = 1
END
becomes for example
CST_Name is int = 1
or
2 - In the string containing the code that must be compiled dynamically, replace the name of the constant by its value:
sCode is string
// Dans la chaîne qui contient le code que l'on va compiler dynamiquement
// au lieu de laisser le nom de la constante comme ici:
sCode=[
Info(CST_Nom)
]
// On remplace le nom de la constante par sa valeur
sCode = Replace(sCode, "CST_Nom", CST_Nom, WholeWord + IgnoreCase)
// Il est ensuite possible de compiler le code
IF Compile("ProcDyn", sCode) <> "" THEN
Error("Erreur de compilation de la procédure dynamique: ", ...
ErrorInfo())
ELSE
// Puis de l'exécuter
WHEN EXCEPTION IN
ExecuteProcess("ProcDyn", trtProcédure)
DO
Error("Erreur d'exécution de la procédure dynamique: ", ...
ExceptionInfo())
END
END
Component: wd260vm.dll
Minimum version required
  • Version 17
This page is also available for…
Comments
EXEMPLO EXECUTECODE
https://youtu.be/WsbELU020a8

http://doc.windev.com/en-US/?1000019783&name=ExecuteCode

// EXEMPLO

// EXECUTA COMANDOS

ExecuteCode(EDT_COMANDOS)
De matos
29 May 2018