Manager - Idiots Guide to Creating a Report Workflow

Quest Gurus,

I need some help in setting up a report workflow for attestation. Basically, our current setup will simply run an attestation build for each of the apps we have added to Q1 but once the user approves or denies someone, nothing happens. We are currently NOT wanting to use the auto-provision functions because there are too many variables in some of those provisioning steps. Instead, I would simply like a report to be generated that shows who was approved and by whom that we can take to internal audit. Based off my limited understanding of workfows, I have already created an approval workflow but I have not created a report workflow. I think I have to build a report workflow and add it to the approval policy or procedure.

Is this correct? If so, how might I accomplish this? If someone has a link to a step by step, that would be awesome. Thanks!

  • Hi Dave,

    if you already have a report, you can do it from the WebPortal.

    Make the report available for subscription and allow employees to subscribe to this report.

    As employee log to the web portal and subscribe the report uner My Profile -> Report Subscription.

    There you can choose a schedule for delivery via mail.

    You can also use the the approval step "EX - approvals to be made externally" whichs fires an Event. In an Event you can sent a mail with the report.

    Regards,

    Geraldine

  • Thanks for the feedback Geraldine but I think that's the problem. There are not currently any reports created for this purpose. Basically, I want to make a report that says once user "X" has completed their attestation run for Application "Y", a report will be generated to show who they approved/denied. This report needs to basically show what actions each approver made on their respective approvees. Make sense? I looked at the Report generation tool in Manager and I see how to make a report but I am not sure which report form to run or if I can even make a report without doing something custom.

    I KNOW that the responses are stored in the Quest DB after attestation but I have no idea how to extract it from Quest.

    Update

    Okay, so I have added the approval step EX-Approvals to Be Made Externally and created an event called GENAPPROVERPT. Do I need to go into orchestration now and add a process to trigger from that event? I am not sure what function to use in the process orchestration to create a report like this... is there a prebuilt function or will I need to create some script to generate the report?

  • Hi Dave,

    you can create reports with the Report Editor tool. For details see the configuration documentation -> Reports in the Identity Manager.

    Basically, I want to make a report that says once user "X" has completed their attestation run for Application "Y", a report will be generated to show who they approved/denied.

    I would do that in the WebPortal. After saving the decision reuse the machanism you'll find in VI_Reporting_Subscription to generate reports. Because you have all the data already there.

    But you way sounds good to me as well.

    Regards,

    Geraldine

  • I appreciate the suggestion Geraldine but I wasn't able to do much. I went out and got the Configuration Guide and looked at the report section. It tells me how to create reports which is all good and well but I have NO IDEA how to set the proper data sources or anything like that. This is another example as to why this software is so frustrating. I need something like "Go Here, Click this and that, make this change here, validate there and your report is ready". There is NO SUCH thing like this for anything in Q1.

  • Hi Dave

    I need something like "Go Here, Click this and that, make this change here, validate there and your report is ready". There is NO SUCH thing like this for anything in Q1.

    Of course there is nothing like that in the manuals of Q1IM for the configuration part. This would require the knowledge of WHAT EXACTLY you want to report.

    The basic way would be:

    1. Identify the ObjectType you want to do the report on from the Q1IM database. In your case this might be AttestationCase but maybe something else as well. This is absolutely depending on your specific requirement.

    2. Identify the condition of the objects out of that object type you want to report on. You want a report over all database entries? Then it would be appropriate to do that using a SQL Collection. You want just a certain amount of objects? Might be a SQL Collection as well. You want to report on an specific object? Use the object query module. You want to report on up to n objects including history? Use the History of Objects module.

    3. Identify the variables of your import (might be in conjunction with 2 as the variables might be part of your condition) and define those

    4. Design your report in the nearly-WYSIWYG editor.

    You'll see, there are too mucvh moving targets to provide a "Go Here, Click this and that, make this change here, validate there and your report is ready"-documentation or manual. This is really completely up to your specific requirement.

    As far as i do understand your overall requirement, the report wouldn't be a part of the workflow at all. It would be an output on all attestations after those are done or whenever which might be pulled by whomever in whatever interface. You're next challenge might be the report distribution as there are also various ways to do that. The recommended way would be report subscriptions as mentioned by Geraldine before.

    HTH

    Carsten

  • Okay Carsten, I understand. The greatness of Q1 is how extensible it is. I guess the issue is that I am not entirely sure what needs to be done. I try to learn as much as I can about this thing every day but it seems to only get more and more complicated each time.

    I was able to generate an SQL query that displays the data I need from the Attestation History but I have no idea how to teach Quest to use this data as the report source. If I could just tell the Report tool to use the query I have and format just a few headers then I think it will work. But again, I can't figure out how to tell the report editor to accept this.

  • So if you have you query now the most important step is done. The next step will be to create a new report using the report edit tool.

    To do so, open the report edit tool and click on the green plus sign in the left upper corner to create a new report. You'll get an popup asking you for the report name, displayname and description. The second tab on that popup (data sources) will ask for your data source. In your case name it e.g. SQLQuery, switch the Query Module to "SQL" and copy&paste you query from SQL Server Management Studio or whatever query tool you're using. If it's in there, click ok.

    The popup will close and you'll get redirected to report design interface. On the right side of your screen you'll see three tabs, one of the is called "Dictionary". Using the dictionary you can now drag and drop entries from your data source into the report sheet to design your report. You can check the report design using the HTML preview.

    Does that help?

    Best

    Carsten

  • Dave,

    When you create a new report in the Report editor, you will get a dialog window to edit the report. The second tab “Data sources” is what you are looking for. It will allow you to specify a table source, or even arbitrary SQL. Change “Query module” to SQL, and then input your query.

    George

  • Thanks Carsten and George. I am almost there now! I used the Table function and created a table to place each entry. Those work now but I can't figure out how to use the header display. Is this part of those Data Bands? Also, the value for "IsGranted" simply need to display "No" instead of "False" how do I do that?

  • Also, the value for "IsGranted" simply need to display "No" instead of "False" how do I do that?

    The easiest way to do that would be directly within your query, e.g. using the replace function on IsGranted replacing the database value to your choice.

    I used the Table function and created a table to place each entry. Those work now but I can't figure out how to use the header display. Is this part of those Data Bands?

    Your table should be configured to have a header line. You can configure the table using the properties view next to the dictionary view on the right side when the table is selected / highlighted / focussed.