Stack Trace Display

The execution stack is maintained at all times. The stack is empty if the execution terminated as expected, and holds the list of callers if the execution terminates abnormally. A diagnostic report can be exported to Notepad, that includes the stack trace, by executing this JavaScript:

ActiveDocument.Sections["QIQ Diagnostics"].Shapes["cbtTrace2Txt"].OnClick()

The JavaScript can be executed by entering the syntax into the Interactive Reporting Studio Console window, or by entering it as a permanent Custom menu command.

To make the command permanent in the Custom menu, select Tools, then Customize and add it to the Custom menu provided by Interactive Reporting Studio.

Note:

It is recommended that the Console window is open while the dashboard is running, to report errors that occur.

Extract 1

This extract displays a stack trace report with no errors.

======== Dashboard Studio - start of trace log ========
        Sunday, August 07, 2002 23:48:39


======== Top of execution stack =======================================


======== Bottom of execution stack ====================================
        Full Classes function audit trail requested – see the end for trace level details


======= Start of function audit trail =============================
====== End of function audit trail ================================


        Trace level details
 


level = [5] for Class 1100 Custom
level = [5] for Class Qiq_ChartView
level = [5] for Class Qiq_RelatedDocuments
level = [5] for Class Qiq_SwitchChartPivot
level = [5] for Class Qiq_cal
level = [5] for Class Qiq_chartspotlight
level = [5] for Class Qiq_iServerExport
level = [5] for Class Qiq_limits
level = [5] for Class Qiq_picker
level = [5] for Class hysl_expList
level = [5] for Class hysl_hideFacts
level = [5] for Class qiqsort
level = [5] for Class qiqsl
level = [5] for Class Globals_EIS
level = [5] for Class Others
======== Dashboard Studio - end of trace log ========

Extract 2

This extract displays a stack trace report with an error.

======== Dashboard Studio - start of trace log ========
        Sunday, August 07, 2002 23:48:39


======== Start stack trace =======================================


[03]In Qiq_documentLimits ()
[02]In Qiq_applyCbxLimit()
[01]In Qiq_quickOnControlClick(Team KPIs by year, Team^qiqcbx2)
[00]In Qiq_OnControlClick(Team KPIs by year, Team^qiqcbx2)


======== End stack trace ========================================


        Full Classes function audit trail requested


======= Start of function audit trail =============================
====== End of function audit trail ================================


        Trace level details


level = [5] for Class Qiq_ChartSpotlight
level = [5] for Class Qiq_metaData
level = [5] for Class Qiq_queryLimits
level = [5] for Class Qiq_sortPivot
level = [5] for Class Globals_EIS
level = [5] for Class Wizard
level = [5] for Class Others
======== Dashboard Studio - end of trace log ========

In Extract 2, entries are present between the start and end of the stack trace log.

The chain of events starts with the calling of the Qiq_OnControlClick function > Qiq_quickOnControlClick function > Qiq_applyCbxLimit > Qiq_documentLimits. As this function is at the top of stack trace, it is a good indication that the problem occurred in that function.

Note:

The use of “>” in the example, represents the flow of events and the calling of the next function.