ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Help / WLanguage / WLanguage syntax / Declaring variables
  • Overview
  • Global variable
  • Variables global to a project
  • Variables global to a window
  • Variables global to a report
  • Variables global to a set of procedures
  • How to use a global variable from a component
  • Global variable: Syntax
  • Declaring one or more global variables
  • Local variable
  • Local variable: Syntax
  • Declaring one or more local variables
  • Zombie local and global variables
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Others
Stored procedures
Overview
Two types of variables are available:
  • Local variable: can only be used in the process where this variable was declared.
  • Global variable: can be used in all the processes related to the process in which this variable was declared.
Important: You must not declare two variables with the same name (especially a global variable and a local variable).
Global variable

Variables global to a project

Global variables declared in the "Initialization" event of a project can be used in all the events or processes:
  • of the project.
  • of the window or page (events of the window or page, of its controls and of the associated local procedures).
  • of the report (events of the report, of its controls and of the associated local procedures).
WINDEV Mobile

Variables global to a window

Global variables declared in the "Global declarations" event of a window can be used in all the events or processes:
  • of the window.
  • of the window controls.
  • of the local procedures associated with the window.
Limits:
  • The global variables of a window cannot be used by its sibling windows.
  • The global variables declared in a child window cannot be used in its parent window.
  • When the window where the variable was declared is closed, this variable cannot be used anymore.
Remark: Using a global variable in a child window of the declaration window
The variables declared global in a window are visible in the child windows of this window in the following cases:
  • If the External keyword is used to declare the variable in the child window.
  • If the variable name is prefixed by the window name.
  • If the variable is passed as a parameter to the child window.
iPhone/iPadIOS WidgetMac Catalyst

Variables global to a report

Global variables declared in the "Open" event of a report can be used in all the events or processes:
  • of the report.
  • of the report controls.
  • of the local procedures associated with the report.

Variables global to a set of procedures

Global variables declared in the "Declaration" event of a set of procedures can be used in all the events or processes:
  • of the different procedures in the set.
  • of the current project.

How to use a global variable from a component

Since the purpose of a component is to be stand-alone, no global variable of the project should be used from this one.
However, the recommended method is as follows:
  • create a global variable in the component.
  • in the component, create a procedure used to initialize these global variables.
  • from the "Initialization" event of the project and whenever the value of the global variables of the project is modified, call this procedure to assign a similar value to the global variables of the component.
Global variable: Syntax

Declaring one or more global variables

GLOBAL
<Global variables>
Details of syntax
GLOBALBeginning of declaration of global variables.
<Global variables>Global variables to declare.
GLOBAL // All the declarations that follow are global variables
Index is int
CustomerName is string
Rate is real
 
LOCAL // All the declarations that follow are local variables
I is int
CustomerFName is string
Price is currency
Local variable
Local variables can only be used in the events or processes in which they are declared. Outside of these events or processes, local variables are unknown. These variables cannot be shared by several events or processes.
By default, a variable is local when it is declared.
Local variable: Syntax

Declaring one or more local variables

[LOCAL]
<Local variables>
Details of syntax
LOCALBeginning of declaration of local variables. The LOCAL keyword is optional.
<Local variables>Local variables to declare.

LOCAL // All the declarations that follow are local variables
I is int
CustomerFName is string
Price is currency
// All the declarations that follow are local variables
I is int
CustomerFName is string
Price is currency
Zombie local and global variables
A local or global variable can become obsolete. This allows you to in know that this element must not be used anymore (but that it is not deleted yet).
To declare a variable as being obsolete, all you have to do is use the <Zombie> extension attribute.
The syntax is as follows:
<Variable name> is <type of variable> <zombie [comment = "text"]>
In this syntax, the optional comment keyword is used to specify the text that will be displayed in the compilation error associated with the obsolete variable.
Example:
CustomerFirstName is string <zombie comment = "Don't use anymore - use the Customer structure">
Minimum version required
  • Version 9
This page is also available for…
Comments
Click [Add] to post a comment

Last update: 03/06/2024

Send a report | Local help