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

class %Library.DynamicObjectQuery extends %DynamicSQLQuery

The %DynamicObjectQuery class is used for defining class queries based on runtime Object/Bitmap statements.

Inventory

Parameters Properties Methods Queries Indices ForeignKeys Triggers
4


Summary

Methods
Close Execute Fetch FetchRows Func
GetInfo GetODBCInfo Prepare SendODBC


Methods

• classmethod Execute(ByRef qHandle As %Binary) as %Status
Execute is passed parameters for Query. Returns handle for subsequent operations.
• classmethod Fetch(ByRef qHandle As %Binary, ByRef Row As %List, ByRef AtEnd As %Integer = 0) as %Status
Fetch the next row of data from the query.

qHandle is query-defined data and is typically updated by Fetch.

The Fetch method should set Row to be a $List of values corresponding to the columns of the query. If we are past the end of the data and no row is returned, Row should be set to null string (""). If the non-empty row being returned is the last one, AtEnd could be optionally set to 1, indicating that an additional call to Fetch may be avoided.

Row may also be subscripted. If any of the columns in the row are stream orefs then the oref type information is lost in the Row $list encoded value. To retain the oref type, place the oref into Row(columnNumber). %Library.ResultSet recognizes this form and will extract the column value as the subscripted value.

• classmethod FetchRows(ByRef qHandle As %Binary, FetchCount As %Integer = 0, ByRef RowSet As %List, ByRef ReturnCount As %Integer, ByRef AtEnd As %Integer) as %Status
FetchRows returns the next FetchCount rows in the query and updates handle for subsequent operations. FetchCount is the number of rows to fetch. If FetchCount is zero then up to 24k of row data is returned. ReturnCount contains the number of rows returned and AtEnd is true if there are no more rows to be fetched. This method does not preserve swizzled streams.
• classmethod Prepare(ByRef qHandle As %Binary, query As %String, containid As %Integer = 0, selectmode As %String = "LOGICAL") as %Status
Prepare the query for execution. For static queries, this method probably just returns $$$OK. For dynamic queries this method will set up the information returned by GetInfo. It is used by the various ResultSet objects.


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