Global list of all custom/developed objects

Hi all!
We need to get a list of all custom objects of a SAP systems.
First time we think accessing TADIR to get all repository objects of the system and after this access, get all atributes for any of the retrieved objects.
Example:
  To a report, access TADIR and TRDIR dictionary tables. in TADIR use class of development custom or in TRDIR any of the user that don't belongs to SAP.
But this solution to the problem is very effort and we should access so too many tables for the objects to get their attributes.
Second time, we think filtering the objects using their namespace with FM TR_CHECK_NAME_CLASS, but this option jumps some objects, like VOFM generated objects or customer exits form VA01 transaction.
Do any of you know the way of extracting a list of all Custom/developed objects for a System?

Hi,
Just check if this suffices.
REPORT  zobjects no standard page heading
TABLES:TADIR,TSTC,V_USERNAME,VRSD.
TYPE-POOLS:slis,VRM.
TYPES: BEGIN OF ittemp,
       object    LIKE tadir-object,
       obj_name  LIKE tadir-obj_name,
       text      LIKE trdirt-text,
       author    LIKE tadir-author,
       devclass  like tadir-devclass,
       name_text LIKE v_username-name_text,
       tcode like tstc-tcode,
       korrnum like vrsd-korrnum,
       END OF ittemp.
DATA: itfinal TYPE STANDARD TABLE OF ittemp WITH HEADER LINE,
      wafinal   TYPE ittemp.
DATA : name  TYPE vrm_id,
      list  TYPE vrm_values,
      value LIKE LINE OF list.
DATA:itfieldcat TYPE slis_t_fieldcat_alv WITH HEADER LINE.
DATA:itrepid TYPE sy-repid.
itrepid = sy-repid.
DATA:itevent TYPE slis_t_event.
DATA:itlistheader TYPE slis_t_listheader.
DATA:walistheader LIKE LINE OF itlistheader.
DATA:itlayout TYPE slis_layout_alv.
DATA:top TYPE slis_formname.
DATA:itsort TYPE slis_t_sortinfo_alv WITH HEADER LINE.
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
PARAMETER: PACKAGE LIKE TADIR-DEVCLASS.
SELECTION-SCREEN END OF BLOCK B1.
START-OF-SELECTION.
PERFORM getdata.
PERFORM alv.
*&      Form  GETDATA
      text
FORM getdata.
read the repository object table and link with username if found
SELECT tadir~object
        tadir~obj_name
        trdirt~text
        tadir~author
        tadir~devclass
        v_username~name_text
        INTO TABLE itfinal
        FROM tadir
        LEFT JOIN v_username
        ON tadirauthor = v_usernamebname
        LEFT JOIN trdirt
        ON tadirobj_name = trdirtname
        WHERE tadir~devclass = PACKAGE
        "'$TMP'
        AND ( tadirobj_name LIKE 'Z%' OR tadirobj_name LIKE 'Y%' ).
CHECK sy-subrc EQ 0.
loop at itfinal.
*TCODE FROM TSTC
select single tcode from tstc into (itfinal-tcode) where pgmna =
itfinal-obj_name.
*LATEST TRANSPORT REQUEST NUMBER FROM VRSD
select single korrnum from vrsd into (itfinal-korrnum) where objname =
itfinal-obj_name.
modify itfinal.
endloop.
delete itfinal where korrnum is INITIAL.
SORT itfinal BY author object.
ENDFORM.                    "GETDATA
*&      Form  ALV
      text
FORM alv.
IF itfinal[] IS INITIAL.
    MESSAGE 'No Values exist for the Selection.' TYPE 'S'.
    STOP.
  ENDIF.
  DEFINE m_fieldcat.
    itfieldcat-fieldname = &1.
    itfieldcat-col_pos = &2.
    itfieldcat-seltext_l = &3.
    itfieldcat-do_sum = &4.
    itfieldcat-outputlen = &5.
    append itfieldcat to itfieldcat.
    clear itfieldcat.
  END-OF-DEFINITION.
  m_fieldcat 'OBJECT' ''   'OBJECT' ''       04  .
  m_fieldcat 'OBJ_NAME' '' 'PROGRAM NAME' '' 40 .
  m_fieldcat 'TCODE' ''    'TCODE' ''        20 .
  m_fieldcat 'TEXT' ''     'DESCRIPTION' ''  70 .
  m_fieldcat 'AUTHOR' ''   'AUTHOR' ''       80 .
  m_fieldcat 'DEVCLASS' '' 'PACKAGE' ''      30 .
  m_fieldcat 'KORRNUM' ''  'LATEST TRANSPORT REQUEST' '' 20 .
