Getting a useful list of tables

Can anyone recommend a query to get a useful list of tables for the end user? Our application allows users to browse the database and look at data in tables. Currently, we first have the user choose a schema, and then a table,view or synonym within the schema.
I just learned about the public owner though and it has 1000s of things in it's space, most of which aren't useful to the user.
Originally, i was using the OCI schema apis, but we switched to using a simple select from all_objects. To simplify things somewhat i automatically filter things with a '$' in them. In the public schema there are also lots of things with a '/' in them. filtering on that brings the total down to 2000+ objects, but that still seems like a lot.
I'd really like to separate 'system' objects from 'application' objects and only show the latter. Are there any idioms people use for this? Is there some information somewhere that I'm missing that might have this?
thanks,
:)ross

I eventually settled on the following
SELECT OBJECT_NAME
FROM ALL_OBJECTS
WHERE OWNER='%s' AND
OBJECT_TYPE IN ('TABLE','VIEW','SYNONYM') AND
OBJECT_NAME NOT LIKE '%$%' AND
OBJECT_NAME NOT LIKE '%/%'
ORDER BY OBJECT_NAME
where the particular schema i'm interested in is plugged in for %s.
but when the schema is 'PUBLIC' I add the following to the WHERE clause
NOT EXISTS (
SELECT *
FROM ALL_SYNONYMS
WHERE OWNER=ALL_OBJECTS.OWNER AND
SYNONYM_NAME=OBJECT_NAME AND
TABLE_OWNER IN ('CTXSYS','DMSYS','EXFSYS','MDSYS','OLAPSYS','ORDSYS','SYS','WKSYS','WMSYS','XDB','SYSTEM','SYSMAN')) AND
to filter out all the system synonyms
:)ross

