Class Reference
IRIS for UNIX 2024.1.2
InterSystems: The power behind what matters   
Documentation  Search
  [USER] >  [INFORMATION] >  [SCHEMA] >  [ROUTINES]
Private  Storage   

persistent class INFORMATION.SCHEMA.ROUTINES extends %Library.Persistent

SQL Table Name: ROUTINES

Returns one row for each stored procedure and function that can be accessed by the current user in the current namespace.

Inventory

Parameters Properties Methods Queries Indices ForeignKeys Triggers
1 57


Summary

Properties
ASLOCATOR CHARACTERMAXIMUMLENGTH CHARACTEROCTETLENGTH CHARACTERSETCATALOG
CHARACTERSETNAME CHARACTERSETSCHEMA COLLATIONCATALOG COLLATIONNAME
COLLATIONSCHEMA CREATED Classname DATATYPE
DATETIMEPRECISION DTDIDENTIFIER EXTERNALLANGUAGE EXTERNALNAME
ISDETERMINISTIC ISIMPLICITLYINVOCABLE ISNULLCALL ISUDTDEPENDENT
ISUSERDEFINEDCAST LASTALTERED MAXDYNAMICRESULTSETS MODULECATALOG
MODULENAME MODULESCHEMA MethodQueryName NEWSAVEPOINTLEVEL
NUMERICPRECISION NUMERICPRECISIONRADIX NUMERICSCALE PARAMETERSTYLE
RESULTCASTASLOCATOR RESULTCASTFROMDTDIDENTIFIER ROUTINEBODY ROUTINECATALOG
ROUTINEDEFINITION ROUTINENAME ROUTINESCHEMA ROUTINETYPE
SCHEMALEVELROUTINE SECURITYTYPE SPECIFICCATALOG SPECIFICNAME
SPECIFICSCHEMA SQLDATAACCESS SQLPATH TOSQLSPECIFICCATALOG
TOSQLSPECIFICNAME TOSQLSPECIFICSCHEMA USERDEFINEDTYPECATALOG USERDEFINEDTYPENAME
USERDEFINEDTYPESCHEMA

Methods
%AddToSaveSet %AddToSyncSet %BuildDeferredIndices %BuildIndicesAsync
%BuildIndicesAsyncResponse %CheckConstraints %CheckConstraintsForExtent %ClassIsLatestVersion
%ClassName %ComposeOid %ConstructClone %Delete
%DeleteExtent %DeleteId %DispatchClassMethod %DispatchGetModified
%DispatchGetProperty %DispatchMethod %DispatchSetModified %DispatchSetMultidimProperty
%DispatchSetProperty %Exists %ExistsId %Extends
%GUID %GUIDSet %GetLock %GetParameter
%GetSwizzleObject %Id %IsA %IsModified
%IsNull %KillExtent %LockExtent %LockId
%New %NormalizeObject %ObjectIsNull %ObjectModified
%Oid %OnBeforeAddToSync %OnDeleteFinally %OnDetermineClass
%OnOpenFinally %OnSaveFinally %Open %OpenId
%OriginalNamespace %PackageName %PurgeIndices %Reload
%RemoveFromSaveSet %ResolveConcurrencyConflict %RollBack %Save
%SaveDirect %SerializeObject %SetModified %SortBegin
%SortEnd %SyncObjectIn %SyncTransport %UnlockExtent
%UnlockId %ValidateIndices %ValidateObject %ValidateTable


Parameters

• parameter READONLY = 1;
READONLY = 1 means that objects can be created, opened but not saved or deleted. Tables are projected to SQL as READONLY.

Properties

• property ASLOCATOR as %String(MAXLEN=3,VALUELIST=",YES,NO") [ Calculated,SqlFieldName = AS_LOCATOR ];
Returns YES or NO based on if the return value of the function is a LOB oref value and not the actual data value of the LOB.
AS_LOCATOR have the following meanings:
  • YES - The return value of the routine being described is an stream oref.
  • NO - The return value of the routine being described is not an stream oref.
  • null - The routine is a class query procedure.