itlayout-zebra = 'X'.
itlayout-colwidth_optimize = 'X'.
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
      EXPORTING
        i_callback_program      = sy-repid
        is_layout               = itlayout
       i_callback_user_command =  'LIST1'
        i_callback_top_of_page  = 'TOP'
        it_fieldcat             = itfieldcat[]
        i_save                  = 'A'
     is_variant              = ITVARIANT
        it_events               = itevent[]
     is_print                = ITPRINTPARAMS
        it_sort                 = itsort[]
      TABLES
        t_outtab                = itfinal
        EXCEPTIONS
        program_error           = 1
        OTHERS                  = 2.
  IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.
ENDFORM.                    "ALV
*&      Form  TOP
    Top of page for ALV Report
FORM top.
DATA:STRING1(70),
     STRING2(70),
     title1(100),
     title2(100),
     count(10).
describe table itfinal lines count.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
     EXPORTING
        i_list_type           = 0
     IMPORTING
        et_events             = itevent
EXCEPTIONS
  LIST_TYPE_WRONG       = 1
  OTHERS                = 2
  IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.
string1 = 'List of Objects in Development Class'.
concatenate string1 ':' itfinal-devclass into title1.
walistheader-typ = 'H'.
walistheader-info = title1.
APPEND walistheader TO itlistheader.
string2 = 'Total No.of Objects'.
concatenate string2 ':' count into title2.
walistheader-typ = 'H'.
walistheader-info = title2.
APPEND walistheader TO itlistheader.
  CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
    EXPORTING
      it_list_commentary      = itlistheader
    I_LOGO                   = ''.
    I_END_OF_LIST_GRID       =
   ENDIF.
  CLEAR itlistheader.
ENDIF.
ENDFORM.                    "TOP
*&      Form  list1
      ALV Interactive-
     -->R_UCOMM    text
     -->RS_SELFIELDtext
FORM list1 USING r_ucomm LIKE sy-ucomm rs_selfield TYPE slis_selfield.
  CASE r_ucomm.
    WHEN '&IC1'.
      IF rs_selfield-fieldname = 'OBJ_NAME'.
        READ TABLE itfinal INDEX rs_selfield-tabindex.
        SET PARAMETER ID 'RID' FIELD itfinal-OBJ_NAME.
        CALL TRANSACTION 'SE38' AND SKIP FIRST SCREEN.
      ELSEIF rs_selfield-fieldname = 'TCODE'.
        READ TABLE itfinal INDEX rs_selfield-tabindex.
        SET PARAMETER ID 'TCD' FIELD itfinal-TCODE.
        CALL TRANSACTION 'SESSION_MANAGER' AND SKIP FIRST SCREEN.
     ENDIF.
  ENDCASE.
ENDFORM.
K.Kiran.

