PC SOFT

ONLINE HELP
FOR WINDEV, WEBDEV AND WINDEV MOBILE

Home | Sign in | English US

  • 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.
Versions 21 and later
Universal Windows 10 App This function is now available in Universal Windows 10 App mode.
New in version 21
Universal Windows 10 App This function is now available in Universal Windows 10 App mode.
Universal Windows 10 App This function is now available in Universal Windows 10 App mode.
Example
sText is string = "Text"
// Displays the text in a window
ExecuteCode("Info(sText)")
// Declare the variables.
sCodeToRun is string
xOperationResult is numeric

// WLanguage code to run.
// This code returns the result of an operation %1.
sCodeToRun = [
MyCalculation is numeric
MyCalculation = %1
RESULT MyCalculation
]

// WLanguage code to run.
// Replace %1 by the operation displayed
// in the EDT_EXPRESSION edit control.
sCodeToRun = StringBuild(sCodeToRun, EDT_EXPRESSION)

// Run the code and retrieve the result.
xOperationResult = ExecuteCode(sCodeToRun)

// Displays the result of the operation in an Info message box
Info("The result of your operation is: " + xOperationResult)
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)
Code to run.
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 whenever ExecuteCode is called.
To avoid the compilation step, you have the ability to use Compile and Execute.

Dynamic code

If the source code used for the dynamic compilation contains names of files, items, controls, windows, reports, queries, ... these names must necessarily be enclosed in quotes.
For example, you must use: HReadFirst("Customer", "Name") instead of HReadFirst(Customer, Name)
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
// In the string containing the code that will be compiled dynamically
// instead of leaving the name of the constant:
sCode=[
Info(CST_Name)
]
// Replace the name of the constant by its value
sCode = Replace(sCode, "CST_Name", CST_Name, WholeWord + IgnoreCase)
// The code can be compiled now
IF Compile("DynProc", sCode) <> "" THEN
Error("Error while compiling the dynamic procedure: ", ...
ErrorInfo())
ELSE
// Then it can be run
WHEN EXCEPTION IN
ExecuteProcess("DynProc", trtProcedure)
DO
Error("Error while running the dynamic procedure: ", ...
ExceptionInfo())
END
END
Components
WINDEVWEBDEV - Server codeReports and Queries wd230vm.dll
Windows Mobile wp230vm.dll
Linux wd230vm.so
Minimum required version
  • 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
May 29 2018