%CSP.XMLSQL
class %CSP.XMLSQL extends %CSP.Page
The %CSP.XMLSQL accepts an SQL statement in the incoming URL and executes it as a Dynamic SQL query. The results are returned in an XML format that corresponds to the MS XML-SQL Server format. See:http://msdn.microsoft.com/msdnmag/issues/0300/sql/default.aspx
There are 3 formats that can be specified using the FOR XML command:
- RAW - Return <row/> elements with columns as attributes.
- AUTO - Return the data in an XML tree structure.
- EXPLICIT - It is a pretty complex version of AUTO.
The DTD can also be requested using the
FOR XML format, DTD
. For example:<!DOCTYPE root [ <!ELEMENT root (row)*> <!ELEMENT row (#PCDATA)> <!ATTLIST row CustomerID CDATA #IMPLIED OrderID CDATA #IMPLIED OrderDate CDATA #IMPLIED> ]>
Method Inventory
Parameters
parameter ENCODED = 2;
Override ENCODED from %CSP.Page
parameter PRIVATE = 1;
Override PRIVATE from %CSP.Page
Methods
classmethod OnPage() as %Status [ Language = objectscript ]
The OnPage() is called by the CSP dispatcher to generate the
page content. For XMLSQL, we loop across the ResultSet and output the contents
as XML.
classmethod OnPostHTTP() [ Language = objectscript ]
The OnPostHTTP() is called by the CSP dispatcher after the page
content has been sent. We use it here to clean up the ResultSet
classmethod OnPreHTTP() as %Boolean [ Language = objectscript ]
The OnPreHTTP() is called by the CSP dispatcher before the HTTP
headers have been sent. Here, we prepare the Dynamic SQL query and set the content
type to text/xml.
classmethod PreProcessSQL(sql As %String, ByRef args As %String, mode As %Integer, ByRef xmlmode As %String) as %String [ Language = objectscript ]
Process the XML SQL extras from the SQL statement. The mode is as follows:
- 0 - Default XML-SQL mode
- 1 - Oracle XML-SQL mode
Inherited Members
Inherited Methods
- %ClassIsLatestVersion()
- %ClassName()
- %DispatchClassMethod()
- %DispatchGetModified()
- %DispatchGetProperty()
- %DispatchMethod()
- %DispatchSetModified()
- %DispatchSetMultidimProperty()
- %DispatchSetProperty()
- %Extends()
- %GetParameter()
- %IsA()
- %New()
- %OriginalNamespace()
- %PackageName()
- %SetModified()
- ConvertParameter()
- Decrypt()
- Encrypt()
- EscapeHTML()
- EscapeURL()
- HyperEventCall()
- HyperEventHead()
- Include()
- InsertHiddenField()
- InsertHiddenFields()
- IsPrivate()
- Link()
- OnHTTPHeader()
- OnPageError()
- OnPostHyperEvent()
- OnPreHyperEvent()
- Page()
- QuoteJS()
- RewriteURL()
- ShowError()
- StartTimer()
- StopTimer()
- ThrowError()
- UnescapeHTML()
- UnescapeURL()