For InterSystems IRIS, AS_LOCATOR is always null unless the return value is a stream, then it is YES.
• property CHARACTERMAXIMUMLENGTH as %Integer [ Calculated,SqlFieldName = CHARACTER_MAXIMUM_LENGTH ];
Maximum length in characters, if the return type is a character type. If not a character type, returns null.
• property CHARACTEROCTETLENGTH as %Integer [ Calculated,SqlFieldName = CHARACTER_OCTET_LENGTH ];
Reserved for future use. For InterSystems IRIS, CHARACTER_OCTET_LENGTH is always NULL.
• property CHARACTERSETCATALOG as %String(MAXLEN=3) [ Calculated,SqlFieldName = CHARACTER_SET_CATALOG ];
Reserved for future use. For InterSystems IRIS, CHARACTER_SET_CATALOG is always NULL.
• property CHARACTERSETNAME as %String(MAXLEN=3) [ Calculated,SqlFieldName = CHARACTER_SET_NAME ];
Reserved for future use. For InterSystems IRIS, CHARACTER_SET_NAME is always NULL.
• property CHARACTERSETSCHEMA as %String(MAXLEN=3) [ Calculated,SqlFieldName = CHARACTER_SET_SCHEMA ];
Reserved for future use. For InterSystems IRIS, CHARACTER_SET_SCHEMA is always NULL.
• property COLLATIONCATALOG as %String(MAXLEN=3) [ Calculated,SqlFieldName = COLLATION_CATALOG ];
Reserved for future use. For InterSystems IRIS, COLLATION_CATALOG is always NULL.
• property COLLATIONNAME as %String(MAXLEN=3) [ Calculated,SqlFieldName = COLLATION_NAME ];
Reserved for future use. For InterSystems IRIS, COLLATION_NAME is always NULL.
• property COLLATIONSCHEMA as %String(MAXLEN=3) [ Calculated,SqlFieldName = COLLATION_SCHEMA ];
Reserved for future use. For InterSystems IRIS, COLLATION_SCHEMA is always NULL.
• property CREATED as %TimeStamp [ Calculated,SqlFieldName = CREATED ];
For InterSystems IRIS, CREATED is always NULL.
• property Classname as %String(MAXLEN=255) [ SqlFieldName = CLASSNAME ];
Name of the class that projected the Stored Procedure
• property DATATYPE as %String(MAXLEN=30) [ Calculated,SqlFieldName = DATA_TYPE ];
Data type of the return value of the function. Returns null if the procedure has no return value.
• property DATETIMEPRECISION as %Integer [ Calculated,SqlFieldName = DATETIME_PRECISION ];
Reserved for future use. For InterSystems IRIS, DATETIME_PRECISION is always NULL.
• property DTDIDENTIFIER as %String(MAXLEN=3) [ Calculated,SqlFieldName = DTD_IDENTIFIER ];
Reserved for future use. For InterSystems IRIS, DTD_IDENTIFIER is always NULL.
• property EXTERNALLANGUAGE as %String(MAXLEN=3) [ Calculated,SqlFieldName = EXTERNAL_LANGUAGE ];
Reserved for future use. For InterSystems IRIS, EXTERNAL_LANGUAGE is always NULL.
• property EXTERNALNAME as %String(MAXLEN=3) [ Calculated,SqlFieldName = EXTERNAL_NAME ];
Reserved for future use. For InterSystems IRIS, EXTERNAL_NAME is always NULL.
• property ISDETERMINISTIC as %String(MAXLEN=3) [ Calculated,SqlFieldName = IS_DETERMINISTIC ];
Reserved for future use. For InterSystems IRIS, IS_DETERMINISTIC is always NULL.
• property ISIMPLICITLYINVOCABLE as %String(MAXLEN=3) [ Calculated,SqlFieldName = IS_IMPLICITLY_INVOCABLE ];
The values of IS_IMPLICITLY_INVOCABLE have the following meanings:
  • YES - The user-defined cast function is implicitly invocable.
  • NO - The user-defined cast function is not implicitly invocable.
  • null - The routine is not a user-defined cast function.
Reserved for future use. For InterSystems IRIS, IS_IMPLICITLY_INVOCABLE is always null.
• property ISNULLCALL as %String(MAXLEN=3,VALUELIST=",YES,NO") [ Calculated,SqlFieldName = IS_NULL_CALL ];
The values of IS_NULL_CALL have the following meanings:
  • YES - The routine is a function and returns null if any of its parameters are null.
  • NO - The routine is a function and its return value is determined by invoking the routine.
  • null - The routine being described is a class query procedure.
For InterSystems IRIS, if the routine is a function IS_NULL_CALL is always NO.
• property ISUDTDEPENDENT as %String(MAXLEN=3,VALUELIST=",YES,NO") [ Calculated,SqlFieldName = IS_UDT_DEPENDENT ];
Reserved for future use. For InterSystems IRIS, IS_UDT_DEPENDENT is always NULL.
• property ISUSERDEFINEDCAST as %String(MAXLEN=3,VALUELIST=",YES,NO") [ Calculated,SqlFieldName = IS_USER_DEFINED_CAST ];
The values of IS_USER_DEFINED_CAST have the following meanings:
  • YES - The routine is a function that is a user-defined cast function.
  • NO - The routine is a function that is not a user-defined cast function.
  • null - The routine being described is a class query procedure.
