VB Script Procedures and Functions

1
213
Spread the love
  • 15
  • 23
  • 18
  • 18
  •  
  •  
  •  
  • 12
  •  
  •  
    86
    Shares

VB Script Procedures and Functions:

Both procedures and functions are basic block of codes which gives the modularization concept as well as re-usability concept.They allow us to break down the larger complex code into small reusable chunk of codes.

The block of code is a logical grouping of related tasks.They have certain structure. Calling a named block with or without argument is a contract between user and the named block.Once the contract is fulfilled the user can call the block of code to perform the action.

This approach of modularization increases the readability, re-usability and understandability . It is a very important concept while building automation framework.

In VBScript, there are two kinds of modularization techniques available.They are:

  • Sub procedure
  • Function

Naming convention of Sub and Functions:

  • The name should be clear.
  • The name should have a purpose.
  • We need to use verb Noun composition to create a name.

Sub Procedures:

A Sub procedure is a named block of a series of VBScript statements (enclosed by Sub and End Sub statements) that perform actions but don’t return a value.

A Sub procedure can take arguments (constants, variables, or expressions that are passed by a calling procedure).

If a Sub procedure has no arguments, its Sub statement must include an empty set of parentheses ().There is an alternative implementation also. It says that if the sub does not have any argument,there is no need to provide parentheses(). We can follow any one approach.

Syntax of Sub:


(public|private )Sub ProcedureName ()
Statements
-----------
-----------
End Sub
 

Or


(public|private )Sub ProcedureName(argument1, argument2)
Statements
-----------
-----------
End Sub
 

Example: 1


Sub ConvertTemp()
temp = InputBox("Please enter the temperature in degrees F.", 1)
MsgBox "The temperature is " & Celsius(temp) & " degrees C."
End Sub
 

Function:

A Function is a named block of a series of VBScript statements enclosed by the Function and End Function statements.

A Function procedure is similar to a Sub procedure, but can also return a value.The return type of a function is a variant.We can define the datatype as well.learn more about datatype to understand return type.

A Function procedure can take arguments (constants, variables, or expressions that are passed to it by a calling procedure).

If a Function procedure has no arguments, its Function statement must include an empty set of parentheses.

A Function returns a value by assigning a value to its name in one or more statements of the procedure. The return type of a Function is always a Variant.However returning a value from function is purely an optional step.

Syntax of Function:


(public|private)Function FunctionName ()
Statements
-----------
-----------
FunctionName =returnValue
End Function
 

Or


(public|private)Function FunctionName (argument1, argument2....argumentN)
Statements
-----------
-----------
FunctionName =returnValue
End Function
 

Example: 1


Function Celsius(fDegrees)
Celsius = (fDegrees - 32) * 5 / 9
End Function
 

Example: 2


Function cal(a,b,c)
cal = (a+b+c)
End Function
 

Why Public or Private is needed?

Public or Private are access control.They are useful while working with class.However in a single .VBS file they does not imply anything. By default all functions or procedures are public. However while working with class they play a significant role.

Getting Data into and out of Procedures or function:

  • Each piece of data is passed into our procedures using an argument.
  • Arguments serve as placeholders for the data we want to pass into our procedure. We can name our arguments any valid variable name.
  • When we create a procedure using either the Sub statement or the Function statement, parentheses must be included after the name of the procedure.
  • Any arguments are placed inside these parentheses, separated by commas.

Using Sub and Function Procedures in Code:

A Function in our code must always be used on the right side of a variable assignment or in an expression.

For example:


Temp = Celsius(fDegrees)
 

-Or-


MsgBox "The Celsius temperature is " & Celsius(fDegrees) & " degrees."
 

To call a Sub procedure from another procedure, type the name of the procedure along with values for any required arguments, each separated by a comma.

The Call statement is not required, but if you do use it, you must enclose any arguments in parentheses.

The following example shows two calls to the MyProc procedure. One uses the Call statement in the code; the other doesn’t. Both do exactly the same thing.


Call MyProc(firstarg, secondarg)
MyProc firstarg, secondarg
 

Notice that the parentheses are omitted in the call when the Call statement isn’t used.

Note:

  • We can call a sub from function and alternatively we can call a function from Sub.
  • VBscript does not support varargs as java but supports optional arguments.All functions and subs can take optional argument and optional argument must appear at last in the argument list.
  • For arguments we need to mention the mandatory argument first followed by optional arguments.

How to exit from Function or Sub?

The keyword to exit from function is Exit Function and Sub is Exit Sub.The exit Function or Exit Sub keyword will terminate the execution and come out of the function or sub.Once the Exit Function or Exit sub is encountered by WSH the control goes back to the position from where the function or procedure is called with a return value in case of Function.

In general Exit Function and Exit sub does not play a significant role but while using in a loop, they become super relevant.

VB Script Built in Functions

Types of Functions
o Conversions
o Dates/Times
o Formatting Strings
o Input/Output
o Math
o Miscellaneous
o Rounding
o Strings
o Variants

Here are the set of functions that the VBScript or UFT engineers must know.

Asc Function

Returns ANSI character code corresponding to first letter in a string.


Syntax:
Asc(string As String) As Integer
Calling:
n = Asc(string)

Note: if the String is of zero length it will throw an error.

Example:


Dim val
val="hyderabad"
' it treats as H
val=Asc(val)
msgbox val

Chr Function

Returns the character associated with the specified ANSI character code.

Example:

Dim val
val=65
val=Chr(val)
msgbox val 
'Output: A

Date Function

It returns current system Date

Don't miss out!
Subscribe To Newsletter

Receive top technical news, lesson ideas, travel tips and more!

Invalid email address
Give it a try. You can unsubscribe at any time.

Spread the love
  • 15
  • 23
  • 18
  • 18
  •  
  •  
  •  
  • 12
  •  
  •  
    86
    Shares

1 COMMENT

  1. Warm Greetings,
    Mr. Animesh, would kindly shed some light on the topic of Regression Testing. Some of the QA forums are quite confusing. People have different experiences and they have their own point of view and styles regarding how they approach Regression Testing. Some says that Regression Testing is conducted when there is a new release or build joined the existing application. Some people also include that Regression testing is needed after bug is fixed and sent back to the QA team to recheck. So which is the right definition? and could you also give me a scnerio based example so i will have a better understanding of it. Thanks for listening to me and providing me with your helpful views.

LEAVE A REPLY

Please enter your comment!
Please enter your name here