At Vince we develop solutions for extra authority control, like our Segregation of Duties module. Yesterday I was again told that one of our customers struggled with the setup of Roles in M3.
With many M3 users in a multinational environment it’s a tough job to sort out which programs should be connected to which roles and then connect roles to the appropriate users.
I’m a 55 year old M3-veteran and there are, to my knowledge, no quick fixes that solve this dilemma. But Audun, our CEO, tells us to always think of AI. So I did.
First, I created an excel file containing the history of what programs that has been used historically by which user. This can be done in different ways, In my case I extracted the file CSYSTR (program settings) and CSYSTP (start values).
I merged these so I get one sheet containing the unique combinations of USER, PROGRAM, LAST CHANGE DATE.
I also joined in file CMNFNG to capture the program (function description) TX40 to be added.
These things can of course be done using different tools, in my case I built it by creating new APIs with CMS010 and then extracting with our solution Vince Excel Add-In. But any other method will do of course.
Please note that these files do not capture 100% of used programs in M3, there are other ways of retrieving same information from the M3 user interface, depending on M3 version. Regardless of method it might be good to make selections on last used, exclude people no longer employed etc.
In ChatGPT, I attached the Excel file I created in step 1.
Then, after a few iterations, I gave the following instructions:
After roughly 3 minutes I get this reply from ChatGPT:
In short: I WAS BLOWN AWAY!
The returned Excel document looked like this:
There was of course a second sheet assigning these roles to the users.
Now, I do not seek the full fury of my fellow colleagues so I did not continue at this point updating our test environment. However, this is what I would have done in a realistic scenario: