I recently received a question from a Cognos customer as follows:
I have set up a report to run on schedule. It produces large output >40Mb. It will not go through our Outlook. Is there a way to send the attachment to our OneDrive Instance?
Here are some ideas:
There isn’t a built-in way that I know of to save report output to OneDrive, but you do have some options.
First, Cognos 11.1.5+ offer the ability to save report output to cloud object storage. This is similar to OneDrive, but only AWS S3, IBM Cloud Object Storage, Google Cloud Platform, and MinIO are supported. The last one is a self-hosted open-source solution that isn’t likely to be the right fit for this situation. If you went any of these routes, you could save output from Cognos to the cloud storage provider. However, getting the link sent to your recipients isn’t something that I think can be automatically done out of the box. It is possible that you can configure your cloud provider to send a notification when a file is uploaded to a particular folder, which might approximate this behavior. Source
Second, you could set up the schedule to send a link to the report output rather than the attachment. This typically has licensing implications for users to log in to Cognos and is, therefore, sometimes not utilized. However, this is something that you could implement today if your recipients have accounts in Cognos.
Third, a low tech solution that might work in your environment, assuming your recipients are all within your company email domain is to increase the max attachment size. Office 365 offers the ability for administrators to increase the max attachment size up to 150MB. Source
Fourth, a more complex but complete solution would be to write a Cognos SDK application that either
- runs at the desired time daily or weekly, runs the report, uploads the content to OneDrive, and sends an email with the resulting link to the desired recipients, or
- configure the Cognos schedule to simply save the report output in Cognos rather than email it and have the SDK application log in, grab the latest output saved in the content store, upload to OneDrive, and distribute to the desired recipients.
Obviously, this option requires a programming skillset but option #2 would not be a super challenging program to write for folks familiar with Java (or C#). You would then also need somewhere to run the SDK application on the scheduled basis, but that could be colocated with a Cognos server for simplicity if you so desired.
I’m sure there are other ideas on how to solve this problem. Feel free to suggest alternate options here!