Solved

Error 80020101 while calling javascript function from Visual Basic

Posted on 2007-03-25
2
11,413 Views
Last Modified: 2013-11-27
Hi Gurus,
I am facing problem while calling a javascript function from Visual basic. Basically my requirement is like this.

First I have to invoke a web page from visual basic and once it is called, I have to invoke javascript function in it. While debugging the code, I could see that the web page gets loaded successfully but the code gives error 80020101 when it executes the call to javascript function. Below is the code that I have used.

Dim oIE As Object
'Create the IE application object.
oIE = CreateObject("internetexplorer.application")
'Load the URL.
oIE.Navigate("http://xyz.net:8065/bc/bsp/crm_ic/default.htm?sap-client=220&sap-sessioncmd=open")
'Wait for the web page to load completely.
Do While (oIE.ReadyState <> 4)
Loop
'MsgBox(oIE.Document.frames.length)
Call oIE.Document.parentWindow.execScript("window.top.setProduct('1105206503')", "JavaScript")

I could successfully simulate the process by doing following steps -
1. Paste the URL in web brower and let the page load successfully.
2. Now paste the function in web browser like javascript:window.top.setProduct('1105206503')
By doing this, it calls the function successfully.

But when I am trying to execute this through VB code I get error 80020101.
I tried statements like -
Call oIE.Document.frames.execScript("window.top.setProduct('1105206503')", "JavaScript")
or
Call oIE.Document.frames(0).execScript("window.top.setProduct('1105206503')", "JavaScript")

but no use.

The statement MsgBox(oIE.Document.frames.length) returns 0 suggesting that there is only one frame on the page.

Help please.

Thanks,
Rahul.
0
Comment
Question by:raurangabadkar
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
2 Comments
 
LVL 7

Accepted Solution

by:
Dimandja earned 250 total points
ID: 18790237
0
 

Author Comment

by:raurangabadkar
ID: 18791381
Hi Master,

Thanks for the link. I checked it and tried few possibilities mentioned in it.

Today I started testing my code a fresh and I realized that may be I was not waiting enough for the page to get loaded successfully.

I added a wait in my code and now it has started working fine.

Points awarded.

Thanks,
Rahul.
0

Featured Post

Enroll in June's Course of the Month

June's Course of the Month is now available! Every 10 seconds, a consumer gets hit with ransomware. Refresh your knowledge of ransomware best practices by enrolling in this month's complimentary course for Premium Members, Team Accounts, and Qualified Experts.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

For most people, the WrapPanel seems like a magic when they switch from WinForms to WPF. Most of us will think that the code that is used to write a control like that would be difficult. However, most of the work is done by the WPF engine, and the W…
The ECB site provides FX rates for major currencies since its inception in 1999 in the form of an XML feed. The files have the following format (reducted for brevity) (CODE) There are three files available HERE (http://www.ecb.europa.eu/stats/exch…
This is Part 3 in a 3-part series on Experts Exchange to discuss error handling in VBA code written for Excel. Part 1 of this series discussed basic error handling code using VBA. http://www.experts-exchange.com/videos/1478/Excel-Error-Handlin…
Monitoring a network: why having a policy is the best policy? Michael Kulchisky, MCSE, MCSA, MCP, VTSP, VSP, CCSP outlines the enormous benefits of having a policy-based approach when monitoring medium and large networks. Software utilized in this v…

696 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question