You are on page 1of 23

VBScript

Session 1

Dani Vainstein

Subjets for Session 1


Vbscript fundamentals. Variant subtypes. Variables. Option Explicit statement. Keywords. Scope and liftime of variables. Dim, Private and Public statements. Rem statement.

Dani Vainstein

What is VBScript?
A Safe subset of visual basic The VBScript Code is case Insensitive. Microsoft Visual Basic Scripting Edition brings active scripting to a wide variety of environments, including Web client scripting in Microsoft Internet Explorer and Web server scripting in Microsoft Internet Information Service (IIS).

Dani Vainstein

Microsoft Script Timeline

Version 1.0

Version 2.0

Version 3.0

Version 3.1

Version 4.0

Version 5.0

Internet Explorer 3.0 8/96

IIS 2 12/96

Internet Windows Explorer 4.0 98 8/97

Visual Studio 6

Internet Explorer 5.0 Win NT 5.0

Note: QuickTest uses VBScript 5.6


Dani Vainstein 4

Scripting for Specific Platforms


VBScript
designed to run on multiple platforms that use the ActiveX Scripting Interface.

VBA (VB for Applications)


More sophisticated customization. Power user focus, natural upgrade, superb integration

Visual Basic
Best tool for distributed client/Server solutions. Powerful, robust, scalable.
Dani Vainstein 5

VBScript Data Types


VBScript has only one data type called a Variant. A Variant is a special kind of data type that can contain different kinds of information, depending on how it is used. Because Variant is the only data type in VBScript, it is also the data type returned by all functions in VBScript. At its simplest, a Variant can contain either numeric or string information. A Variant behaves as a number when you use it in a numeric context and as a string when you use it in a string context.

Dani Vainstein

VBScript Data Types Variant Subtypes

Beyond the simple numeric or string classifications, a Variant can make further distinctions about the specific nature of numeric information. For example, you can have numeric information that represents a date or a time. When used with other date or time data, the result is always expressed as a date or a time. You can also have a rich variety of numeric information ranging in size from Boolean values to huge floating-point numbers.

Dani Vainstein

VBScript Data Types Variant Subtypes


Subtype Empty Description Variant is uninitialized. Value is 0 for numeric variables or a zero-length string ("") for string variables. Variant intentionally contains no valid data. Contains either True or False. Contains integer in the range 0 to 255. Contains integer in the range -32,768 to 32,767. -922,337,203,685,477.5808 to 922,337,203,685,477.5807. Contains integer in the range -2,147,483,648 to 2,147,483,647. Contains a single-precision, floating-point number in the range -3.402823E38 to -1.401298E-45 for negative values; 1.401298E-45 to 3.402823E38 for positive values. Contains a double-precision, floating-point number in the range -1.79769313486232E308 to 4.94065645841247E-324 for negative values; 4.94065645841247E-324 to 1.79769313486232E308 for positive values. Contains a number that represents a date between January 1, 100 to December 31, 9999. Contains a variable-length string that can be up to approximately 2 billion characters in length. Contains an object. Contains an error number.

Null Boolean Byte Integer Currency Long Single

Double

Date String Object Error

Dani Vainstein

Variables
A variable is a convenient placeholder that refers to a computer memory location where you can store program information that may change during the time your script is running. For example, you might create a variable called ClickCount to store the number of times a user clicks an object on a particular Web page. you only have to refer to a variable by his name to see or change its value.

Dani Vainstein

Declaring Variables
You declare variables explicitly in your script using the Dim statement, the Public statement, and the Private statement. For example: Dim DegreesFahrenheit You declare multiple variables by separating each variable name with a comma. For example: Dim Top, Bottom, Left, Right

Dani Vainstein

10

Declaring Variables
You can also declare a variable implicitly by simply using its name in your script. That is not generally a good practice because you could misspell the variable name in one or more places, causing unexpected results when your script is run. For that reason, the Option Explicit statement is available to require explicit declaration of all variables.

Dani Vainstein

11

Option Explicit Statement