For InterSystems IRIS, if the routine is a function IS_USER_DEFINED_CAST is always NO.
• property LASTALTERED as %TimeStamp [ Calculated,SqlFieldName = LAST_ALTERED ];
For InterSystems IRIS, LAST_ALTERED is always NULL.
• property MAXDYNAMICRESULTSETS as %SmallInt [ Calculated,SqlFieldName = MAX_DYNAMIC_RESULT_SETS ];
Reserved for future use. For InterSystems IRIS, MAX_DYNAMIC_RESULT_SETS is always NULL.
• property MODULECATALOG as %String(MAXLEN=3) [ Calculated,SqlFieldName = MODULE_CATALOG ];
Reserved for future use. For InterSystems IRIS, MODULE_CATALOG is always NULL.
• property MODULENAME as %String(MAXLEN=3) [ Calculated,SqlFieldName = MODULE_NAME ];
Reserved for future use. For InterSystems IRIS, MODULE_NAME is always NULL.
• property MODULESCHEMA as %String(MAXLEN=3) [ Calculated,SqlFieldName = MODULE_SCHEMA ];
Reserved for future use. For InterSystems IRIS, MODULE_SCHEMA is always NULL.
• property MethodQueryName as %String(MAXLEN=255) [ SqlFieldName = METHOD_OR_QUERY_NAME ];
Name of the class method or class query that projected this procedure
• property NEWSAVEPOINTLEVEL as %String(MAXLEN=3,VALUELIST=",YES,NO") [ Calculated,SqlFieldName = NEW_SAVEPOINT_LEVEL ];
Reserved for future use. For InterSystems IRIS, NEW_SAVEPOINT_LEVEL is always NULL.
• property NUMERICPRECISION as %SmallInt [ Calculated,SqlFieldName = NUMERIC_PRECISION ];
Numeric precision of the return value. For the nonnumeric types, returns NULL.
• property NUMERICPRECISIONRADIX as %Integer [ Calculated,SqlFieldName = NUMERIC_PRECISION_RADIX ];
Numeric precision radix of the return value. For nonnumeric types, returns NULL.
• property NUMERICSCALE as %Integer [ Calculated,SqlFieldName = NUMERIC_SCALE ];
Scale of the return value. For nonnumeric types, returns NULL.
• property PARAMETERSTYLE as %String(MAXLEN=3) [ Calculated,SqlFieldName = PARAMETER_STYLE ];
Reserved for future use. For InterSystems IRIS, PARAMETER_STYLE is always NULL.
• property RESULTCASTASLOCATOR as %String(MAXLEN=3,VALUELIST=",YES,NO") [ Calculated,SqlFieldName = RESULT_CAST_AS_LOCATOR ];
Reserved for future use. For InterSystems IRIS, RESULT_CAST_AS_LOCATOR is always NULL.
• property RESULTCASTFROMDTDIDENTIFIER as %String(MAXLEN=3) [ Calculated,SqlFieldName = RESULT_CAST_FROM_DTD_IDENTIFIER ];
Reserved for future use. For InterSystems IRIS, RESULT_CAST_FROM_DTD_IDENTIFIER is always NULL.
• property ROUTINEBODY as %String(MAXLEN=8,VALUELIST=",SQL,EXTERNAL") [ Calculated,SqlFieldName = ROUTINE_BODY ];
The values of ROUTINE_BODY have the following meanings:
  • SQL - Means this routine is a class query with language SQL.
  • EXTERNAL - Means this is not a class query with language SQL.
• property ROUTINECATALOG as %String(MAXLEN=3) [ Calculated,SqlFieldName = ROUTINE_CATALOG ];
Reserved for future use. Routine qualifier - always NULL in InterSystems IRIS.
• property ROUTINEDEFINITION as %String(MAXLEN=8192) [ Calculated,SqlFieldName = ROUTINE_DEFINITION ];
/// The routine's query expression. If longer than 8192 characters, or the routine is not an SQL class query, NULL is returned.
• property ROUTINENAME as %String(COLLATION="Upper",MAXLEN=128) [ SqlFieldName = ROUTINE_NAME,Required ];
Routine name, same as SPECIFIC_NAME.
• property ROUTINESCHEMA as %String(COLLATION="Upper",MAXLEN=128) [ SqlFieldName = ROUTINE_SCHEMA,Required ];
Name of schema that contains the routine, same as SPECIFIC_SCHEMA.
• property ROUTINETYPE as %String(MAXLEN=9,VALUELIST=",PROCEDURE,FUNCTION") [ SqlFieldName = ROUTINE_TYPE ];
The values of ROUTINE_TYPE have the following meanings:
  • PROCEDURE - The SQL-invoked routine is a query projected as a procedure.
  • FUNCTION - The SQL-invoked routine is a function (method) projected as a procedure.
