Skip to main content

Config.DeviceSubTypes

persistent class Config.DeviceSubTypes extends %Library.Persistent, Config.CommonMultipleMethods, Config.CommonProperties, %SYSTEM.Help

SQL Table Name: Config.DeviceSubTypes

This class allows you to modify and view the [DeviceSubTypes] section of the CPF file through programatic APIs. While properties are usually modified through the System Management portal, there may be some occasion where modifying them through the API's is best for your system. In all the Config methods, if you do not specify the CPFFile parameter, the currently active CPF file is used. If you wish to modify a CPF file which is not the currently active one, then specify the CPFFile you wish to modify in the method call.
The Flags parameter does not normally need to be specified; the defaults are usually sufficient for most cases.
You can use either the provided API's (Create/Get/Modify/Delete) to modify the properties by passing in the correct parameters, or use Object syntax to open and directly manipulate the config objects (Open() and Exists()). Most objects created here need only to specify the Name of the object, and 1 or 2 properties since the the defaults are what are commonly used for most cases.

EXAMPLE:

; Use class methods to create an instance
%SYS>s Name="P-NEW"
%SYS>s Properties("Backspace")="$C(8)"
%SYS>s Properties("FormFeed")="#"
%SYS>s Properties("RightMargin")=132
%SYS>s Properties("ScreenLength")=66
%SYS>s Status=##Class(Config.DeviceSubTypes).Create(Name,.Properties)
%SYS>i 'Status w !,"Error="_$SYSTEM.Status.GetErrorText(Status)
; Use class methods to modify properties
%SYS>s Status=##Class(Config.DeviceSubTypes).Get(Name,.Properties)
%SYS>i 'Status w !,"Error="_$SYSTEM.Status.GetErrorText(Status)
%SYS>zw Properties("FormFeed")
Properties("FormFeed")="#"
%SYS>s Properties("FormFeed")="#,#"
%SYS>s Status=##Class(Config.DeviceSubTypes).Modify(Name,.Properties)
%SYS>i 'Status w !,"Error="_$SYSTEM.Status.GetErrorText(Status)
; Now use Objects to modify properties
%SYS>s Obj=##Class(Config.DeviceSubTypes).Open(Name)
; We could have used i ##Class(Config.DeviceSubTypes).Exists(Name,.Obj) instead of Open()
%SYS>w Obj.FormFeed
#,#
%SYS>s Obj.FormFeed="#"
%SYS>s Status=Obj.%Save()
%SYS>i 'Status w !,"Error="_$SYSTEM.Status.GetErrorText(Status)
; Now delete the object we just created
%SYS>s Status=##Class(Config.DeviceSubTypes).Delete(Name)
%SYS>i 'Status w !,"Error="_$SYSTEM.Status.GetErrorText(Status)

Property Inventory

Properties