Similar Messages

  • Failed to fetch a list of all custom record types

    Hi,
    I tried to fetch a list of all custom record types. I tried with below piece of code, but failed with below error message. Can anybody help me to resolve this issue:
    CustomRecordTypeReadAll_Input cusRecTypeAllIn = new CustomRecordTypeReadAll_Input();
    CustomRecordTypeServiceProxy proxy = new CustomRecordTypeServiceProxy(endpoint);
                   CustomRecordTypeReadAll_Output out = proxy.customRecordTypeReadAll(cusRecTypeAllIn);
    Detail error message:
    AxisFault
    faultCode: {http://xml.apache.org/axis/}HTTP
    faultSubcode:
    faultString: (400)Bad Request
    faultActor:
    faultNode:
    faultDetail:
         {}:return code: 400
    &lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&lt;soap:Envelope xmlns:soap=&quot;http://schemas.xmlsoap.org/soap/envelope/&quot;&gt;&lt;soap:Body&gt;&lt;soap:Fault&gt;&lt;faultcode&gt;soap:Client&lt;/faultcode&gt;&lt;faultstring&gt;Client&lt;/faultstring&gt;&lt;detail&gt;&lt;ErrorCode&gt;SBL-ODU-01007&lt;/ErrorCode&gt;&lt;ErrorMessage&gt;The HTTP request did not contain a valid SOAPAction header. The value of the header was &amp;quot;document/urn:crmondemand/ws/odesabs/CustomRecordType/:CustomRecordTypeReadAll&amp;quot;&lt;/ErrorMessage&gt;&lt;/detail&gt;&lt;/soap:Fault&gt;&lt;/soap:Body&gt;&lt;/soap:Envelope&gt;
         {http://xml.apache.org/axis/}HttpErrorCode:400
    (400)Bad Request
    //////////////////////////////////////////////////////////////////////////////////

    Thank you very much for valuable reply.
    I am now using WS-Security to include credentials in request. I have also ensured that "Customization - Customize Application" setting is enable for my OCOD account. But now, i am getting following exception:
    java.lang.IllegalArgumentException: faultCode argument for createFault was passed NULL at com.sun.xml.internal.messaging.saaj.soap.ver1_1.SOAPFactory1_1Impl.createFault(SOAPFactory1_1Impl.java:55)
         at com.sun.xml.internal.ws.fault.SOAP11Fault.getProtocolException(SOAP11Fault.java:169)
         at com.sun.xml.internal.ws.fault.SOAPFaultBuilder.createException(SOAPFaultBuilder.java:111)
         at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:108)
         at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:78)
         at com.sun.xml.internal.ws.client.sei.SEIStub.invoke(SEIStub.java:107)
         at $Proxy28.customRecordTypeRead(Unknown Source)
         at Main.main(Main.java:75)
    I have also tried customRecordTypeReadAll API butgetting the same exception.
    Can you please suggest me what can be the reason behind above exception?
    For reference: The complete SOAP request message:
    <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
    <S:Header>
    <wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" S:mustUnderstand="1">
    <wsse:UsernameToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="XWSSGID-1298986875153522346527">
    <wsse:Username>myusername</wsse:Username>
    <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">mypassword</wsse:Password>
    <wsse:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">pRkWQ9ZcOrJngcGijmok0skB</wsse:Nonce><wsu:Created>2011-03-01T13:43:19.669Z</wsu:Created></wsse:UsernameToken></wsse:Security></S:Header><S:Body><ns2:CustomRecordTypeRead_Input xmlns="urn:/crmondemand/xml/customrecordtype/data" xmlns:ns2="urn:crmondemand/ws/odesabs/customrecordtype/" xmlns:ns3="urn:/crmondemand/xml/customrecordtype/query">
    <ns3:CustomRecordType>
    <ns3:Name>Custom Object 01</ns3:Name>
    <ns3:SingularName>TestCustom</ns3:SingularName>
    <ns3:PluralName>TestCustom</ns3:PluralName>
    <ns3:ShortName>TestCustom</ns3:ShortName>
    </ns3:CustomRecordType>
    </ns2:CustomRecordTypeRead_Input>
    </S:Body>
    </S:Envelope>
    Thanks
    Ravish
    Edited by: 833189 on Mar 1, 2011 6:02 AM

  • Get all custom development

    Hi,
    Can anyone please tell me if there is any tool through which we can get the dump of all custom development done in SAP system, like code of programs, table design, badi's , user exits. i can get the name of custom development through table TADIR but i need to get the code of it too.
    Regards,
    Kamesh Bathla

    if you want to use SAP provided method then run report REPTRAN. use Z* in name.
    or in your report fetch all Z* objects from TRDIR.
    then loop at the internal table and use read read report as:
    loop at gt_trdir into gs_trdir.
       read report gs_trdir-name into itab.
       "then u can use GUI_DOWNLOAD for this itab to store it to local machine.
    endloop.

  • Finding a list of all customized InfoPath forms in SP2010

    Hello All,
    Is there any possible way we can get a list of all the Infopath forms which were customized from the entire site collection?
    I have a restriction to use only JQuery  or client side object scripting at the most from a programming perspective. I cant use PowerShell or
    server side scripting.
    To give you a little background, we are in the process of migrating our SP2010 site collections to Azure 2013. The server side team wants a list of all customized InfoPath forms (or list names) so that they
    can check if there were any data connections made outside the current site collection.
    Unfortunately, we dint keep a track of all the lists which were being customized through InfoPath forms.
    Any help would be greatly appreciated.
    Regards,
    Sandeep
    sandeep

    Hi Sandeep,
    It is very easy to create highly customized, sophisticated forms without writing any code using InfoPath 2010. You may follow the steps given into this informative resource to Customize a list form using InfoPath 2010 : https://support.office.com/en-nz/article/Edit-list-forms-using-InfoPath-2010-in-SharePoint-Designer-f86cf514-9a11-4613-a479-12a1a0132d22?ui=en-US&rs=en-NZ&ad=NZ#__toc245027338
    Moreover, you may also give shot to this automated solution(http://www.sharepointauditing.com/) that could be a good approach to deal in such situation. It will help you to get rid from your issue. 
    Thanks,
    Walter

  • Creation of New Custom Development Object in Solar02

    Hi,
    We are trying to create an object type of Form for a new custom development object in solar02 under tab Development,and for this I get an error that the object doesn’t exist in development environment. 
    Based on my analysis, it looks like Solution Manager only allows to link pre-existing development objects but not creating new objects.  Is that right?  If  not please advice how can we add new custom objects through solution manager.
    Thanks & Regards,
    Sandeep Alapati

    hi,
    solar01/02 is the tools for documenation, it is not for creating objects. 
    basically it should allow you to enter any developement objects names, irerespective of whether they are created in the back end system or not.
    please provide the screenshots.
    Thanks
    Jansi

  • How to get List of  all activated Info objects in sap BI production system

    Hi Experts,
             For my requirement  I need list of all activated info objects in sap bi production system.
    Can any body suggest any thing.

    Hi,
    Check in the following table, all the below tables are for InfoObejct related only
    RSDIOBJ -
    Directory of all InfoObjects
    RSDIOBJT------ Texts of InfoObjects
    RSDIOBJ------- Directory of all InfoObjects
    RSDIOBJT----- Texts of InfoObjects
    RSDATRNAV------ Navigation Attributes
    RSDATRNAVT----- Navigation Attributes
    RSDBCHATR------ Master Data Attributes
    RSDCHABAS------- Basic Characteristics (for Characteristics,Time Characteristics, and Units)
    RSDCHA----
    Characteristics Catalog
    RSDDPA -
    Data Package Characteristic
    RSDIOBJCMP----
    Dependencies of InfoObjects
    RSKYF----
    Key Figures
    RSDTIM----
    Time Characteristics
    RSDUNI -
    Units
    Thanks
    Reddy

  • Is there a listing of all Auth.Objects for SAP and the discription for them

    I would like to know if there is a listing of all the Auth.Objects  for SAP out there somewhere??
    Thank you,
    Robert

    > Auth.Objects  for SAP out there somewhere??
    You want all the customer objects as well in all SAP systems?
    (Or just those in your TOBJ?)
    PS: Please try the F1 key on fields to find their tables (or structures) and give the search a try as well...
    Cheers,
    Julius

  • List of reports using custom OM object

    Hi Experts,
    I have a requirement to retrieve all the reports and interfaces which are using a custom OM object. Since I cannot do a where used list for the custom object in HRP 1000, which approach I should use ?
    Thanks in advance.
    Regards,
    Megha

    Megha,
    You can use SAP program RS_ABAP_SOURCE_SCAN to search for your custom object used in SAP programs. In this report you can specify the search string, program name (can be Z*) and other selection criteria.
    This program will give the list of all the SAP objects where your string is being used. This program may take some time for processing depending on your selection criteria.

  • Translation of custom development

    Hi all,
    We are about to embark on a journey of translation... English to French.  We have all the information and understanding of what SE63 can provide for us.  What we are unclear on is strategies for the areas where SE63 does not cater for.  For example, how do we handle cases where there are hard coded literals?  Any tools, strategies to make this less painful?  Important to note we have over 3 million lines of custom code to get through, so a manual solution is not a good option. 
    Looking for general comments on others experience in this area of Custom Development where the Standard Translation Environment doesn't meet all the needs.  Even if you have comments of areas that were a pain, but don't necessarily have all the answers.  Would appreciate comments on things we may not have thought of yet.
    Regards,
    Chris

    Hi Chris
    What I have seen at one of our customers was to get all customer program objects from TADIR, scan then and produce a report of what text literals were used where.  Still be a big job to replace these with text elements though.
    One of my colleagues suggested writing the ABAP to BABELFISH the literals and create the text-elements as the report runs, but I am of the opinion that this could be a mistake as BABELFISH can come up with some unusual translations.
    Good luck
    Gareth

  • SQL Query to return all the dependent objects

    Hi,
    I have a question.
    Suppose I am creating a table with a join on 10 other tables, views etc..
    And there are nested sub-queries in the CREATE statement.
    How can I get the list of all the dependent objects for that table without counting them manually.
    I know, we can right click the table/view name and check the dependent objects in Toad or SQL Developer.
    But, I want to know the SQL query for getting that information.
    Thanks
    Rajiv

    well there is no way oracle would know what query was used when the table was created.
    But here is one intuitive trick:
    Step 1: Create a procedure that will have a cursor declared on the query you want to know what tables/views are used.
    Step 2: Check USER_DEPENDENCIES to see what objects this procedure depends on
    Let say you want to create TEST_A table using the following statement:
    create table test_a
    as
    select *
    from scott.emp,
         scott.dept;
      1  create or replace procedure test_temp
      2  as
      3  cursor test_cur is
      4             select *
      5             from scott.emp,
      6                  scott.dept;
      7  begin
      8     null;
      9* end;
    SQL> /
    Procedure created.
    SQL> show errors
    No errors.
    SQL> desc user_dependencies
    Name                                      Null?    Type
    NAME                                      NOT NULL VARCHAR2(30)
    TYPE                                               VARCHAR2(17)
    REFERENCED_OWNER                                   VARCHAR2(30)
    REFERENCED_NAME                                    VARCHAR2(64)
    REFERENCED_TYPE                                    VARCHAR2(17)
    REFERENCED_LINK_NAME                               VARCHAR2(128)
    SCHEMAID                                           NUMBER
    DEPENDENCY_TYPE                                    VARCHAR2(4)
    SQL> select referenced_owner, referenced_name, referenced_type
      2  from user_dependencies
      3  where name='TEST_TEMP' and referenced_owner<>'SYS';
    REFERENCED_OWNER
    REFERENCED_NAME
    REFERENCED_TYPE
    SCOTT
    DEPT
    TABLE
    SCOTT
    EMP
    TABLE
    SQL>
    SQL> drop procedure test_temp;
    Procedure dropped.
    SQL>Message was edited by:
    tekicora
    Message was edited by:
    tekicora

  • Change namespace for development objects

    hi at all,
    i have to transport a lot of customer development objects (reports, tables, programs, WebDynpro-components...) from one system to another development system. in the source system all customer-objects are named like Y* or Z* (e.g. Z_CM_COURSDETAILS).
    After that in the target system i have to change this names into our own company namespace (like /ABCD/CM_COURSDETAILS).
    How can i do this? The company namespace is activated an part of the view V_TRNSPACE.
    So, do i have to change every object by myself? Or is there a report or another automaticly help?
    Thanks for your information and help,
    regards
    Hendrik

    You can probably write a small BDC in the target system which accepts one type of objects, rename the object and activate it.

  • Need to get the list of all procedures called in an object

    Hi,
    I am trying to find the list of all proceudres called in an object. I can get the list of packages and individual procedures/functions using dba_dependencies, all_dependencies or user_dependencies. However this would not give me the list of procedures of a package that are used in my object.
    How to find the procedures of a package (and not just the package name) being called in another object?
    Thanks in advance
    Upendra

    You can take the package name from user_depencies and query the USER_SOURCE table for the object name where the package name exists.
    Eg code, here PKemp is the package name.
    SELECT SUBSTR(TEXT,INSTR(TEXT,'PKEMP'))
    FROM USER_SOURCE
    WHERE NAME = 'PROCEMP'
    AND INSTR(TEXT,'PKEMP') >=1
    SUBSTR(TEXT,INSTR(TEXT,'PKEMP'))
    PKEMP.SALUP;

  • How do i get a list of all objects in a combo box

    I want to get the list of all Objects in a JComboBox. I appreciate your help! Thanks!

    I already know the solution with getItemCount and
    then the for loop with getItemAt. I'm curios if there
    exist somethig like Object[] getAllItems()If it's not in the API, then it's not available. You can create your own ComboBoxModel that will return an Object[] of elements and call setModel on your combobox.

  • Report to generate all custom objects

    Dear experts,
    Is there any report or tool to generate all custom objects in system. I have to retrieve all custom reports, function modules, fuction groups, tcodes, data elements, domain, tables, views, search helps, partner profiles, rfc connections, idoc types, segments types.
    Taj.

    Dear Gautam your reply is helpfull, but as i have mentioned there are many local objects, and also rfc connection names, partner profiles, idoc types, segments types.. will not get stored in request, so cannot query them. Is there any other ways.
    I know a tool called ACE Tool, but i cannot apply here.
    Edited by: Mohd Tajuddin on Apr 28, 2009 1:58 PM

  • List of all objects in the data dictionary

    How to capture the list of all objects in the data dictionary named like PSDFDI and verify they are granted to the FDIREADR role

    See the database security guide http://docs.oracle.com/cd/B28359_01/network.111/b28531/authorization.htm#BABFHBFH
    Finding Information About User Privileges and Roles
    This section discusses the system views that have the grant information.
    The tricky part of this is that because roles can be granted to other roles the data is hierarchical.
    So start with the grants made to the FDIREADR role. So referring to the doc above;
    select * from role_role_privs where role = 'FDIREADR'will list the roles granted to your role.
    You will want to look at ROLE_ROLE_PRIVS, ROLE_TAB_PRIVS and ROLE_SYS_PRIVS.
    I suggest you walk thru the views manually to see how the information is related. Then write a test script that queries the views for you.

Maybe you are looking for