Code Road map [message #309218] |
Wed, 26 March 2008 17:47  |
mrk_anand
Messages: 7 Registered: December 2007
|
Junior Member |
|
|
Experts,
I am trying to find all the dependencies of a function. The function may call many packages,procedures,functions and may use synonyms,views,etc.. If i query the table USER_Dependencies it gives only the package but not the function inside that package that is being called.
(e.g) package A has the procedure B and function C. Function D is an independent function which uses table-T,View-V,Synonym-S and also it calls the function C inside package A.
If i query USER_DEPENDENCIES for the object 'D' it shows the dependency for the package A along with other Dependencies T,V, and S. I would like the output like 'Package~A.Function~C' I am able achieve the same using "Code Road Map" of TOAD. I would like to achieve the same using query.
Please suggest.
|
|
|
|
Re: Code Road map [message #309246 is a reply to message #309219] |
Wed, 26 March 2008 20:58   |
rleishman
Messages: 3728 Registered: October 2005 Location: Melbourne, Australia
|
Senior Member |
|
|
To expand on Ana's explanation:
TOAD have internally parsed the code to find where references lie. The Oracle Data Dictionary does not support this level of tracking.
Ross Leishman
|
|
|
Re: Code Road map [message #309496 is a reply to message #309218] |
Thu, 27 March 2008 13:16  |
 |
Kevin Meade
Messages: 2103 Registered: December 1999 Location: Connecticut USA
|
Senior Member |
|
|
yes, this has been a real sore spot for many of us over the years. To this day it is not clear why Oracle, having access to all the code, and all the structures, and all the execution stats, can't (or WON'T) report for us this kind of detailed information.
As was pointed out by others, you must go to some third party tools somewhere to figure it out, or alternatively write your own code parser to do it for you (a big job and one that locks you into having to keep updating your parser of over time as pl/sql and sql change).
Here is a sampling of some popular and useful tools you might want to check:
1) VISUSTIN
2) TOAD
3) SQLANALYZER (might go under some other name today)
4) PLSQL DEVELOPER
Others may have alternative favorites.
Your question emphasizes one of the reasons why instrumentation is such a big deal.
Good luck, Kevin
|
|
|