Ever needed a quick and easy way to determine where a specific function is being used? Or a even a specific object? And not wanting to go through the hassle of setting up the Navision Developer’s Toolkit (NDT) or IDYN’s Object Manager?
Well, consider to use the findfunc line command tool.
Multilanguage Tools – findfunc
Ages ago it seems, when NAV got multilanguage (ML) enabled and a whole bunch of (line command) tools had been created for that. Ages ago that I had been studying and using these. Time runs fast! Having to deal with some ML-enabling issues on a current project I was reminded of these simple and efficient tools, so I searched for them to find them still there in the NAV 2009 Upgrade Toolkit! While playing about with the findfunc tool I had to think of the various forum post where the question was raised how to determine where a specific field in NAV was referred, i.e. how to get “where used” information on the field.
findfunc – syntax
On the command line findfunc should be called with three parameters, i.e.
findfunc text source target
The next table explains the meaning of each parameter:
function or text string in the code that you want to search for; note: findfunc is case sensitive!
source file to be searched in; typically this will be a file containing all (relevant) NAV objects in text format
target file, i.e. the result of the search, containing a list of code strings where text appears, including the object where it occurs
Example – CALCDATE
To show the power of findfunc I took an example ‘where used’ situation, being:
- an object.txt file of approx. 280 MB big
searched for all occurrences of the NAV system function CALCDATE
- findfunc: 38 seconds
- NDT: 3m03s
So findfunc was roughly 5 times faster and not a lot needed to get the tool up and running.
Where to get the ML tools
For those that have access to Partner Source you will be able to down load the Upgrade Toolkit from there. For those who haven’t could take the Dynamics NAV W1 5.0 Upgrade Toolkit from mibuso. I did not check the binaries, but I assume these tools haven’t changed since they were first release by Navision a/s in 2001. So the version is probably not important.
The example test was run on a DELL Latitude E6500/Windows7/4GB RAM/2.80 GHz dual CPU.