On company level, you can use the debug mode
for any account or reconciliation template. This is greatly beneficial in order to have more detailled info on what a template is doing, without having to dive into the code without seeing the output (on firm level, you’ll never see that).
How to activate?
When you are on company level within the page that show the output of the template (account or reconciliation, so when you are viewing the details of those), simply add ?debug=1
at the end of the URL, and press ENTER.
Like this eg:
After pressing ENTER, a new section will be loaded right beneath the details of the template, looking like this:
There’s some new info we added in here, in particular the flame graphs!
Let’s see what we got:
A: information on the template, and where it is linked at on firm level. You this link guides you to firm level where the template is maintenanced.
The mother level is only applicable for templates that come from the Silverfin Marketplace, mind you. So if you built custom templates on firm level, you’ll only see the Firm level link.
B: this is the amount that has an impact on the reconciliation of a template.
C: these are all the result tags that are made in the template.
This is actually great, as you don’t have to dive into the code looking for variables which you need to refer to in other templates
D: this show you if a certain input isn’t filled with information while it is needed (see the required case here)
E: this overviews which inputs all can be filled with details through the Import reconciliation data function:
Here’s an example:
It shows you the name of the inputs, with the placeholder that is used in the Import reconciliation data screen.
F: the text properties is technical information on what inputs holds which information (basically, it holds the information on what makes the details of a template)
G: this will give you an overview of all used translation tags
H: if you use certain roll forward logic, it’ll be displayed here in a handy overview. Great to check when copying details isn’t working as the way you expect it to be
I: the dependencies will show you what impacts the details of the template. That can be account ranges from account collections, certain results that are used from other templates, the ledgers of an account (the booking lines, or the total of it), …
J: flame graphs
This was added currently, and is a great way on investigating if eg. your template would be slow to load.
You can hover over a block (which presents a certain coding function, eg. the start of a fori-loop), and show you on how many time it takes to complete the code in mili-seconds.
You can click on the block you need to investigate (each block shows the line number of where the code starts), and all the blocks beneath it are parts of your selected block (so all sub-blocks will have a total of mili-seconds that equal the amount of time of your selected block).
To go back, just click on any block above your selected block to go to another block (or just click on template
to go to the complete overview).
This is a great way on not only to see how many time it takes for your template to load, but also to optimise where needed, and make your template even render faster!
TIP: to save you time typing out ?debug=1
in the URL, you can also create a bookmark in your browser of choice (Chrome eg), with the following Java-script:
javascript:void((function(){var locHasAnchor = location.href.split('#').length > 1 ? true : false; var loc = locHasAnchor ? location.href.split('#')[0] : location.href; var anchor = locHasAnchor ? '#' + location.href.split('#')[1] : '';if (loc.indexOf('debug') >= 0) return; loc.indexOf("?") < 0 ? (location.href = loc+"?debug=1"+anchor) : (location.href = loc+"&debug=1"+anchor);})());
This creates a bookmark you just click on whenever you want to debug a Silverfin template; it’ll automatically add the needed settings into your URL