Forces explicit declaration of all variables in a script. If used, the Option Explicit statement must appear in a script before any other statements. When you use the Option Explicit statement, you must explicitly declare all variables using the Dim, Private, Public, or ReDim statements. If you attempt to use an undeclared variable name, an error occurs. Tip Use Option Explicit to avoid incorrectly typing the name of an existing variable or to avoid confusion in code where the scope of the variable is not clear.
Dani Vainstein 12

Naming Restrictions
Must begin with an alphabetic character. Cannot contain an embedded period. Must not exceed 255 characters. Must be unique in the scope in which it is declared.
Tip meaningfull prefix to variables to indicate the subtypes i.e iCounter (integer), strName (String), bFlag (Boolean), dteToday (Date)

Dani Vainstein

13

VBScript Keywords
Empty
The Empty keyword is used to indicate an uninitialized variable value.

Null
The Null keyword is used to indicate that a variable contains no valid data.

True
The True keyword has a value equal to -1.

False
The False keyword has a value equal to 0.

Nothing
The Nothing keyword in VBScript is used to disassociate an object variable from any actual object.

Dani Vainstein

14

Scopes and Lifetimes


A variable's scope is determined by where you declare it. When you declare a variable within a procedure, only code within that procedure can access or change the value of that variable. If you declare a variable outside a procedure, you make it recognizable to all the procedures in your script. The lifetime of a variable depends on how long it exists. The lifetime of a script-level variable extends from the time it is declared until the time the script is finished running. At procedure level, a variable exists only as long as you are in the procedure. ou can have local variables of the same name in several different procedures because each is recognized only by the procedure in which it is declared.

Dani Vainstein

15

Dim Statement
Dim varname[([subscripts])][, varname[([subscripts])]] . . . Declares variables and allocates storage space. Variables declared with Dim at the script level are available to all procedures within the script. At the procedure level, variables are available only within the procedure. You can also use the Dim statement with empty parentheses to declare a dynamic array. Note When you use the Dim statement in a procedure, you generally put the Dim statement at the beginning of the procedure.

Dani Vainstein

16

Private Statement
Private varname[([subscripts])][, varname[([subscripts])]] . . .

Declares private variables and allocates storage space. Private statement variables are available only to the script in which they are declared. The following example illustrates use of the Private statement:

Private MyNumber --- Private Variant variable. Private MyArray(9) --- Private array variable. --- Multiple Private declarations of Variant variables. Private MyNumber, MyVar, YourNumber

Dani Vainstein

17

Public Statement
Public varname[([subscripts])][, varname[([subscripts])]] . . .

Declares public variables and allocates storage space. Public statement variables are available to all procedures in all scripts. You can also use the Public statement with empty parentheses to declare a dynamic array.

Public MyNumber --- Public Variant variable. Public MyArray(9) --- Public array variable. --- Multiple Public declarations of Variant variables. Public MyNumber, MyVar, YourNumber

Dani Vainstein

18

Rem Statement
Includes explanatory remarks in a program. Rem Comment Comment As shown in the syntax section, you can use an apostrophe (') instead of the Rem keyword. If the Rem keyword follows other statements on a line, it must be separated from the statements by a colon. However, when you use an apostrophe, the colon is not required after other statements.

MyStr1 = "Hello" : Rem Comment after a statement separated by a colon. MyStr2 = "Goodbye" ' This is also a comment; no colon is needed. Rem Comment on a line with no code; no colon is needed.

Dani Vainstein

19

Assigning Values to Variables


Values are assigned to variables creating an expression as follows:
the variable is on the left side of the expression and the value you want to assign to the variable is on the right.

For Example :

B = 200

Dani Vainstein

20

Lab 1.1

Dani Vainstein

21

Lab 1.1
Write a small program
Declare using Dim 2 variables (a,b) Initialize the variables using a=10 and b=5 Apply the sum to variable c. Report to QTP the sum of the variables. Use remarks. Tip : Conversion

Now declare in the header Option Explicit

Dani Vainstein

22

Make sure to visit us


Tutorials Articles Projects And much more www.AdvancedQTP.com

23

You might also like