DocBook|Search
Class Reference
%ZEN.StudioDocument.AbstractDocument
   
Server:basexml
Instance:SOAXML
User:UnknownUser
 
-
  [BASEXML] >  [%ZEN] >  [StudioDocument] >  [AbstractDocument]
Private  Storage  

abstract stream class %ZEN.StudioDocument.AbstractDocument extends %Studio.AbstractDocument

Abstract Document used to serve ZEN-editor documents into Studio
In order to create a new Studio Abstract Document, you need to create a subclass of this class and provide the following:

Inventory

Parameters Properties Methods Queries Indices ForeignKeys Triggers
5 11 1


Summary

Properties
%Location AtEnd Attributes Code CompileTime
Generated Id LastModified LineTerminator Locked
Name Size TimeStamp

Methods
%%OIDGet %AddToSaveSet %CheckUnique %ClassIsLatestVersion
%ClassName %ConstructClone %Delete %DeleteExtent
%DeleteId %DispatchClassMethod %DispatchGetModified %DispatchGetProperty
%DispatchMethod %DispatchSetModified %DispatchSetMultidimProperty %DispatchSetProperty
%Exists %ExistsId %Extends %GetParameter
%GetSwizzleObject %Id %IsA %IsModified
%KillExtent %LocationSet %LockStream %New
%NormalizeObject %ObjectModified %Oid %Open
%OpenId %OriginalNamespace %PackageName %ReleaseLock
%Reload %RemoveFromSaveSet %RollBack %Save
%SerializeObject %SetModified %UnlockStream %ValidateObject
AtEndGet AtEndSet Clear Compile
CompileDocument CompileTime CompileTimeGet CopyFrom
CopyFromAndSave Delete DeleteAttribute DeleteStream
Exists ExportToXML FindAt Flush
GetAttribute GetClassName GetOther GetPrevious
GetStreamId ImportFromXML InputFromDevice IsCharacter
IsDefinedAttribute IsEnabled IsGenerated IsNull
ItemList LastModifiedGet LineTerminatorSet ListClose
ListExecute ListFetch Load LocalizeDescription
Lock MoveTo MoveToEnd NextAttribute
OpenStream OutputToDevice OutputToDeviceAt Read
ReadLine ReadLineIntoStream ReadSQL Rewind
Save SaveAs SaveStream Search
SerializeToSyncSet SetAttribute SizeGet StreamOIDIsNull
SyncStreamIn TimeStamp TimeStampGet TranslateExportName
Unlock Write WriteLine

Subclasses
%ZEN.StudioDocument.ZENAppEditorDocument %ZEN.StudioDocument.ZENPageEditorDocument

Parameters

• parameter DESCRIPTION;
Description Studio will display for this document.
If DOMAIN is defined this will be localized.
• parameter DOCUMENTCLASS;
If set, name of superclass used for documents of this type.
For example, "Ens.DataTransformDTL"
• parameter EDITORURL;
URL of the editor Studio will display within its HTML pane.
• parameter EXTENSION;
File extension used for this document (e.g., ".dtl")
• parameter LISTABSTRACT = 0;
If true, the built-in document list logic will include abstract classes otherwise they are ignored.

Methods

• method Compile(flags As %String) as %Status
Compile this document
• classmethod Delete(name As %String) as %Status
Delete the class that corresponds to document name. Subclass should override this behavior for non-class based editors.
• classmethod Exists(pName As %String) as %Boolean
Return 1 if the given document exists and 0 if it does not.
Subclass can override this behavior.
• classmethod GetClassName(pName As %String) as %String
Return the corresponding class name for this document
• classmethod GetOther(Name As %String) as %String
Return other document types that this is related to. Passed a name and you return a comma separated list of the other documents it is related to or "" if it is not related to anything
Subclass should override this behavior for non-class based editors.
• classmethod ListClose(ByRef qHandle As %Binary) as %Status
• classmethod ListExecute(ByRef qHandle As %Binary, Directory As %String, Flat As %Boolean, System As %Boolean) as %Status
• classmethod ListFetch(ByRef qHandle As %Binary, ByRef Row As %List, ByRef AtEnd As %Integer = 0) as %Status
• method Load() as %Status
Return URL for Studio to use to load editor.
• classmethod LocalizeDescription(ext As %String, ByRef Description As %String(MAXLEN=500)) as %Status
• classmethod TimeStamp(name As %String) as %TimeStamp
Return the timestamp of routine 'name' in %TimeStamp format. This is used to determine if the routine has been updated on the server and so needs reloading from Studio. So the format should be $zdatetime($horolog,3), or "" if the routine does not exist.
Subclass should override this behavior for non-class based editors.

Queries

• query List(Directory As %String, Flat As %Boolean, System As %Boolean)
Selects name As %String, modified As %TimeStamp, size As %Integer, directory As %String
Subclass should override this query for non-class based editors.