Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Version management for Smartform, ABAP Queries

Former Member
0 Kudos
867

Hello Experts,

I am developing a program to get versions of all objects in a given transport request from all systems(Dev, QA and Prod) in our landscape. I could get the versions from tables E071/VRSD for objects except smart forms, ABAP queries. I tried to get the versions for the generated function module/ABAP program without any luck. I am not sure how to identify the total number of versions generated for a smart form and how to determine which version is in QA/Prod?

Your inputs are valuable.

Thanks,

Vaishali

1 ACCEPTED SOLUTION

former_member585060
Active Contributor
0 Kudos
377

Hi,

For Smartforms try passing PGMID = 'R3TR', OBJECT = 'SSFO' in table E071, it will list all the Tasks created for the Smartforms. You can see the smartform name in field OBJ_NAME.

For Queries try passing PGMID = 'R3TR', OBJECT = 'AQQU' in table E071, it will list all the Tasks created for the ABAP Queries. You can see the Query name in field OBJ_NAME.

Thanks & Regards

Bala Krishna

8 REPLIES 8

former_member585060
Active Contributor
0 Kudos
378

Hi,

For Smartforms try passing PGMID = 'R3TR', OBJECT = 'SSFO' in table E071, it will list all the Tasks created for the Smartforms. You can see the smartform name in field OBJ_NAME.

For Queries try passing PGMID = 'R3TR', OBJECT = 'AQQU' in table E071, it will list all the Tasks created for the ABAP Queries. You can see the Query name in field OBJ_NAME.

Thanks & Regards

Bala Krishna

kesavadas_thekkillath
Active Contributor
0 Kudos
377

SE03

Former Member
0 Kudos
377

Hi,

try to pass the information provided by Bala Krishna in SE03, you will get the related transport requests but you can't compare the code change.

thx

Former Member
0 Kudos
377

Hi Vaishali,

While passing the appropriate values in SE03, make sure that you select both "Modifiable" and "Released" requests in order to get a complete history for your object.

Regards,

Danish

raymond_giuseppi
Active Contributor
0 Kudos
377

Not every object is fully version managed (alas) and generated object are not.

You could only look for the object directory entry in transport request E070./E071 and directory of target system TADIR-TRKORR, and use the release date of the request E070/E070A.

Regards,

Raymond

former_member213851
Active Contributor
0 Kudos
377

Hi Vaishali,

In order to determine how many versions of smartforms are generated , you need to take object name  and it's type from selection screen i.e( ztest_inv_BR10 and SSFO ).

Use below kind of select  querry to get all Transport Requests related to given Object :

     SELECT  A~TRKORR A~OBJECT A~LOCKFLAG
      FROM E071 AS A INNER JOIN E070 AS B ON A~TRKORR = B~TRKORR
      INTO CORRESPONDING FIELDS OF TABLE GT_OBJECT
      WHERE OBJ_NAME = P_OBJECT
      AND   OBJECT = P_OBJ.

Sort GT_OBJECT and remove duplicates and Tasks containing this Objects from  GT_OBJECT.

Make use of E070 table to determine whether given transport request is parent task /child task.

Now GT_OBJECT contains only Transports requests  containg the object given on selection screen and not child requests

So  use Count on  to get total no parent requests .Thus no of versions  for smartforms = total no. of parent tasks.

now to detrmine which version is in Quality/ Production,  make use of COFILEs.

FM to get COFILE  :

  TR_READ_GLOBAL_INFO_OF_REQUEST

   CALL FUNCTION 'TR_READ_GLOBAL_INFO_OF_REQUEST'
      EXPORTING
        IV_TRKORR = GV_OBJ_TR
      IMPORTING
        ES_COFILE = ES_COFILE.


*--------------------------------------------------------------------*
*Transport Request import determination   

*--------------------------------------------------------------------*
    LOOP AT ES_COFILE-SYSTEMS INTO SYSTEM.

      IF SYSTEM-SYSTEMID = 'PEQ' .        "Your Quality system name as per lanscape
        GV_QSTATUS = '@01@'.
      ELSEIF SYSTEM-SYSTEMID = 'PEP' .
        GV_PSTATUS = '@01@'.
      ELSE.
        GV_QSTATUS = '@02@'.
        GV_PSTATUS = '@02@'.
      ENDIF.
    ENDLOOP.

Now you just need to dispaly the status of The Transports which are fetched against the given Object in the ALV output.

Best Regards,

Sachin

0 Kudos
377

All,

Thank you for your replies. I am using the tables E070/E071/VRSD for all other objects in my program and I use SE03 when I change a smart form to check previous transports for versions. I was thinking of going with the similar approach to get all the requests from E070-1 (excluding child tasks) and use the release date to determine the latest changes in Dev before posting this question. You confirmed that approach. Unfortunately TADIR/VRSD in QA/Prod does not have any data on the transport request/version for a smartform.

Sachin,

I will definitely try the COFILE approach to determine the version in QA/PROD. For other objects FM "SVRS_GET_VERSION_DIRECTORY_46" could give me VRSD entries from QA/Prod.

Thank you everyone!

Regards,

Vaishali

venkateswaran_k
Active Contributor
0 Kudos
377

It is as follows:

Go to Tcode SE03-->In Object Selection give SSFO and Form Name and Execute, you will able to see history of form.

In the object selection screen,

Make checkbox - checked,  then  R3TR and SSFO and the Smartformname.

Then press execute

It will display all the requesids and the changes history

Regards,

Venkat