cancel
Showing results for 
Search instead for 
Did you mean: 

trying to migrate from crystal 2008 to crystal 2011

Former Member
0 Kudos

I have been tasked with moving all of our reports on crystal server to crystal enterprise 2011.  They started out on Crystal X Enterprise and I moved them to XI3.1, but now I can't go the last step to 2011.  Any report that has a destination isn't created in 2011 because there are two destination property bags.  The exact error is "Two destination property bags exist. Use the bag that is appropriate for your client's version number: SI_DESTINATION (version XI and earlier) and SI_DESTINATIONS (version XI Release 2 and later)."  I took an old report that is no longer used and set it's destination to Default in crystal 2008 and tried but got the same error.  We have about 800 reports in Crystal Server and I don't really want to have to go through and recreate the ones that have destinations.  What am I missing here?  I am sure it is something simple, but I am just not seeing it.  Thanks for all your help.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

I finally got it figured out and will post it here in case anyone else has this issue.  I created a java app in netbeans and had it call this function:

private static void deleteSI_DESTINATION() throws SDKException {

        IInfoStore iSt;

        ISessionMgr sm;

         IEnterpriseSession es;

         IInfoObjects boInfoObjects;

        sm=CrystalEnterprise.getSessionMgr();

         es=sm.logon("yourusernamehere","yourpasswordhere","yourserverhere","secEnterprise");

         iSt=(IInfoStore)es.getService("InfoStore");

         boInfoObjects=(IInfoObjects)iSt.query("Select * from CI_INFOOBJECTS Where SI_KIND='crystalreport'");

         for (int x=0;x<boInfoObjects.size();x++) {

            IInfoObject obj=(IInfoObject)boInfoObjects.get(x);

            ISchedulingInfo schedInfo=obj.getSchedulingInfo();

            IProperties props=schedInfo.properties();

            props.setProperty(CePropertyID.SI_DESTINATION, null);

            obj.save();

            iSt.commit(boInfoObjects);

        }

        System.out.println("Done");

}

Once I ran this code, I could then move the reports from Crystal Enterprise XI3.1 to Crystal Enterprise 2011. 

Answers (0)