Class Reference
IRIS for UNIX 2019.2
InterSystems: The power behind what matters   
Documentation  Search
  [%SYS] >  [%CSP] >  [XMLSQL]
Private  Storage   

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:


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>
]>

Inventory

Parameters Properties Methods Queries Indices ForeignKeys Triggers
2 9


Summary

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 OnPage OnPageError OnPostHTTP
OnPostHyperEvent OnPreHTTP OnPreHyperEvent Page
PreProcessSQL QuoteJS ResolveElementName RewriteURL
ShowError StartTimer StopTimer ThrowError
UnescapeHTML UnescapeURL


Parameters

• parameter ENCODED = 2;
Override ENCODED from %CSP.Page
• parameter PRIVATE = 1;
Override PRIVATE from %CSP.Page

Methods

• classmethod OnPage() as %Status
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()
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
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
Process the XML SQL extras from the SQL statement. The mode is as follows:

  • 0 - Default XML-SQL mode
  • 1 - Oracle XML-SQL mode

• classmethod ResolveElementName(expr As %String, element, AssumeName) as %String


Copyright (c) 2019 by InterSystems Corporation. Cambridge, Massachusetts, U.S.A. All rights reserved. Confidential property of InterSystems Corporation.