Similar Messages

  • Function Module or Program to get where used list

    Hi,
    I´ve been searching for Function Module or program to get where used list for an object.
    I try using the FM 'RS_TOOL_ACCESS' with parameters operation = 'CROSSREF', objectname = 'ZMYPROG', object_type = 'PROG'
    and in effect i get the list of object where the program is used, but the list is showed in standard screen.
    is there a function or program to obtain the used list for an object but in an internal table?
    I'm using version 4.6B.
    I checked the function module RS_INFOSYSTEM_CREATE_REQUEST, but i didn't obtain any result, is there a funcion or combination or FM to get the used list?
    thanks,
    Alejandro
    Message was edited by: Alejandro López

    Hi Alejandro,
    Please check this sample program.
    DATA: OBJTYPE TYPE  EUOBJ-ID.
    DATA: OBJECTS TYPE RINFOOBJ.
    APPEND P_OBJECT_NAME TO OBJECTS.
    OBJTYPE = P_OBJECT_TYPE.
    CALL FUNCTION 'RS_INFOSYSTEM_CREATE_REQUEST'
      EXPORTING
        OBJTYPE            = OBJTYPE
        ACTION             = SWBM_C_OP_WHERE_USED_LIST
      IMPORTING
        INFOSYSTEM_REQUEST = P_WB_REQUEST
      TABLES
        OBJLIST            = OBJECTS
        DEVCLASS           = p_scope_devclass
        OBJKEY             = p_scope_objkey
        I_SCOPE_OBJECT_CLS = P_SCOPE_OBJECT_TYPES
        I_SCOPE_OBJECTS    = P_SCOPE_OBJECTS
        EDITOR_SOURCE      = P_EDITOR_SOURCE
      EXCEPTIONS
        NOT_EXECUTED       = 1
        BATCH              = 2
        OTHERS             = 3.
    Hope this will help.
    Regards,
    Ferry Lianto
    Please reward points if helpful.

  • Program to get where used list

    Hi,
    I was looking for a FM or program that would provide me the where used list for an object.
    Actually I need to create such a list for all the objects included in a transport request.
    The end goal is to find out which all programs/tcodes are linked to these objects.
    Please suggest...

    I don't think it is realistic. If a transport has a program then you want to find out where the program is used, or if the transport has table entries, what is 'whereused' in this context?
    But to find out the where used list for known objects, use the function module 'RS_TOOL_ACCESS' where operation = 'CROSSREF'. Go through the code once to understand the parameters. Unfortunately there is no documentation on this, but you can probably do a 'where-used' on this function module to get an idea.
    Please reward and close if this helps,
    Srinivas

  • How to find out where used list of Table or T-code

    Dear ABAP gurus
    I know many of you have done this several times.
    wish to find out which Transaction code INSERTs the data into the table IHPA.
    I did the where  used list - SE11 ( for specific key work called INSERT ).
    Used the Table called D010TAB which has some information.
    Vise versa if I know a T-CODE , how to know which tables it read  & Modify...
    any better procedure than spending hours in research...
    I found similar custom program to find USER EXITS ...here..., looking soething similar...
    [http://wiki.sdn.sap.com/wiki/display/Snippets/FindUser-exits%2CBADIs%2CBTEs%2CEtcbyTCodeorProgram]
    thank you for your help
    Edited by: Raj Anvesh on Aug 3, 2011 9:58 PM

    Hi Anvesh,
    Maybe the data INSERTION is happening by BAPI,
    So just try to look for the concerned BAPIS.
    ECP_SRV_PARTNERS_IHPA
    IREP1_IHPA_ADRNR_PRE_FETCH
    IREP1_IHPA_ADRNR_READ
    MAP2E_DIIHPA_TO_PARTNER
    MAP2E_IHPAVB_BAPI2080_NOTPARTE
    MAP2E_IHPAVB_TO_BAPI_IHPA
    MAP2E_IHPA_BAPI2080_NOTPARTNRI
    MAP2E_IHPA_M_BAPI2080_NOTPNRI
    MAP2I_BAPI2080_NOTPARTNRI_IHPA
    MAP2I_BAPI_IHPA_TO_IHPA
    PM_DB_FILL_DIIHPA
    PM_PARTNERCOPY_FILL_XIHPA
    PM_PARTNER_DELETE_XIHPA
    PM_PARTNER_GET_XIHPA
    PM_PARTNER_PUT_XIHPA
    PM_PARTNER_REFRESH_XIHPA
    these are the bapis which are dealing with the IHPA table,
    Segregate them as needed and then go to the std program
    Revert for further clarification.
    Thanks
    Sri

  • Where used list information tables in 4.6c

    Hi,
    Could anyone please tell me the database tables used for "where used list" in SAP version 4.6C.
    Thanks
    Yogesh Gupta

    Hi,
    In 4.6C the TCode se49 is similar to Where used
    Which refers to the Program : SAPMSEUZ
    I executed SE49, for the Transaction: se49, again, to find the Tables used :
    TDCT       Dialog Modules                            
    TFDIR      Function Module                           
    TLIBG      Person responsible for function class     
    TRDIR      Generated Table for View TRDIR            
    TSTC       SAP Transaction Codes     
    Cheers,
    Remi

  • Getting StorageManagementInformation using Lists and Libraries

    Good morning,
    I am using SPSite.StorageManagementInformation to get the size used for my sites. The idea I have is calling this method twice with an accurate number on the limits due to the bad performance this method have (the first call will be run
    with SPSite.StorageManagementInformationType.DocumentLibrary and the second one with SPSite.StorageManagementInformationType.DocumentLibrarySPSite.StorageManagementInformationType.List).
    Now my question is: what is a list and what is a library? I have run these two methods with a high value for testing and, for example, for Document Libraries I get the next template Ids: 101, 113,114,116,121,122,123 and 851.
    I would like to query every list in my SPSite and increase the counter depending on if it is a List or a Library (screenshots attached).
    Thanks in advance

    Hi,
    If you want to know how to check if ListTemplateType is list or library, the following code snippet for your reference:
    using (SPSite site = new SPSite("http://sp2013sps:8080"))
    SPWeb web = site.OpenWeb();
    int libsCount = 0;
    int listsCount = 0;
    foreach (SPList list in web.Lists)
    if (list.BaseType == SPBaseType.DocumentLibrary)
    libsCount++;
    else
    listsCount++;
    Console.WriteLine(libsCount+"|"+listsCount);
    Console.ReadKey();
    Best Regards,
    Dennis Guo
    TechNet Community Support
    Please remember to mark the replies as answers if they help, and unmark the answers if they provide no help. If you have feedback for TechNet Support, contact
    [email protected]

  • Parsing query and getting list of tables used

    Hi All,
       I require to parse sql query (simple & complex as well) and to get the list of tables used in the query.
       And need to validate that, the list of tables against a whitelist to maintained in the file.
      I tried to write my own parser, since there are lots possible ways to write complex queries, i am unable to cover all the scenarios.
      I require a help, Is there any other ways to get the list of tables used in a query?
    Thanks,
    Mahendran..

    user10279893 wrote:
    Hi All,
       I require to parse sql query (simple & complex as well) and to get the list of tables used in the query.
       And need to validate that, the list of tables against a whitelist to maintained in the file.
      I tried to write my own parser, since there are lots possible ways to write complex queries, i am unable to cover all the scenarios.
      I require a help, Is there any other ways to get the list of tables used in a query?
    Thanks,
    Mahendran..
    You'll never cover all scenarios by trying to parse a query.
    For example, what about a query that queries views and those views query pipelined functions, and those pipelined functions query other views or tables or pipelined functions etc.
    And what about a query that dynamically obtains the table names, such as...
    SQL> select
      2    table_name,
      3    to_number(
      4      extractvalue(
      5        xmltype(
      6 dbms_xmlgen.getxml('select count(*) c from '||table_name))
      7        ,'/ROWSET/ROW/C')) count
      8  from user_tables
      9 where iot_type != 'IOT_OVERFLOW'
    10 or    iot_type is null;
    TABLE_NAME                      COUNT
    DEPT                                4
    EMP                                14
    BONUS                               0
    SALGRADE                            5
    .. in this case the tables being accessed (to count their rows) are not even known within the code, they are dynamically generated queries at run-time, so the only way to know what tables are accessed is to actually run the query.
    Of course, a well designed system, with proper documentation and version control would allow you to take any database object and know where and what is using it, and whether it's even being used.

  • How to get list of tables used in packages

    Dear All
    Can you pls tell me how to get list of tables used in packages
    Regards

    select referenced_name
      from user_dependencies
    where name = 'your_package'
       and referenced_type = 'TABLE'Regards,
    Rob.

  • List of tables used in Custom Forms

    Hi All,
    I am working on forms . There are nearly 100 forms, I need to find all the tables used in these forms.
    Is there any way I can know the list of tables used in each form from backend.
    Or do I need to open each form and analyze the forms one by one?
    Thanks,
    Raj Kumar

    I am working on forms . There are nearly 100 forms, I need to find all the tables used in these forms.
    Is there any way I can know the list of tables used in each form from backend.
    Or do I need to open each form and analyze the forms one by one?You cannot get the list from the backend.
    You have 3 options here.
    Option 1) Open each form using Forms Builder and get the list of objects
    Option 2) Use Record History and LAST_QUERY
    Option 3) Enable trace
    How To Determine Table and Column Name from a Field in a Form in 11i [ID 259722.1]
    FAQ: Common Tracing Techniques within the Oracle Applications 11i/R12 [ID 296559.1]
    Thanks,
    Hussein

  • Getting list of tables the user has access to across different schemas.

    Hi,
    I have to get the list of tables that an User has access to. I tried the below code. It takes a very long time. Is there any way in which I can specify the user name and get all the tables that he has access to? I know that we can use dbMetadata.getTables api. But this returns the list of tables under the said schema. But I want the list of tables that the user has access including tables in other schema.
    In the below code, I am trying to get the tables for which USER_MICHAEL has access to.
    DatabaseMetaData dbMetadata = connection.getMetaData(); String userName = null; dbrs = dbMetadata.getTables(null,userName , "%", new String[] { "TABLE" }); dbrs=dbMetadata.getTablePrivileges("",userName,"%"); while (dbrs.next()) { String tableName = dbrs.getString("TABLE_NAME"); String schema = dbrs.getString("TABLE_SCHEM"); String privilege = dbrs.getString("PRIVILEGE"); String grantee = dbrs.getString("GRANTEE"); if(grantee!=null && grantee.equals("USER_MICHAEL")){       System.out.println("Schema---"+schema+" Table---"+tableName+"  Privilege----"+privilege+"  grantee---- "+grantee); } }

    That would be database dependent.
    Some engines have some system tables that together may be used to extract such information, others may not make it available at all outside closed APIs.

  • Dynamic entry list used in a table column

    On a form, we noticed a dynamic entry list will limit which values a user may enter by validating against the entry list values.  We need to have the same validation occur when a dynamic entry list is used in a table column. Has anyone had success in getting the dynamic entry list to validate the cell values in a table column?

    Hey Dan,
    You are right.... Its a bug... we are also using VC CE 7.1 SP 05....
    When I try in form (with combo box) its working fine...I mean its giving error saying "Character string "4" does not exist in the allowed set of values and its not forwarding any values...
    but when I use it in table, its not giving any error.
    I saw some demos where it was working fine... but those are older sp versions of CE 7.1...
    Try to contact SAP VC team on this....
    PradeeP
    Edited by: pradeep bondla on Oct 6, 2010 12:06 AM

  • Query to get the name of the tables used in a View?

    Hi,
    Could you please help me in getting the name of the tables used in a perticular view?
    Please help me out...
    thnx in advance.
    Thnx,
    Bits
    Edited by: Bits on Sep 14, 2009 2:15 PM

    There is no data dictionary table that stores this directly.
    - You could get the DDL used to create the view and parse that SQL. Depending on how complex the view might be, this could be relatively easy or highly complex.
    - You could get a recursive list of the objects that the view depends on (from ALL_/USER_/DBA_DEPENDENCIES) and trace those dependencies back to all the tables that the view depends on. If your view calls functions, however, this may or may not be what you're looking for. If you are selecting from just one table in the FROM clause but you are calling a function that references a dozen tables, do you want one row? Or thirteen? What about tables referenced in a correlated subquery in the WHERE clause?
    Justin

  • Bizzare situation withn the "Where used list" for a table

    Hello all,
    I use the "where used list" (all check boxes selected) function in SE11 to find out where and how the table FMGLFLEXT (same for table FMGLFLEXA) is being used and updated. All I get is a reference to a function module, namely   “G_POSTING_FMGLFLEXT”. When I do a "where used list" (once again, all check boxes selected) for the FM, I get the message: Function Module G_POSTING_FMGLFLEXT not found in selected search area Message no. ES120“ despite the fact that all check boxes are selected.
    Yet this table contains data which were put in there via transaction FB50 (G/L Acct Pstg: Single Screen Trans.). So somehow, somewhere this data was created and put into the table.
    I don’t get it! What am I missing?
    Thank you for your help

    Old thread, but anyway: There is one more thing to do to get the complete where-used list:
    (1) Select all checkboxes in the "Used in" block (as you did, probably by using the button "Select All (F7)")
    (2) and use the button "Search Range" (quickinfo "Limit Search Range (F5)") -- although the following pop-up is called "Restrict hit lit" you will find there a checkbox "Search also in generated objects". In my case that's how I found a generated function module G_POSTING_Z.... in SAP's namespace but with customer db table name Z....

  • Bizarre situation with the "Where used list" for a table updated by FB50

    Hello all,
    I use the "where used list" (all check boxes selected) function in SE11 to find out where and how the table FMGLFLEXT (General Ledger Public Sector: Total) is being used and updated. All I get is a reference to a function module, namely   “G_POSTING_FMGLFLEXT”. When I do a "where used list" (once again, all check boxes selected) for the FM, I get the message: Function Module G_POSTING_FMGLFLEXT not found in selected search area Message no. ES120“ despite the fact that all check boxes are selected.
    Yet this table contains data which were put in there via transaction FB50 (G/L Acct Pstg: Single Screen Trans.). So somehow, somewhere this data was created and put into the table.
    I don’t get it! What am I missing?
    Thank you for your help

    There could be several reasons for this, including:
    - The cross reference tables (used by the "where used" functionality) have not been updated in the system you are logged into - check with your Basis team on this as the programs that do this (a) run for hours and (b) take up a fair chunk of database space.
    - The data may be stored via dynamic SQL (e.g. "insert into (g_tab_name)") so the table reference doesn't show up
    - The function module may be called dynamically so the FM where used doesn't reflect this
    You could try, instead, using the ST05 SQL Trace to track what code is updating the table when you run FB50.
    Jonathan

  • How often does the Most Recently Used list get saved?

    Has anyone ever done the analysis to see what triggers the SAVE of the MRU list to table PS_PT_PORTAL_MRU?
    I'm about to do this tracing work and wanted to see if anyone else had before I start.
    Graham

    Graham,
    I haven't done a trace, but I would infer from the description in the "Using PeopleSoft Applications" Peoplebook--Using the Recently Used Menu--that the changes are saved when a users logs out. If they close the browser without logging out or the session times out, then the changes aren't saved. It also says that entries are added to the list when you leave a component, but they are probably cached somewhere--probably in memory but maybe in a cookie, or a temp table.
    I'll be interested to see what your trace uncovers!
    Regards,
    Bob
    EDIT - I did a quick test, and I don't see the behavior described in PeopleBooks. I saw changes in the MRU table without logging out, and they didn't get rolled back. Maybe there was a patch that changed the original behavior.
    Edited by: user10465781 on Jan 16, 2012 10:11 AM

Maybe you are looking for

  • Form Designed in LiveCycle will not work for End User

    Please Help! I am a newbie to Adobe LiveCycle but recognized the utility in the program, so decided to give it a while to try and streamline some of my employer's forms.  After spending too much time learning how to design a form (much to the dislike

  • New Audio Issues with Apple TV

    As of last week my Apple TV has not been able to play audio on a consistant basis. I have it connected to a Samsung TV which is connected to Sony Soundbar Station. The Apple TV audio plays for 2 seconds but then switches to the Cable Audio. I have ha

  • IWeb crashes every time with media browser

    I've been searching the forums looking for a solution for the iWeb media browser bug in iLife 06 but I haven't been able to find a solution. I do not have flip4mac installed and just in case I moved out all .avi's out of the movie folder into another

  • Factory Default from Call Manager

    I have a client which is private. They have many type phones that we need to change with new one. I want erase all information like call history, Itl files, tftp servers etc. My first question is : What can I do to delete all these kind of informatio

  • Cannot configure Destination in AdaptiveJobServer

    Hello I am trying to configure Destination in AdaptiveJobServer but it is empty when I try to add it. I am using BI Edge 4.0 SP04 See the image: Any ideas why it is empty ? Regards Hector