Hi,
I am still relatively new to Alteryx; I am trying to learn some more intermediate/advance uses for Alteryx. I have a business need to run a report/s and deliver the individual results to each manager. As an example, I am trying to figure out how to run a process that extracts the email address for everyone who needs a report, build the report of their people then emails it to them:
My raw data might look like this:
Employee# | Employee Name | Manager Name | Manager Email |
123 | Employee Name1 | Manager1 | ManagerEmail1@Email.com |
456 | Employee Name2 | Manager1 | ManagerEmail1@Email.com |
789 | Employee Name3 | Manager1 | ManagerEmail1@Email.com |
147 | Employee Name4 | Manager1 | ManagerEmail1@Email.com |
258 | Employee Name5 | Manager1 | ManagerEmail1@Email.com |
369 | Employee Name6 | Manager2 | ManagerEmail2@Email.com |
321 | Employee Name7 | Manager2 | ManagerEmail2@Email.com |
654 | Employee Name8 | Manager3 | ManagerEmail3@Email.com |
987 | Employee Name9 | Manager3 | ManagerEmail3@Email.com |
963 | Employee Name10 | Manager3 | ManagerEmail3@Email.com |
852 | Employee Name11 | Manager3 | ManagerEmail3@Email.com |
741 | Employee Name12 | Manager3 | ManagerEmail3@Email.com |
My results would do the following: Send an email to the Manager identified and the report have the employee numbers and names:
Sent to: | ManagerEmail1@Email.com |
Report1 | |
Employee# | Employee Name |
123 | Employee Name1 |
456 | Employee Name2 |
789 | Employee Name3 |
147 | Employee Name4 |
258 | Employee Name5 |
Sent to: | ManagerEmail2@Email.com |
Report2 | |
Employee# | Employee Name |
369 | Employee Name6 |
321 | Employee Name7 |
Sent to: | ManagerEmail3@Email.com |
Report3 | |
Employee# | Employee Name |
654 | Employee Name8 |
987 | Employee Name9 |
963 | Employee Name10 |
852 | Employee Name11 |
741 | Employee Name12 |
From my limited understanding/research I have come up with a partial solution, but realized I don't know if enough to finish this out. Guessing there is a better approach...? or hoping someone could help me close out the rest of the process (the iterative part)?
I pull out all the the manager emails and then use the sample tool to select just the first row of the manager emails. Join that email address on the Manager email address from the original data to create the list of employees for the report. I create the table, by grouping on manager email address. I use manger email address as the "To" for the email and use the "Table" as the field for the body. My thought was to loop off of the right output of the join so eventually all the records would eventually be eliminated as they joined appropriately. I am guessing this is not the best solution.
Hoping for some community help. Thank you in advance for your thoughts/time!
-rich
Solved! Go to Solution.
Hi @RichD - I might be missing the point of your question, but I think you just want to group on the manager's email address (and name, if you want to use it in the e-mail subject) in the table tool to get the result you're looking for.
I also used a formula to create a subject line field that you can utilize. Let me know if the attached workflow does what you're looking to accomplish. Notice that the number of records for this example is 3, which matches how many managers you want to email.
Let me know if this is what you're looking for.
Thank you for your response. That looks like that might be what I am after (perhaps I was overthinking/over complicating it). I am just starting to use the reporting features.
In the workflow you shared, will "Manager1" only get "Report#1" or will all the managers get the same report with all the the employees on it? I am trying to make it so each manager gets only the report of their team members.
Yep, how it is set up will send the report to each manager who the information belongs to. In this case, the data will be split in to 3 reports and each manager will get the report that is tagged as theirs.
Perfect! Thank you for your time, expertise and explanation.