Display last refreshed date and time in Report Output
We have a requirement wherein user want to know when was the report refreshed from source system i.e. on which date and time it was loaded into data target.We can get this information from two standard tables RSREQDONE and RSBKREQUEST.
RSREQDONE gives the information about timestamp of Infopackage.
RSBKREQUEST gives the information about timestamp of Data Transfer Process(DTP).
To get this information updated in Infocube, we have written code at the end routine level before updating Infocube by doing a lookup on these tables
RSREQDONE and RSBKREQUEST.
Below is the code starting with declaration part ,
In below code, we have maintained entry for Infopackage in TVARVC.This can be achieved by using STVARV tcode.
Below is the screen where we are fetching Infopackage technical name mentioned in table TVARVC.
Here variable ZLOGPID will have values of Infopackage name which is read from table TVARVC.
By passing ZLOGPID value too table RSREQDONE ,we are getting the extraction timestamp from the value of TIMESTAMPBEGIN.
To convert this TIMESTAMPBEGIN value into date and time,we have used standard function module’RSSM_GET_TIME’.
By passing Infocube name in where condition, we are doing lookup into the RSBKREQUEST table and getting the timestamp value of TSTMP_START of the Data Transfer Process.
Again to convert this TSTMP_START value into date and time,we have used standard function module ‘RSSM_GET_TIME’.
Finally we are updating these timestamp fields into target infoobjects.
After completion of data load, we can see this information populated in the report output.
You can also check the Infopackge extraction information from the PSA manage screen, as shown.
Infocube loaded date and time from DTP monitor screen.
Hey but here you will get multiple time stamps right? As same DTP and infopackage will be used for daily loading. So everytime we will have to sort it and then take up the first entry? correct?
Yes , you are correct we are handling that in the code