Class Reference
InterSystems: The power behind what matters   
Documentation  Search

abstract persistent class %SYS.Namespace extends %Persistent


Parameters Properties Methods Queries Indices ForeignKeys Triggers
10 1


%AddToSaveSet %AddToSyncSet %BMEBuilt %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
%InsertBatch %IsA %IsModified %IsNull
%KillExtent %KillExtentData %LoadFromMemory %LockExtent
%LockId %New %NormalizeObject %ObjectIsNull
%ObjectModified %Oid %OnBeforeAddToSync %OnDetermineClass
%Open %OpenId %OriginalNamespace %PackageName
%PhysicalAddress %PurgeIndices %Reload %RemoveFromSaveSet
%ResolveConcurrencyConflict %RollBack %Save %SaveDirect
%SaveIndices %SerializeObject %SetModified %SortBegin
%SortEnd %SyncObjectIn %SyncTransport %UnlockExtent
%UnlockId %ValidateIndices %ValidateObject Exists
GetGlobalDest GetNSInfo GetPackageDest GetRoutineDest


• classmethod Exists(NamespaceName As %String) as %Boolean
• classmethod GetGlobalDest(Namespace As %String = $zu(5), Global As %String = "^", Subscript As %String = "") as %String
Returns the system^directory where ^[Namespace]Global(Subscript) is mapped to. If Subscript is missing, it returns the location for ^[Namespace]Global. If Global is missing, it returns the default global location for Namespace.
This API support multi-level subscripts mapping, for example, pass "abc",1,2 in Subscript will check the destination of Global("abc",1,2).
If the system is the same as the local system, then system is set to "".
• classmethod GetNSInfo(Namespace, Info, DontConnect=0)
Return information about a namespaces default global database.
Namespace - Namespace to obtain information about. Can be either a real namespace or an implied namespace.
DontConnect - If the namespace's default database is a remote database mounted across ECP, then if set to 1, and the remote database is not mounted, we will not try to mount it (default = 0).

Return Values:
Returns an array of information about the default database.
Info("System") - name of system default global directory resides on.
Info("Directory") - Name of default global directory.
Info("Resource") - Name of resource attached to the directory.
Info("ReadOnly") - 0/1 is the database mounted read only.
Info("Status") - 1 = Success, %Status if any kind of error.

If an implied namespace is passed in, ^SERVER^DIR, and the SERVER is the local system, then the database is treated as a local database, and Info("System") will be returned as "".
• classmethod GetPackageDest(Namespace As %String = "", Package As %String = "") as %String
Returns the system^directory where Package is mapped to in this Namespace. If Package is missing, it returns the default package location for Namespace. If the system is the same as the local system, then system is set to "".
• classmethod GetRoutineDest(Namespace As %String = $zu(5), Routine As %String = "", Type As %String = "INT") as %String
Returns the system^directory where Routine is mapped to in this Namespace. If Routine is missing, it returns the default routine location for Namespace. The allowed types are: INC, INT, MAC and OBJ. If the system is the same as the local system, then system is set to "".
• classmethod ListAll(Output array, ConvertImplicit As %Boolean = 1) as %Status
The ListAll method quickly returns a list of all the namespaces in the current process. The parameter array is a local array name passed by reference. On return from ListAll, the subscripts of the array parameter will be the namespace names of the current process. Each subscripted entry in array will contain the empty string. When ConvertImplicit is true, it will convert the '@' in implicit namespace to '^'. The default value of ConvertImplicit is true when it is not specified.

Each explicit namespace is returned using the local namespace name as the subscript string. Each implicit namespace is returned using a subscript string that contains a caret ^, followed by the system name, followed by another caret ^, followed by the name of directory containing the database file. If the implicit namespace is local then the system name is the empty string and the subscript string starts with two adjacent carets ^^.


• query List(Remote As %Boolean, DontConnect As %Boolean)
Selects Nsp As %String, Status As %String, Remote As %Boolean
Returns a list of namespaces defined on the system.
Remote - 0/1 whether to return any remotely mapped namespaces or not.
DontConnect - 0/1 whether to connect to remote system or not if a connection has not been made yet.
Return values:
Status - (0/1) Whether the namespace is available or not.
If the Status returned is 1, the default global database for the namespace is either mounted, or not mounted yet. If 0, then the database has been dismounted.
Remote - (0/1) Whether the namespace is mapped to a remote ECP system.

Copyright © 1997-2018, InterSystems Corporation