%Library.EnumString
Class %Library.EnumString Extends %DataType [ System = 2 ]
The %EnumString data type class represents a string. This is a specialized type of %String that allows you to define an enumerated set of possible values (using the DISPLAYLIST and VALUELIST parameters). Unlike the regular %String class, the display values for this property are used when columns of this type are queried via ODBC.
The logical value of the %EnumString data type is a string.
Parameters
COLLATION
Parameter COLLATION [ Constraint = ",ALPHAUP,EXACT,MINUS,MVR,PLUS,SPACE,SQLSTRING,SQLUPPER,STRING,TRUNCATE,UPPER", Flags = ENUMEDIT ];
The default collation value used for this data type. Note that if you specify a truncation length and also a VALUELIST then your truncation length must be longer or equal to your longest VALUELIST value
MAXLEN
Parameter MAXLEN As INTEGER = 50;
The maximum number of characters the string can contain.
MINLEN
Parameter MINLEN As INTEGER;
The minimum number of characters the string can contain.
PATTERN;
Parameter PATTERN;
A pattern which the string should match.
The value of PATTERN should be a valid ObjectScript pattern match expression.
TRUNCATE
Parameter TRUNCATE As BOOLEAN = 0;
Determines whether to truncate the string to MAXLEN characters.
VALUELIST;
Parameter VALUELIST;
Used for enumerated (multiple-choice) attributes. VALUELIST is either a null string ("") or a delimiter separated list (where the delimiter is the first character) of logical values. If a non-null value is present, then the attribute is restricted to values in the list, and the validation code simply checks to see if the value is in the list.
DISPLAYLIST;
Parameter DISPLAYLIST;
Used for enumerated (multiple-choice) attributes. Used in conjunction with the VALUELIST parameter for enumerated (multiple-choice) attributes. DISPLAYLIST, if not null, represents the display values for the attribute corresponding with the logical values listed in VALUELIST.
The display values are returned by the LogicalToDisplay method.
CONTENT
Parameter CONTENT [ Constraint = "MIXED,STRING,ESCAPE,ESCAPE-C14N", Flags = ENUM ] = "STRING";
XML element content "MIXED" for mixed="true" and "STRING" or "ESCAPE" for mixed="false". If CONTENT="STRING" (default) XML special characters are put in a CDATA section during XML export. If CONTENT="ESCAPE" XML special characters are escaped during XML export. If CONTENT="ESCAPE-C14N" XML special characters are escaped during XML export using the translate table, XMLC, specified for XML Canonicalizaton. The main difference is that CR is escaped as
ESCAPE
Parameter ESCAPE [ Constraint = "HTML,XML", Flags = ENUM ] = "XML";
Controls the translate table used to escape content when CONTENT="MIXED" is specified.
XSDTYPE
Parameter XSDTYPE = "string";
Declares the XSD type used when projecting XML Schemas.
JSONTYPE
Parameter JSONTYPE = "string";
JSONTYPE is JSON type used for this datatype.
Methods
DisplayToLogical
ClassMethod DisplayToLogical(%val As %String) As %String [ CodeMode = generator, ServerOnly = 0 ]
Converts the input value %val, which is a string, into the logical string format. Returns the logical value of the input string %val.
OdbcToLogical
ClassMethod OdbcToLogical(%val As %String) As %String [ CodeMode = generator, ServerOnly = 1 ]
Converts the input value %val, which is a string, into the logical string format. Converts DISPLAYLIST entries to their cooresponding VALUELIST value. If there is no entry specified for the given value in the DISPLAYLIST, the input value is returned. If this input value does not match a value in the VALUELIST a validation error will probably be returned upon filing or saving.
Returns the logical value of the input string %val.
Normalize
ClassMethod Normalize(%val As %RawString) As %String [ CodeMode = generator, ServerOnly = 1 ]
Truncates value %val to MAXLEN, characters.
IsValid
ClassMethod IsValid(%val As %RawString) As %Status [ CodeMode = generator, ServerOnly = 0 ]
Tests if the logical value %val, which is a string, is valid. The validation is based on the class parameter settings used for the class attribute this data type is associated with. In this case, MINLEN, MAXLEN, VALUELIST, and PATTERN.
LogicalToDisplay
ClassMethod LogicalToDisplay(%val As %String) As %String [ CodeMode = generator, ServerOnly = 0 ]
Converts the value of %val, which is in logical format, into a display string. Removes all the null characters from the string.
Returns the string value of %val.
LogicalToOdbc
ClassMethod LogicalToOdbc(%val As %String) As %String [ CodeMode = generator, ServerOnly = 1 ]
Converts the value of %val, which is in logical format, into a display string. Converts VALUELIST entries to their cooresponding DISPLAYLIST value.
Returns the string value of %val.