Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Problem with function call
#1
Hi,

I wanted to pass the name of the webbutton from the datasheet. for this reason iam using the below code:

Code:
Function ClickWebButton(strName) If strName = "" Then Exit Function End If Set WbButton = Description.Create() WbButton("micclass").Value = "WebButton" WbButton("Index").Value = 1 ' ClickImage("name").Value = strName WbButtonFound = False Set AllWbButton = Browser("micclass:=browser").page("micclass:=page").ChildObjects(WbButton) For i = 0 TO AllWbButton.count-1 WBname = AllWbButton(i).GetROProperty("name") If WBname = strName Then WbButtonFound = True strDisable = AllWbButton(i).GetROProperty("disabled") AllWbButton(i).Click Exit Function Exit For End If Next Set WbButtonFound = Nothing End Function


and i am calling the above function
Call ClickWebButton(Save)-->Save is the name of the Webbutton used as the strName.

The above code is not working
Any help will be really appreciated.

Regards;
Vijay
Reply
#2
set one more property in your description object
Code:
WbButton("name").Value = strName

let me know how it goes.

Reply
#3
Hi Vijay,

When you attempt to create an object collection with the index as one of the defining properties, you're limiting the size of the object collection as well as stating that you're certain of the object to be retrieved through the use of the ordinal identifier. If you remove the below line of code, and create your function, you should see better results.

Code:
WbButton("Index").Value = 1

Secondly, you can improve performance in your code if you use the property within the description object instead of looping through all items and finding the button with the correct name. Since your code clicks the first found WebButton, wouldn't it be better to limit your code to the following:

Code:
Set WbButton = Description.Create() WbButton("micclass").Value = "WebButton" WbButton("name").Value = strName Set AllWbButton = Browser("micclass:=browser").page("micclass:=page").ChildObjects(WbButton) AllWbButton(0).Click

Lastly, the below lines of code:

Code:
If WBname = strName Then ClickWebButton = True

should be:

Code:
If WBname = strName Then ClickWebButton = True

I hope this helps.
Correction in my last statement:

Lastly, the below lines of code:

Code:
If WBname = strName Then WbButtonFound = True

should be:

Code:
If WBname = strName Then ClickWebButton = True
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Problem With conversion function wajid 3 2,535 10-01-2018, 01:16 PM
Last Post: wajid
  Calling a Function in Function Library when function is defined in an Action jitenderkkr 0 3,364 11-27-2014, 12:53 PM
Last Post: jitenderkkr
  Run Error on Function call in QTP essentials cnujonnala 1 2,725 12-31-2012, 02:38 PM
Last Post: krr
  How can we call a function stored in another test ? akhilsoni776 2 4,430 08-25-2011, 10:47 PM
Last Post: akhilsoni776
  call function from another library y1799 2 6,017 08-19-2010, 06:43 PM
Last Post: y1799

Forum Jump:


Users browsing this thread: 1 Guest(s)