Upload WebI Reports To Repository

Hi,

We’re currently migrating to BOXI 4 from BOXI 3.1. I have a user who has saved over 1000 WebI reports to his PC rather than uploading them to the repository. He didn’t remove the security from these reports so only he can open them. He also said he needs them all! :hb: This is causing us a problem to migrate him to BOXI 4.

Is there any way to remove the security from reports held on the local PC so that anyone can open them? I’m looking for an automated method rather than having to go through them one by one.

Also, is there any way to upload WebI reports in bulk to the repository?

Thanks

Ken


spartan1337 (BOB member since 2011-06-22)

Are you in a position where they can still export to XI3.1 repository from their machine and then you can run the converter?

The 3.1 system is still available but since there’s over 1000 reports we wanted to see if there’s an automated way to go about this.


spartan1337 (BOB member since 2011-06-22)

Can’t you export more than one report at once from Rich Client to the repository?

You can open multiple for sure, but from what I’ve seen you can only export one at a time.


spartan1337 (BOB member since 2011-06-22)

Ah right; I cannot check that for you. If they don’t exist at all on the repository already, i.e. no ID, then I don’t see how you’d be able to do anything other than a one-by-one export if you cannot export all open docs.

[quote=“Mark P”]

yes, in webi RC XI 3.1, you can only export reports one by one. i don’t know if it can be scripted using SDK


bernard timbal :fr: (BOB member since 2003-05-26)

Rubbish!

Get him to do the one by one exporting, and I bet, miraculously, many will suddenly no longer be needed.


anorak :uk: (BOB member since 2002-09-13)

Exactly that.


Nick Daniels :uk: (BOB member since 2002-08-15)

I agree that it doesn’t make sense that he needs all the reports. I’ve already tried to convince him to check what he really needs but he refuses. I can’t shutdown BOXI 3 till he moves, if I try to push him he talks to upper management who put the brakes on everything too. I’m kinda stuck :frowning:


spartan1337 (BOB member since 2011-06-22)

There’s no easy solution.

I suggest you contact SAP Consulting and get a quote on someone writing a script to upload multiple local WebI documents to the repository.

Then you can provide management with the options:

  1. Pay the SAP consulting bill
    or
  2. Get the guy to rationalise his list of reports and manually upload them

Hayden_Gill :australia: (BOB member since 2002-08-15)

This Java program will load all wid files from a local directory into a specified CMS folder. I tested it with a couple of WRC-generated wid files that were not saved “for all users”.

Change the value of destFolder to be the ID of the CMS folder to load the documents into. Change the following line to the directory containing the wid files. And, of course, use a valid ID/password/CMS.

Joe

import java.io.File;

import com.businessobjects.sdk.plugin.desktop.webi.IWebi;
import com.crystaldecisions.sdk.exception.SDKException;
import com.crystaldecisions.sdk.framework.CrystalEnterprise;
import com.crystaldecisions.sdk.framework.IEnterpriseSession;
import com.crystaldecisions.sdk.occa.infostore.IInfoObjects;
import com.crystaldecisions.sdk.occa.infostore.IInfoStore;

public class PublishWID
{

	public static void main(String[] args) 
	throws SDKException
	{
		new PublishWID();
	}
	
	public PublishWID() throws SDKException
	{
		IEnterpriseSession enterpriseSession = CrystalEnterprise.getSessionMgr().logon( "<<user id>>","<<user password>>", "<<cms>>", "secEnterprise");
		IInfoStore oInfoStore = (IInfoStore)enterpriseSession.getService("", "InfoStore");
		IInfoObjects newIOs = oInfoStore.newInfoObjectCollection();
		Integer destFolder = 950096;
		
		File[] wids = new File("c:\\temp\\").listFiles();
		for(File wid : wids)
		{
			if(!wid.getName().toLowerCase().endsWith(".wid"))
				continue;

			IWebi newWebi = (IWebi) newIOs.add(IWebi.KIND);
			newWebi.setTitle(wid.getName().substring(0, (int) (wid.getName().length()-4)));
			newWebi.setParentID(destFolder);
			newWebi.getFiles().addFile(wid);
			newWebi.save();
		}
	}
}

joepeters :us: (BOB member since 2002-08-29)

I love it! Good stuff, Joe. Thanks for the contribution.


Atul Chowdhury (BOB member since 2003-07-07)

+1

… although I still think you should tell management it’ll cost $20K

Then you can split the profits with Joe :rotf:


Hayden_Gill :australia: (BOB member since 2002-08-15)

It’s great to have a technical solution, but you are actually ‘masking’ an underlying problem with users believing / insisting that they need such a ridiculous number of reports to do their job. Senior business management should be made aware of the issue, and the implications on maintenance, migration etc., etc…

A couple of years’ ago, at my last client, I analysed report usage across the whole user base. There over 15,000 reports in total, in both public and personal folders, yet fewer than 300 had been refreshed in the previous year!

The problem with ‘empowering the end-user’ is that you get a multitude of people generating the same crap, when it already exists elsewhere. Let’s hear it for I.T. centrally controlled dictatorship! :smiley:


anorak :uk: (BOB member since 2002-09-13)

I’d go one stage further and say you get a multitude of people generating different answers to the same question.

Debbie


Debbie :uk: (BOB member since 2005-03-01)

:+1:


joepeters :us: (BOB member since 2002-08-29)

This has been an issue for years, and will accelerate as self-serve-BI tools gain traction. I’m all for getting data into the hands of people that need it, but it needs to coincide with the delivery of properly curated (i.e., centrally-managed) content. A lone business person developing tons of reports could have a number of causes:
[list][:5369ff7159]There nature of the business demands a flow of truly ad-hoc reports (the bread-and-butter of BI)
[
:5369ff7159]The business people prefer doing stuff their own way
[*:5369ff7159]The centralized reporting team either doesn’t exist or is not responsive[/list]
So, the mere existence of a ton of user-generated reports doesn’t necessarily prove that a problem exists, but is definitely worth investigating to see if there is a problem that can be rectified.

Joe


joepeters :us: (BOB member since 2002-08-29)

Thanks for the code Joe.

I have similar requirement where I need to load 100 .wid report from local drive.

How to run this script in BO Server.
I know im asking very basic question wanted to make sure im doing it correctly.

steps I followed:
-Created a .jsp file and kept your script in this and modified accordingly with user name, destination folder, password etc.

  • Kept this file in Tomcat folder //webapps/InfoViewApp/
  • Launched IE and ran this script by calling: http://:8080/InfoViewApp/XXXXXX.jsp

Let me know if these steps are correct or not. If not let me know where to run this script.

Your help on this is greatly appreciated.

Thank in Advance.


bob_new (BOB member since 2017-08-24)