Hi all,
I am trying to build a change log on our employee data. Currently, I can do it via a brute method. That is, I use the multi-row tool and manually write a logic to scan a field, row-by-row. If I have 10 fields that I am interested in, I will have 10 multi-row tools looking at the data.
My dataset has 100+ fields that I need to scan for changes.
Is there a way to do this smarter? Can Alteryx not only identify a change between rows but also identify the field without me manually writing out a logic for each individual field?
An example of my data:
| Date | Employee ID | Job Level | Title | Salary | Building |
| 1/1/2020 | AMC_001 | 1 | Analyst | 10,000 | B1 |
| 2/1/2020 | AMC_001 | 1 | Analyst | 10,000 | B1 |
| 3/1/2020 | AMC_001 | 1 | Analyst | 10,000 | B6 |
| 4/1/2020 | AMC_001 | 1 | Analyst | 10,000 | B6 |
| 5/1/2020 | AMC_001 | 2 | Manager | 20,000 | E3 |
| 6/1/2020 | AMC_001 | 2 | Manager | 20,000 | E3 |
| 1/1/2020 | AMC_055 | 7 | CFO | 90,000 | E1 |
| 2/1/2020 | AMC_055 | 7 | CFO | 90,000 | E1 |
| 3/1/2020 | AMC_055 | 7 | CFO | 90,000 | E1 |
| 4/1/2020 | AMC_055 | 7 | CFO | 90,000 | E4 |
| 5/1/2020 | AMC_055 | 7 | CFO | 90,000 | E1 |
| 6/1/2020 | AMC_055 | 7 | CEO | 100,000 | E1 |
An example of my logic in the multi-row tool:
Tool 1: if [Row-1:Employee ID]=[Employee ID] then (if [Row-1:Job Level] != [Job Level] then 'JOB Change: '+[Row-1:Job Level]+", "+ [Job Level] else "" endif) else "" endif
Tool 1 Output (for some rows): JOB Change: 1, 2
Tool 2: if [Row-1:Employee ID]=[Employee ID] then (if [Row-1:Title] != [Title] then 'TITLE Change: '+[Row-1:Title]+", "+ [Title] else "" endif) else "" endif
Tool 2 Output (for some rows): TITLE Change: Analyst, Manager
Tool XYZ...etc: if [Row-1:Employee ID]=[Employee ID] then...etc
Thanks,