VBScript

advertisement
VBScript
Session 5
Dani Vainstein
1
What we learn last session?
Branching
Branching using If…Then…Else
statement.
Branching using Select Case
Dani Vainstein
2
Subjects for session 5
Looping through code.
Do…Loop
While…Wend
For…Next
For…Each
Exit statement.
Dani Vainstein
3
Looping Through Code
Looping allows you to run a group of statements
repeatedly.
Some loops repeat statements until a condition is
False;
others repeat statements until a condition is
True.
There are also loops that repeat statements a
specific number of times.
Dani Vainstein
4
Do While/Until
Dani Vainstein
5
Looping Through Code
Using Do…Loop Statement
Repeats a block of statements while a condition is True or until a
condition becomes True.
The following looping statements are available in VBScript:
Do [{While | Until} condition]
[statements]
[Exit Do]
[statements]
Loop
Do
[statements]
[Exit Do]
[statements]
Loop [{While | Until} condition]
Dani Vainstein
6
Looping Through Code
Using Do…Loop Statement
You can exit a Do...Loop by using the Exit Do statement.
Because you usually want to exit only in certain situations,
such as to avoid an endless loop, you should use the Exit
Do statement in the True statement block of an
If...Then...Else statement.
If the condition is False, the loop runs as usual.
Dani Vainstein
7
Looping Through Code
Using Do…Loop Statement
Dim bCheck, Count
bCheck = True : iCount = 0
' Initialize variables.
Do
' Outer loop.
Do While iCount < 20
iCount = iCount + 1
' Inner loop.
' Increment Counter.
If iCount = 10 Then
' If condition is True...
bCheck = False
' set value of flag to False.
Exit Do
' Exit inner loop.
End If
Loop
Loop Until bCheck = False
Dani Vainstein
' Exit outer loop immediately.
8
Looping Through Code
Using While…Wend Statement
Executes a series of statements as long as a given condition
is True.
The While...Wend statement is provided in VBScript for
those who are familiar with its usage.
However, because of the lack of flexibility in While...Wend,
it is recommended that you use Do...Loop instead.
The While...Wend statement is provided in VBScript for
those who are familiar with its usage.
Dani Vainstein
9
Looping Through Code
Using For…Next Statement
Repeats a group of statements a specified number of times.
You can use For...Next statements to run a block of
statements a specific number of times.
For loops, use a counter variable whose value increases or
decreases with each repetition of the loop
Dim x
For x = 1 To 50
MyProc
Next
Dani Vainstein
10
Looping Through Code
Using For…Next Statement
Using the Step keyword, you can increase or decrease the
counter variable by the value you specify.
In the following example, the counter variable j is
incremented by 2 each time the loop repeats.
When the loop is finished, the total is the sum of 2, 4, 6, 8,
and 10.
Dim j, itotal
For j = 2 To 10 Step 2
itotal = itotal + j
Next
Msg = "The total is " & itotal
Dani Vainstein
11
Looping Through Code
Using For…Next Statement
You can exit any For...Next statement before the counter
reaches its end value by using the Exit For statement.
Because you usually want to exit only in certain
situations, such as when an error occurs, you should use
the Exit For statement in the True statement block of an
If...Then...Else statement.
If the condition is False, the loop runs as usual.
Dani Vainstein
12
Looping Through Code
Using For Each...Next Statement
A For Each...Next loop is similar to a For...Next
loop.
Instead of repeating the statements a specified
number of times, a For Each...Next loop repeats a
group of statements for each item in a collection of
objects or for each element of an array.
This is especially helpful if you don't know how
many elements are in a collection.
Dani Vainstein
13
Looping Through Code
Exit Statement
Exits a block of Do...Loop, For...Next, Function, or Sub
code.
Exit Do
Provides a way to exit a Do...Loop statement.
It can be used only inside a Do...Loop statement.
Exit For
Provides a way to exit a For loop.
It can be used only in a For...Next or For Each...Next loop.
Exit Function
Immediately exits the Function procedure in which it appears.
Exit Property
Immediately exits the Property procedure in which it appears.
Exit Sub
Immediately exits the Sub procedure in which it appears.
Dani Vainstein
14
Excercises
Dani Vainstein
15
Lab 5.1
Input parameters names are From and To
Assume that both inputs are integers.
Display in reporter all the pairs between For and To
Use the For...Next loop.
Tip
Use the Step statement.
Concatenate to a temporary string.
Try your program for the following values
From = 2 : To = 10 (2,4,6,8,10)
From = 1 : To = 9 (2,4,6,8)
From = -7 : To = 3 (-6,-4,-2,0,2)
From = 50 : To = 41 (50,48,46,44,42)
From = -3 : To = -9 (-4,-6,-8)
Dani Vainstein
16
Lab 5.2
Input parameters names are Pswd.
Declare a constant MY_PASSWORD.
Declare a constant MAX_RETRY = 3.
If the password is correct display a micPass message.
If the password is typed wrong more then MAX_RETRY
times, display a micFail message.
Use the Do..Loop (While or Until).
Tip
Use the Exit Loop statement.
Dani Vainstein
17
Make sure to visit us
Tutorials
Articles
Projects
And much more
www.AdvancedQTP.com
18
Download