cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

This product reached the end of support date on March 31, 2021.

Dealing with PDF download Agent Recorder

igor_simoes1
Inactive

Hi,

I am monitoring a transaction that has to download a PDF file. On IE everything runs fine, until I click the link for the download.

The IE action bar about the donwload appears but the script IS NOT ABLE TO INTERACT WITH IT.

I have set events to DoesExist, IsEnabled, IsVisible etc... None of them work. I have also tried to click the Open button, with no success.

While recording the script the interactions with this bar were not recorded, but I can identify the elements using the controls from TestPartner. However all interactoins that I code on my VBA do not work and the script fails.

Are there any functions that I can use to test this step?

Thanks,

2 REPLIES 2

yuriy_look
Inactive

@Igor S.

The control you are talking about is called Internet Explorer
Notification Bar, see https://www.microsoft.com/nz/ie9/features/notificationbar.aspx. The Recorder does have some limitations on
automating this control, as it is noted in the Release
Notes' Technical Notes section
under Internet Explorer support
subtitle.

If the information in the Release Notes does not help, I can
suggest an easy solution. According to https://support.microsoft.com/en-us/help/15357/windows-internet-explorer-11-keyboard-shortcuts,
you can set focus to notification bar by sending Alt+N keystroke. The Recorder code would look like

IEWindow("Internet Explorer MainWindow".Type "{Alt N}"

Note the
other notification bar shortcut from the same page, spacebar, did not work for
me.

Once the focus on the navigation bar is established, you no
longer need to reference a specific control to use the Type method; you can just use Keyboard object. Notice
which navigation bar subcontrol has immediate focus, if necessary use {Tab} to move focus to another button,
{Right} to activate spin button
choices, and {Down} to select
the spin button choice you need. Finally,
once the necessary choice has a focus, you can send a {Return}. You, of
course, need to first do this manually and memorize or right down the
keystrokes you used. If you are lucky,
once the focus is set to navigation bar, it is immediately on the
necessary subcontrol, the code might look like

IEWindow("Internet Explorer MainWindow".Type "{Alt N}"
Keyboard.Type "{Return}"

In a more complex case the code might look (my fantasy) like

IEWindow("Internet Explorer MainWindow".Type "{Alt N}"
Keyboard.Type "{Tab}{Right}{Down}{Down}{Return}"

As a more general advice, maintaining focus and using Keyboard object often helps when you
have problems with representing controls you need to work with in the code. And, of course, image recognition and OCR
also help a lot in such situations.

Thank you,

Yuriy

igor_simoes1
Inactive

Yuriy,

Thank you very much for your answer. I will modify my code and let you know.

Regards,