property Backspace as %String (MAXLEN = 128, MINLEN = 0);
Enter the ASCII code that represents the backspace character on the selected
device in this form: $C(code1). Default depends on the device type.
Property methods: BackspaceDisplayToLogical(), BackspaceGet(), BackspaceGetStored(), BackspaceIsValid(), BackspaceLogicalToDisplay(), BackspaceLogicalToOdbc(), BackspaceNormalize(), BackspaceSet()
property CursorControl as %String (MAXLEN = 128, MINLEN = 0);
Enter the cursor control keys for the selected device.
Default depends on the device type.
Property methods: CursorControlDisplayToLogical(), CursorControlGet(), CursorControlGetStored(), CursorControlIsValid(), CursorControlLogicalToDisplay(), CursorControlLogicalToOdbc(), CursorControlNormalize(), CursorControlSet()
property EraseEOF as %String (MAXLEN = 128, MINLEN = 0);
Enter the ASCII code that represents erasing to the end of file on the
selected device in this form: $C(code1,code2...).
Default depends on the device type.
Property methods: EraseEOFDisplayToLogical(), EraseEOFGet(), EraseEOFGetStored(), EraseEOFIsValid(), EraseEOFLogicalToDisplay(), EraseEOFLogicalToOdbc(), EraseEOFNormalize(), EraseEOFSet()
property EraseEOL as %String (MAXLEN = 128, MINLEN = 0);
Enter the ASCII code that represents erasing to the end of line on this device
in the form $C(code1,code2).
Default depends on the device type.
Property methods: EraseEOLDisplayToLogical(), EraseEOLGet(), EraseEOLGetStored(), EraseEOLIsValid(), EraseEOLLogicalToDisplay(), EraseEOLLogicalToOdbc(), EraseEOLNormalize(), EraseEOLSet()
property FormFeed as %String (MAXLEN = 128, MINLEN = 0);
Enter the ASCII code that represents a form feed on the selected device in this form:
#,$C(code1,code2...).
Default depends on the device type.
Property methods: FormFeedDisplayToLogical(), FormFeedGet(), FormFeedGetStored(), FormFeedIsValid(), FormFeedLogicalToDisplay(), FormFeedLogicalToOdbc(), FormFeedNormalize(), FormFeedSet()
property RightMargin as %Integer (MAXVAL = 256, MINVAL = 0) [ InitialExpression = 80 ];
Enter the number that represents the location of the right margin.
Device output will wrap at that number of characters.
Default depends on the device type.
Property methods: RightMarginDisplayToLogical(), RightMarginGet(), RightMarginGetStored(), RightMarginIsValid(), RightMarginLogicalToDisplay(), RightMarginNormalize(), RightMarginSet(), RightMarginXSDToLogical()
property ScreenLength as %Integer [ InitialExpression = 0 , Required ];
Enter the number of lines that comprise one screen or page for the device.
Property methods: ScreenLengthDisplayToLogical(), ScreenLengthGet(), ScreenLengthGetStored(), ScreenLengthIsValid(), ScreenLengthLogicalToDisplay(), ScreenLengthNormalize(), ScreenLengthSet(), ScreenLengthXSDToLogical()
property ZU22Backspace as %String (MAXLEN = 128, MINLEN = 0);
Enter the ASCII code that represents a backspace on the selected device in the form $C(code).
Default depends on the device type.
Property methods: ZU22BackspaceDisplayToLogical(), ZU22BackspaceGet(), ZU22BackspaceGetStored(), ZU22BackspaceIsValid(), ZU22BackspaceLogicalToDisplay(), ZU22BackspaceLogicalToOdbc(), ZU22BackspaceNormalize(), ZU22BackspaceSet()
property ZU22FormFeed as %String (MAXLEN = 128, MINLEN = 0);
Enter the ASCII code that represents a form feed on the selected device in the form $C(code1,code2).
Default depends on the device type.
Property methods: ZU22FormFeedDisplayToLogical(), ZU22FormFeedGet(), ZU22FormFeedGetStored(), ZU22FormFeedIsValid(), ZU22FormFeedLogicalToDisplay(), ZU22FormFeedLogicalToOdbc(), ZU22FormFeedNormalize(), ZU22FormFeedSet()

Queries

query List(Names As %String, CPFFile As %String = "", Flags As %Integer = 0, Format As %Integer = 0)
Selects Name As %String, RightMargin As %Integer, FormFeed As %String, ScreenLength As %Integer, Backspace As %String, CursorControl As %String, EraseEOL As %String, EraseEOF As %String, ZU22FormFeed As %String, ZU22Backspace As %String
List DeviceSubTypes in a CPF file.

Parameters:
Names - Comma separated list of DeviceSubType names
"*" - All records match
"String,String1" - Any records matching one of these elements
"String*" - Any record starting with "String"
"String,String1*,String2" - Any record matching one of these elements, or starting with "String1"
CPFFile - Name of the CPF file to use. A null string means use the active CPF file.
Flags - Currently ignored.
Format
0 - Standard report list format
1 - ^CONFIG global format
2 - CPF file format format
Note: This query may change in future versions

Indexes

index (CPFNameSectionHeaderName on CPFName,SectionHeader,Name) [IdKey, Type = key, Unique];
Index methods: CPFNameSectionHeaderNameCheck(), CPFNameSectionHeaderNameDelete(), CPFNameSectionHeaderNameExists(), CPFNameSectionHeaderNameOpen(), CPFNameSectionHeaderNameSQLCheckUnique(), CPFNameSectionHeaderNameSQLExists(), CPFNameSectionHeaderNameSQLFindPKeyByConstraint(), CPFNameSectionHeaderNameSQLFindRowIDByConstraint()

Inherited Members

Inherited Properties

Inherited Methods

Storage

Storage Model: Storage (Config.DeviceSubTypes)

^|"^^"_$ZU(12)|SYS("CONFIG")(ID)
=
%%CLASSNAME
Backspace
CursorControl
EraseEOF
EraseEOL
FormFeed
RightMargin
ScreenLength
ZU22Backspace
ZU22FormFeed
Comments
FeedbackOpens in a new tab