' macro to run an Impromptu report and save it as a pdf ' this code is for examplary purposes only ' it is provided as is with no guarantee of any kind ' error trapping has not been included Declare Sub SaveThePDF(cat$, imr$, userclass$, pdf$ ) Dim objImpRep as Object Dim objImpApp as Object Dim objPDFPub as Object Sub Main() Dim strToday As String Dim strReportName1 As String Dim strCatalogName1 As String Dim strUserClass As String Dim strFileName1 As String Dim strTo1 As String strToday = date$ strCatalogName1 = "C:\program files\Cognos\cer5\samples\Impromptu\reports\gosales.CAT" strReportName1 = "C:\program files\Cognos\cer5\samples\Impromptu\reports\Annual_Product_Sales.imr" strUserClass = "Creator" strFileName1 = "C:\program files\Cognos\cer5\samples\Impromptu\reports\Annual_Product_Sales" & strToday & ".pdf" call SaveThePDF ( strCatalogName1, strReportName1, strUserClass, strFileName1 ) msgbox "The pdf report has been saved as " & strFileName1 & " !" End Sub Sub SaveThePDF(cat$, imr$, userclass$, pdf$) Set objImpApp = CreateObject("CognosImpromptu.Application") Set objImpRep = objImpApp.OpenReport(imr) objImpApp.OpenCatalog cat, userclass strReportName = objImpRep.FullName objImpRep.RetrieveAll Set objPDFPub = objImpRep.PublishPDF objPDFPub.Publish pdf objImpRep.CloseReport objImpApp.CloseCatalog objImpApp.Quit Set objImpApp = Nothing Set objImpRep = Nothing Set objPDFPub = Nothing End Sub