Recently I have been doing a lot of transport approval workflows. This started after being requested time after time to fill out a word approval form for transports – this form was sent by mail to approval and then to the basis team which does the actual transfer into the production system.
There were several problems caused by this:
- A direct link between the from and the transports was missing
- There was no simple way to check for missing transports
- Since in the end the approval forms had to copied manually to a DMS folder they were sometimes lost.
- There was no simple way to audit them for example check who approved them or if any transport was transported without approval.
I talked to my project manager at the time and deigned a simple form allowing the project members to fill out details about the transport request, for example: requested transport time, transport type (development request, error fix etc.) improvement request number, module, risk level etc. add long text describing the request and link the relevant transport, getting the transport data using RFC from the development system.
We then added simple checks to the form which included checking if objects in the transport exist in any other transport which has not been transported into production. Only give a warning if another transport has been transported after the missing transport. Doing more complex checks, for example: in a development request check if the functions called are in any other transport request, tend to give a lot of false positive, which leads to a user simply ignoring them and missing the actual warning when it occurs.
Another improvement was to exclude objects from the checks, if you are a workflow consultant and worked using some transport management system I’m sure you repeatedly had to say something like “No, SWOTICE is not a real dependency…”
And a few more simple checks: was the transport transferred into the QA system? If the transport is an improvement request, has an improvement request number been added? Does this transport exist in another request?
After filling out the form the user sends this request for approval which includes:
- Business leader approval
- Project manager approval
- Basis Team (for transport into production)
Now when the business leaders approve the request, they can see the request data and their approval is linked to the relevant transport requests. The project manager can see that the business leader has approved before approving the transport into the production. In the end of the process we gave the basis team which does the transports a simple link to the STMS transaction for the transport from the workflow task and set the requested transports in the list automatically. We also added email notification for every approval.
This process is working in several projects now and the best thing about this process is that I also get to use it myself! In some of the project this process was enlarged to include a development request data, links for adding documents to DMS, reports, more systems (gateway, BW etc.), approving requests for special users and more.
A few projects I am working in have started using SAP CHRAM on the solution manger, which give a built-in solution to some of the problems, maybe the next step will be to transfer this process to a CHRAM based workflow.