Refreshing a DESKI document containing VBA via InfoView

Hi there

Trying to refresh a DESKI document with a VBA macro using InfoView. Works O.K in DESK full-client for same user. Not in InfoView. Is it possible? Is there some switch somewhere which need to be enabled.

Many Thanks


philipo (BOB member since 2005-07-22)

Yes In XIR2 the VBA SDK has been removed. You can not run the VBA on the servers anymore. This is for compatibility with all BO platforms.

You have to run the report with desik in interactive mode.


ClaireB :de: (BOB member since 2002-08-09)

With all due respect to Klaus, VBA support has not been removed totally. The first requirement is that you be running on a Windows server platform of course. After that, there are other limitations (nothing interactive, change any ActiveDocument references to ThisDocument, can’t open other documents, etc.), but VBA does still work. If you could tell us what your VBA code does, it MIGHT be possible to rewrite it a bit and get it to work.


Dwayne Hoffpauir :us: (BOB member since 2002-09-19)

i am trying this

ThisDocument.Reports.Item(“Report1”).Activate
ThisDocument.ActiveReport.ExportAsText (“H:\DATA\Reporting\9622DEV\ReportsDEV\webitest.txt”)

in webi (6.5); it does not work; is this supported in 6.5??


achander (BOB member since 2006-08-03)

I was trying to get across the message from Business Objects and also be very clear about the potential this has for customers not yet on XIR2. Don’t think it will work but assume it will not work.

I agree that some of the SDK does still work. But you have to test and validate your procedures.
There is absolutely no commitment from BO to keep it in there. I could be that in the next patch or release it is gone for good.

In 6.5 these features should work as long as you work on a .rep and not a webi document.


ClaireB :de: (BOB member since 2002-08-09)

Hi Guys

Please find example of vba code in docuemnt which when open in full-client DESKI display sthe message but when open the same docuemnt via Infoview, doesn’t work.

Private Sub Document_Open()

MsgBox (“if this appears then Vba text boxes work on InfoView”)

End Sub

Any ideas?

Many Thanks


philipo (BOB member since 2005-07-22)

In my previous post, I noted that one limitation is anything interactive (like a MsgBox). Not so much an XI limitation, but the nature of web-based applications (like InfoView). If it did appear, it would be on the console of the SERVER, not in your browser.

To prove that some VBA does work, instead of MsgBox, create a simple document from eFashion, for example. Add one variable (a named formula) called . Put the text string “Before” (without quotes) as the formula and display it on the report page.

Now add this code:

Private Sub Document_AfterRefresh()
    ThisDocument.DocumentVariables("Msg").Formula = "After"
End Sub

After refreshing (even via InfoView), the Msg should say After.


Dwayne Hoffpauir :us: (BOB member since 2002-09-19)

Hi Dwayne

This works great.

Thanks for your help and confirming this.


philipo (BOB member since 2005-07-22)

Hi there

Is there any documenaion saying what is specifcally allowed with VBA through InfoView, examples. Some of our power-users wish to have VBA display help information via VBA to users of the reports.

Many Thanks


philipo (BOB member since 2005-07-22)

Hi Dwayne,

First, Thanks a lot for sharing such useful information.

It was really helpful.

The same trick worked for the scheduled reports too :smiley:

Is there any sort of documentation that would help me
to understand much more about “What more can be done
through VBA ?”

Thanks & Regards,
Sandeep Kumar


sandeepkumar :india: (BOB member since 2006-06-27)