This site is currently read-only as we are migrating to Oracle Forums for an improved community experience. You will not be able to initiate activity until January 30th, when you will be able to use this site as normal.

    Forum Stats

  • 3,889,920 Users
  • 2,269,775 Discussions


Discoverer 11g: Disable SQL Inspector or Hide SQL

User_TIXMM Member Posts: 1 Red Ribbon
edited Nov 2, 2017 6:20AM in Discoverer

Is it possible to remove the "SQL Inspector" of "View SQL" menu options from Discoverer 11g Plus or Desktop tools?

Or is there a value that may be assigned to 'SQLType" to display blank or NULL values in the SQL Inspector tool?

The purpose is to allow users to create/modify reports solely from business area values, and protect proprietary source SQL.


  • John_K
    John_K Consultant Manchester, UKMember Posts: 2,498 Gold Trophy
    edited Nov 2, 2017 6:20AM

    I kind of dislike these kind of questions - because no matter how hard you try, you're never going to truly make the code inaccessible if you're deploying it on the customers database. However the main reason I dislike it is that my view is "why???" Does it really matter if a custom see's your SQL? Why is it such a big deal? Is it that you are worried they will empower themselves to make a simple change in the future rather than coming to you? If I was procuring the services of a contractor then they wouldn't be getting the job if this was the case. Plus, the SQL that Disco generates isn't really yours anyway - it's been generated by the system.

    However - if you absolutely feel the need to do this, then I would suggest putting your code in views. That way the code generated in Discoverer will just be:

    select col1, col2... from view_name

    Rather than showing the definition of that view.

    If you really wanted to make it more difficult then you could go down the route of putting your view code in piplined functions in packages, and then wrapping those to hide the code from dba_source. However wrapped code can still be unwrapped.

    Ultimately - ask yourself - does it really matter? I can't think of any reason why it does.

This discussion has been closed.