I'm in the process of moving over our companies report management platform from Crystal Enterprise 9 to BusinessObjects Enterprise XI 3.1 SP2. We have an old VB6 app that uses the Crystal Enterprise InfoStore Library 9.0 (InfoStor.dll) to allow users to copy a report from one APS to another. Typically this is used to move reports from the development server to the production server.
Whilst testing this application against the new production server I am surprised to find that most of the application runs without a problem. I am able to conntect to the new CMS (nee APS), view the folder structure, view reports within the folders and view report properties. However, when I attempt to copy a report from one server to another it fails when I attempt to commit the copy. Here's the code that i'm using and that has previously worked fine against CE9:
Dim strErrorSource As String Dim strErrorDesc As String Dim lErrorNumber As Long On Error GoTo ErrorHandler Dim objSourceIStore As CrystalInfoStoreLib.InfoStore Dim objDestIStore As CrystalInfoStoreLib.InfoStore Dim objSourceReport As CrystalInfoStoreLib.InfoObject Dim objDestReport As CrystalInfoStoreLib.InfoObject Dim objDestReports As CrystalInfoStoreLib.InfoObjects Dim objReport As CrystalReportPluginLib.Report ' Logon to the source and destination Set objSourceIStore = GetIStore(strSourceAPSName, strSourceUserName, strSourcePassword, enuSourceAuthMode) Set objDestIStore = GetIStore(strDestAPSName, strDestUserName, strDestPassword, enuDestAuthMode) ' Get the source report Set objSourceReport = GetObjectByID(objSourceIStore, lSourceReportID) ' Get the destination report Set objDestReports = objDestIStore.NewInfoObjectCollection Set objDestReport = objDestReports.Copy(objSourceReport, ceCopyNewObjectNewFiles) objDestReport.Properties("SI_PARENTID").Value = lParentFolderID ' Commit the changes to the destination APS Call objDestIStore.Commit(objDestReports) ...
My question is therefore, seeing as how many of the other CE9 methods work against the BOEXI 3.1 installation, should I expect the Commit() method to also work, or does it need tweaking to get it to run?