Cognos Analytics

 View Only
  • 1.  Bursting reports per customer

    Posted Fri January 13, 2023 09:29 AM
    I am quite new in using Cognos. I have been working on a report that needs to burst. This is a backorder report and currently we are generating one report in Excel format with separate pages for each customer. Busting is setup and working.
    However, I was asked if we can run the report per customer (who have backorder on products) and send emails to the branch. So report will be burst per customer rather than one report file (customer separated by page) . This would require to run the report per customer. How do I setup the bursting for this?  Current setup for bursting is below. Thanks in advance.

    Ilky Guclu


  • 2.  RE: Bursting reports per customer

    IBM Champion
    Posted Fri January 13, 2023 01:19 PM


    With bursting, there are two pieces to configure. The "Burst Groups" section controls how the report gets chopped up into individual outputs. It looks like currently you are creating separate outputs for each value in the Account item. To get separate outputs for each customer, you'd need to use an item here that uniquely identifies each customer. The second piece is the "Burst Recipient" section. This controls where the different outputs get sent to (and/or saved to - you can also burst back to the portal for users to view manually, rather than emailing). Currently you are using your Branch Email item to define the email addresses to send to, which sounds like it's correct based on what you are describing.

    When running or scheduling the report, it's also important to remember to check the box to enable bursting as the report runs.



    Mark Fry
    Technical Consultant

  • 3.  RE: Bursting reports per customer

    Posted Mon January 16, 2023 01:02 AM
    Hi Mark,
    As I mentioned in my port, the bursting is working with the current setup, however, the report includes all the customers separated by page. 
    I would like to run the report per customer and burst it like that. If I have 50 customer waiting for backorder, bursting should generate 50 reports and email that to the branch. How do I set this up? 

    Ilky Guclu

  • 4.  RE: Bursting reports per customer

    Posted Mon January 16, 2023 01:05 AM

    I agree with Mark. Just an addition, as far as i understood you have qreportlist query which distributes the report to individual users (not customers). But you might need to design your query to include customers also. Or you may create a seperate query for distributing the report to customer within a new burst instance and continue using the existing qreportlist in parallel.

    Hope this helps. If you need further questions, please do not hesitate to ask.


    Sukru Haciyanli

  • 5.  RE: Bursting reports per customer

    Posted Mon January 16, 2023 01:16 AM
    Tesekkurler cevabiniz icin. Fakat ben hala raporu ayri ayri customerlar icin nasil run edecegimi bilemiyorum. 

    My query (qreportlist) has the customer information (account code and name). Also has the branch email where the report needs to go. How do I schedule this report per matching customer and burst? 

    Ilknur (Ilky)

    Ilky Guclu

  • 6.  RE: Bursting reports per customer

    Posted Mon February 13, 2023 03:41 PM
    Edited by Logan Whitaker Mon February 13, 2023 03:45 PM

    If your burst was configured correctly then it should already be sending emails with only the data intended for that recipient. I noticed in your screenshot that you never defined a Master Detail Relationship or Label which is probably why it's sending everything to everybody. 

    I'll give some steps here that you can compare against your end to see if it's configured correctly.  In my approach, I'm using two entirely different queries (one for the data to send and another with a master list of all the account codes and their emails).  In your example, you may be able to do all this using the same qReportList query as long as you join them as shown in the steps below.  But read below and you'll get a feel for it. 

    1. Create a standalone query somewhere in your report that contains what I'm calling the "join key" that is also found on the data you want to email.  This could be your account codes or something.  This query should have, at least, that "join key" and another field with the email address(es) for where to send the emails for any data belonging to that "join key". 

    2. Then go to Report; go to the Properties panel, and open the Burst Options properties.
    3.  From the Burst Options pop-up window within the Burst Groups panel on the left, select the query name that is being used to generate all the final data you are reporting out (this is query that is tied directly to your report page).  In my example it's Query2 that is the final query used for the report data being sent. Then from the Label field, select the column name from your query (in my case it's a field from Query2 named BURST JOIN FOR EMAILS) that indicates how you want the data from the query sliced into what I think are account code-specific subsets of data.  Then from the Groups panel, select that same field again - assuming you want the data grouped by account code or whatever also.  
    4. Now under the Burst Recipient panel on the right side of the pop-up window, select the query name that contains all your account codes and email addresses to use for each account code (Note: it works best if one account code has one record and, if multiple email addresses are used for that one account code then put them on one row and seperate them by commas in the underlying query).  You'll see in my example my query name is Emails for Bursting.  For Data Item you select the column name from your query, in mine it's a column from Emails for Bursting query, that contains the email addresses.  In mine the column is named EMAILS.  Then under the Type field, select Email addresses so it knows the format of what it finds in the EMAILS column. 
    5. Next open the Master Detail Relationships from the same pop-up window. 
    6. Now you will see two panels (left and right) each with the name of the two queries you defined in previous steps.  In mine it's Query2 that has all the data I want to slice up and then Emails for Bursting that contains all the email addresses for the various account codes.  You'll create a relationship by joining the account codes from one query to the other so it knows that when it finds data belonging to a certain account code in Query2 that it can find the email addresses for that account code in Emails for Bursting.  
    7. Save the report and go to your schedule/create a schedule.  Select your Format (I've selected HTML here but maybe you want to choose Excel or something).  For Delivery go ahead and select, at a minimum, Email.  You can select all the variations you want within that like sending at an attachment, save a copy to the Cognos run history, etc.  When you select Email for Delivery options, it might have a recipient email address in it by default as you set it up, but ignore it cause the next step you'll put a checkmark on Burst This Report which will override any email address you may see as you were setting it up for emails in the first place. 

    Now when this report runs, it should only be sending the data to each email address already tailored to only THEIR data (ie. your account codes).  If there is data in your Query2 for an account code that doesn't exist in Emails for Bursting query (or maybe it's there but the EMAILS column is empty when it finds it) then it will not send any data for that particular set of email addresses (but it will still burst to all others). 

    Hope this helps. Görüşürüz!

    Logan Whitaker