The Calculator’s Secret Utility: The tool you never knew about

4 minute read time.

Have you ever wondered what tables a function uses when you’re in it? Well if you ever did, I have a tool for you. Today we are going to look at the function inside a function inside another function (like a turducken) called the Variable Class Function. It is a very cool tool that you can use for multiple analyses or multiple views. As for today we are going to use it to look at what tables are accessed when you go into a function. Our example function will be Sales Order (GESSOH). Note that this only works with Classic (AKA convergent) functions that are data entry type functions. So, functions under the administration module (for example) will not have this ability as they are not classic functions.

This tool that I will be showing you, can be found in the exact same place on all versions of Sage X3 that are equal to Version7 or higher. You will need access to Sage X3 (of course) and access to the calculator.

As I mentioned earlier, we will be using Sales Order for the function demonstration. After logging in and loading the Sales Order you should be at a screen that looks like mine. I am using V12 so the layout may be different, but the key functions should still be there.

While you’re here, you should have a right list and a scroll bar. Go ahead and use the bar (green arrows) to scroll all the way to the bottom. You are looking for a function called “Calculator”. If you do not see it, you may not have access to it, or it is hidden under the “DIAGNOSIS” expandable menu.

When you click on calculator it should load a popup for the calculator (like my screenshot). If you do not see the popup window, check your browser as you may have popups blocked.

 

Also, as my screenshot shows, you will need to click the 3 dots next to the magnifying glass to see the “function-inside-a-function” function called Variable Class. Click on the Variable Class function to load the tool I was talking about.

The Tool should load to the following screen:

 

So, what this tool does is it tells you statistics on the current function you are in. So since I started with Sales Order (GESSOH) it is going to show me the stats for GESSOH.

The first section is the Class Selection. It allows you to view the values and type of classes specific to the function loaded (GESSOH).

This is followed by the Memory Section. Memory allows you to see current memory used as it pertains to the MAXMEM field. It also shows you defaulted classes so you can look them up independently.

Next after that is the Screens Section. The Screens allow you to view what screen codes are accessed by the function.

 

Followed by that is the Tables Section (which is the point of this whole Blog Post). The Tables show you what Tables are accessed by the function.  Note that there is a max number of tables that a function can open. I think its something like 200 or 250 or might be even 500, I don’t remember exactly. The point is there is a max. (note I found it. It’s 200). If you look closely at the table list, you can see some other tables that are not initially part of Sales Order (GESSOH) like BPCUSTOMER table which goes to the Customer function (GESBPC) or ITMMASTER which goes to the Products function (GESITM). So, you can see how each function is tied to each-other like a big ’ol family.

 

After that is the Variable Class section. This section allows you to see what classes are actually in use currently as opposed to the Class Section where you can lookup all the Classes used for the function.

Processing Section shows what processes are currently being accessed like MENU.adx for getting menus and stuff like that. It can be handy if your looking to see if any custom adx processes are currently running.

And lastly, the Sequential Files section. This section shows what specific files are opened when using the function like mappings and print directories.

 

There you have it. A brief look at a hidden tool that I never knew was there until like a few month ago. I guess way back on V6 the FAT client had something similar integrated into the work-station client install. But I have not looked back into V6 to see for sure if it’s the same. This tool however will be the same on V7 and up, when you get to V12 it will be all on one page, but the rest will have individual tabs for each section I have listed.