• property SCHEMALEVELROUTINE as %String(MAXLEN=3,VALUELIST=",YES,NO") [ Calculated,SqlFieldName = SCHEMA_LEVEL_ROUTINE,Required ];
The values of SCHEMA_LEVEL_ROUTINE have the following meanings:
  • YES - If the routine is a schema-level routine.
  • NO - If the routine is not a schema-level routine.
For InterSystems IRIS, SCHEMA_LEVEL_ROUTINE is always YES.
• property SECURITYTYPE as %String(MAXLEN=22,VALUELIST=",DEFINER,INVOKER,IMPLEMENTATION DEFINED") [ Calculated,SqlFieldName = SECURITY_TYPE ];
The values of SECURITY_TYPE have the following meanings:
  • DEFINER - The routine has the security characteristic DEFINER.
  • INVOKER - The routine has the security characteristic INVOKER.
  • IMPLEMENTATION DEFINED - The external routine has the security characteristic IMPLEMENTATION DEFINED.
  • null - Unknown security type.
For InterSystems IRIS, SECURITY_TYPE is always null.
• property SPECIFICCATALOG as %String(MAXLEN=128) [ Calculated,SqlFieldName = SPECIFIC_CATALOG ];
Reserved for future use. Specific qualifier - always NULL in InterSystems IRIS.
• property SPECIFICNAME as %String(COLLATION="Upper",MAXLEN=128) [ SqlFieldName = SPECIFIC_NAME,Required ];
Specific name.
• property SPECIFICSCHEMA as %String(COLLATION="Upper",MAXLEN=128) [ SqlFieldName = SPECIFIC_SCHEMA,Required ];
Name of schema that contains the routine.
• property SQLDATAACCESS as %String(MAXLEN=17,VALUELIST=",NO SQL,CONTAINS SQL,READS SQL DATA,MODIFIES SQL DATA") [ Calculated,SqlFieldName = SQL_DATA_ACCESS ];
SQL_DATA_ACCESS Returns one of the following values:
  • NO SQL = Function does not contain SQL.
  • CONTAINS SQL = Function possibly contains SQL.
  • READS SQL DATA = Function possibly reads SQL data.
  • MODIFIES SQL DATA = Function possibly modifies SQL data.
Returns CONTAINS SQL for all functions, and READS SQL DATA for all class query procedure.
• property SQLPATH as %String(MAXLEN=3) [ Calculated,SqlFieldName = SQL_PATH ];
Reserved for future use. For InterSystems IRIS, SQL_PATH is always NULL.
• property TOSQLSPECIFICCATALOG as %String(MAXLEN=3) [ Calculated,SqlFieldName = TO_SQL_SPECIFIC_CATALOG ];
Reserved for future use. For InterSystems IRIS, TO_SQL_SPECIFIC_CATALOG is always NULL.
• property TOSQLSPECIFICNAME as %String(MAXLEN=3) [ Calculated,SqlFieldName = TO_SQL_SPECIFIC_NAME ];
Reserved for future use. For InterSystems IRIS, TO_SQL_SPECIFIC_NAME is always NULL.
• property TOSQLSPECIFICSCHEMA as %String(MAXLEN=3) [ Calculated,SqlFieldName = TO_SQL_SPECIFIC_SCHEMA ];
Reserved for future use. For InterSystems IRIS, TO_SQL_SPECIFIC_SCHEMA is always NULL.
• property USERDEFINEDTYPECATALOG as %String(MAXLEN=3) [ Calculated,SqlFieldName = USER_DEFINED_TYPE_CATALOG ];
Reserved for future use. For InterSystems IRIS, USER_DEFINED_TYPE_CATALOG is always NULL.
• property USERDEFINEDTYPENAME as %String(MAXLEN=3) [ Calculated,SqlFieldName = USER_DEFINED_TYPE_NAME ];
Reserved for future use. For InterSystems IRIS, USER_DEFINED_TYPE_NAME is always NULL.
• property USERDEFINEDTYPESCHEMA as %String(MAXLEN=3) [ Calculated,SqlFieldName = USER_DEFINED_TYPE_SCHEMA ];
Reserved for future use. For InterSystems IRIS, USER_DEFINED_TYPE_SCHEMA is always NULL.


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