A many times is has been asked that how to find first release date of purchase order at all levels, where PO may be release many times at many levels, but we want to exactly know the initial release date.
Take an example —
I have created a purchase order (in ME21N) and it has been release by all levels are per approval/ release hierarchy set in mm configuration on say ‘01.05.2022’ but due to some reason correction was required and release of PO get cancelled. After making necessary correction when PO was saved it again came in release hierarchy and got approved/released at all levels on say 06.05.2022.
Again due to same changes supposed PO get release cancelled and after making necessary correction in PO, it was again got released by all levels on 08.05.2022.
Now user want to find out initial date of release at all level which was 01.05.2022 as per our example. How can we find out?
There were many blog, question and answers to this problem, but I felt that most of them are not up-to mark for satisfaction.
After going through various SAP tables and scenarios, the following is solution, which I think will get clear picture of initial release date.
We will take data from EREV, CDPOS, CDHDR table.
Run t-code “SE16N” and Enter table name as “EREV”
In table EREV, Enter following data
Document Category (Field BSTYP) as “F”
Purchasing Doc. (PO No.) (Field EDOKN) (Your PO No.) say 4600014505
Release On (Field FGDAT) set “Not equal to blank”
and Click Execute icon, you will get result with release date.
This date may not be correct date, as this date is latest update / release date.
Now, we go forward to confirm the first release date.
Now, Open t-code SE16N in another screen and enter table name as CDPOS
Now enter following data (change PO No. as per your requirement) and other remaining field is to be kept as shown in below screenshot.
Now click on Execute icon, you will result like below
If you get no result or single row for your combination then, the Released on (Field FGDAT) date found in EREV table (above) as in our case “05.07.2019″ is initial/ first release date at all levels.
Case – 2
If you get more than one row for your combination, then we have to take lowest Doc. No. and then pass it with our combination to CDHDR date
Step (i) and Step (ii) are to be performed in similar way as already mentioned above.
Let take another PO say 4600014287, result of EREV data with same combination (step (i)) is as under
Now with same combination of CDPOS as mentioned in earlier example (Step (ii)) with this PO (4600014287), we get more than one row. See below
Here we have to take smallest Doc. No. from all resulted rows as shown in figure above.
Now, again run t-code SE16N and enter table name CDHDR.
Also enter details such Doc. Object, PO No., Document No. (smallest no. taken from CDPOS table), and Transaction as as under. Enter TCODE both ME28 and ME29N
Click on Execute icon. You will get following screen.
The date as highlighted above is your first/ initial release / approval date of said purchase order (PO).
You can try it as your level, you will get desired result.
I hope, your query related to initial / first level approval at all levels will end here.
Above steps can be performed by anyone, however for bulk data please take help of ABAPer.