PC SOFT

WINDEVWEBDEV AND WINDEV MOBILE
ONLINE HELP

Home | Sign in | English UK
  • General properties on the parameters of a procedure
  • Handling the parameters of a procedure
  • Specific properties that can be used on each parameter of a procedure
  • Re-stacking parameters
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
MyParameters (Reserved word)
In french: MesParamètres
The MyParameters keyword is used to handle the parameters passed to a WLanguage procedure. It allows you to access the advanced information about the parameters of the current WLanguage procedure.
You have the ability to handle all the parameters or a single parameter.
This keyword can be used in the standard WLanguage procedures and in the WLanguage procedures with a variable number of parameters.
Versions 17 and later
iPhone/iPad This feature is available for the iPhone/iPad applications.
WEBDEV - Browser code This feature is available for the procedures in Browser code.
New in version 17
iPhone/iPad This feature is available for the iPhone/iPad applications.
WEBDEV - Browser code This feature is available for the procedures in Browser code.
iPhone/iPad This feature is available for the iPhone/iPad applications.
WEBDEV - Browser code This feature is available for the procedures in Browser code.
Versions 18 and later
Universal Windows 10 App This feature is available in Windows Store apps mode.
New in version 18
Universal Windows 10 App This feature is available in Windows Store apps mode.
Universal Windows 10 App This feature is available in Windows Store apps mode.
Versions 21 and later
Universal Windows 10 App This feature is available in Universal Windows 10 App mode.
Apple Watch This feature is available in Apple Watch mode.
New in version 21
Universal Windows 10 App This feature is available in Universal Windows 10 App mode.
Apple Watch This feature is available in Apple Watch mode.
Universal Windows 10 App This feature is available in Universal Windows 10 App mode.
Apple Watch This feature is available in Apple Watch mode.
Example
// Procedure used to shift controls
PROCEDURE ShiftControl(*)

// This code is using a loop such as FOR ... _TO_
// to avoid recalculating the number of parameters at each iteration
// Indeed, this number of parameters is fixed.
FOR I = 1 _TO_ MyParameters..Occurrence
MyParameters[I]..X += 10
END
Syntax
MyParameters
Remarks

General properties on the parameters of a procedure

Two properties can be used on all the parameters of a WLanguage procedure:
Property nameEffect
NbReceivedReturns the number of parameters actually received by the current WLanguage procedure.
OccurrenceReturns the number of parameters that can be used in the current WLanguage procedure.
WEBDEV - Browser code This property is not available.
Example: PROCEDURE Proc(p1, po2= "Y", po3 = "Z")
CallProc("A")Proc("A", "B")Proc("A","B", "C")
MyParameters..NbReceived123
MyParameters..Occurrence333
The special parameter "*" (that is used to keep the default value) is counted as a received parameter.

Handling the parameters of a procedure

The standard WLanguage operations are available on each one of the procedure parameters via the following notation MyParameters[N] where N is the number of the parameter to use.
Some examples:
  • MyParameters[N]: Retrieves the value of the Nth parameter of the procedure.
  • MyParameters[N] =: Assigns the value of the Nth parameter of the procedure.
  • MyParameters[N]++, MyParameters[N]+=, ...: Combined arithmetic operations.
  • MyParameters[N]..<Property Name>: Access to a property of the element.
  • MyParameters[N][...]: Access to the subscripted sub-elements of parameter value.
  • MyParameters[N].<Sub-element>: Access to a sub-element of parameter value.
  • MyParameters[N]:<Member>: Access to a member of parameter value
  • MyParameters[N]>>xxx: Automation syntax.
Note: The type of a parameter is returned by GetDefinition.

Specific properties that can be used on each parameter of a procedure

The following properties can be used on the parameters received by a procedure:
Property nameEffect
DefaultUsed to find out whether the value of the parameter is the one passed by default or if it was explicitly specified.
ByAddress /
Versions 24 and later
ByReference
New in version 24
ByReference
ByReference
Used to find out whether the parameter was passed by default or by address.
WEBDEV - Browser code These properties are not available in browser code.

Re-stacking parameters

MyParameters is used to easily re-stack the parameters of a WLanguage procedure: the parameters (or some of the parameters) of the current procedure can be passed to another procedure or to a WLanguage function.
The possible syntaxes are:
  • MyParameters: re-stacks all the parameters of the procedure.
  • MyParameters[2 TO]: re-stacks all the parameters of the procedure from the second one.
  • MyParameters[TO 3]: re-stacks all the parameters of the procedure up to the third one (inclusive).
  • MyParameters[2 TO 4]: re-stacks all the parameters of the procedure from the second one to the fourth one (inclusive).
  • MyParameters[2 OF 3]: re-stacks three parameters of the procedure from the second one.
  • MyParameters[*]: re-stacks the additional parameters.
Note: No WLanguage error occurs if the requested parameters do not exist: the missing parameters are ignored.
Example: Overloading Open used to write into a trace file:
PROCEDURE Open(WinName, *)
Trace(WinName)
WL.Open(WinName, MyParameters[2 TO ])
WEBDEV - Browser code This feature is not available.
Minimum version required
  • Version 11
This page is also available for…
Comments
Click [Add] to post a comment