persistent class %SQL.Manager.QButtons.Base
extends %Persistent, %XML.Adaptor
parameter DOMAIN = "%Utility";
parameter ROWLEVELSECURITY = 1;
ROWLEVELSECURITY = 1 | <property> means that row level security is active and the list
of users/roles for a given instance/row is contained in a generated property. If
the value of this parameter is a valid property name then that property will be
used as the reader list and only generated if not already defined.
parameter XMLNAME = "QButton";
This parameter provides the default XMLNAME for the class. If it is
empty then the class name will be used to construct a default XML name.
The default XMLNAME is used as the top level tag
when exporting objects and the export context
did not provide an XML container name.
property AllowDelimitedIdentifiers
as %Boolean;
property BackgroundJobNumber
as %Integer;
property ClassDefXml
as %Stream.GlobalCharacter(CLASSNAME=2);
Stream containing XML export of all class definitions referenced by the query statement
property ClassList
as list of %String(MAXLEN=500);
List of all classes referenced by the query statement
property DefaultSchema
as %String;
property IncludeResults
as %Boolean;
This property has no effect, but remains available for compatibility.
Use %SQL.Statement to generate query results
property QueryCompileDecomposedStatus
as %String;
property QueryCompileStatus
as %Status [ InitialExpression = 0,Required ];
Property to tell if QueryPlan was built and is valid, otherwise contains the query's compilation error
property QueryIntCode
as %Stream.GlobalCharacter(CLASSNAME=2);
Stream containing compiled int code as exported XML
property QueryPlan
as %Stream.GlobalCharacter(CLASSNAME=2);
Stream containing the query's plan as built by the optimizer
property QueryPlanArray
as list of %String(MAXLEN=32000);
Array of %plan for query plan
property QueryResultData
as %Stream.GlobalCharacter(CLASSNAME=2);
Stream containing the results of the query as %XML.Dataset output
property QueryStatement
as %String(MAXLEN=32000) [ Required ];
Stores the actual query statement, if you really need more than 32k, enable long strings and change the MAXLEN
property TimeInserted
as %String;
property UserInserted
as %String;
property VersionString
as %String(MAXLEN=500) [ Required ];
simply contains $zv
property WRCNumber
as %Integer [ Required ];
WRC Number provided by the user
classmethod %SecurityPolicy(UserInserted As %String)
as %String
[ SQLProc = ]
method BuildClassList()
as %Status
This method uses the mtc array created by the query compilation process to find all the classes referenced by the query statement
classmethod ClearData(wrcnum As %String = "")
as %Status
Delete any previous queries that have been added to the report
classmethod ClearRow(filter As %String)
as %Status
classmethod ConsumeReport(filename As %String, qspec As %String = "ck", loadcode As %Boolean = 1, NameSpace As %String)
as %Status
consume report. This is intended to be used by Intersystems Support to consume the report generated by the customer
It is best to run this in an empty namespace as it will import and compile class definitions and routines
classmethod FindQueryById(id As %String)
as %String
classmethod InsertQuery(query As %String = "", wrcnum As %String = "NoWRCProvided", includeresults As %Boolean = 0, debug As %Boolean = 0)
as %Status
Adds a query to the report, writes out report if a file name is provided
This is the main method customer will use to generate reports to be sent to InterSystems Support
classmethod ListCharStrip(ByRef stream As %Stream.TmpCharacter)
method LoadClassDefs(qspec As %String = "ck", ByRef loadedlist)
as %Status
Import and compile the class definitions in the report
method LoadIntCode(qspec As %String = "ck", ByRef loadedlist)
as %Status
Import and compile the query routine int code in the report
classmethod WRCRowExists(wrc As %String)
as %Boolean
classmethod WriteAllToFile(wrcnum As %String, ByRef filename As %String)
as %Status
Writes XML report of all queries added so far
query SavedQueries()
SQL Query
:
SELECT ID, IncludeResults, TimeInserted, WRCNumber, QueryStatement, QueryCompileDecomposedStatus, AllowDelimitedIdentifiers, DefaultSchema
FROM %SQL_Manager_QButtons.Base
ORDER BY WRCNumber