Skip to main content

%Library.Status

Class %Library.Status [ ClassType = datatype, ClientDataType = STATUS, System = 2 ]

The %Status data type class is used to represent an error status code.

Many of the methods provided by the system classes return error status information using the %Status data type. The include file %occStatus.INC contains several macro definitions that are useful in testing the value of an error code in %Status format. These macros include:

  • $$$ISOK(status:%Status) returns true (1) if the status code status does not represent an error condition.
  • $$$ISERR(status:%Status) returns true (1) if the status code status represents an error condition.

You can get a more detailed description of an error by using $system.Status.DecomposeStatus(status:%Status,&err,flag), which takes a status code and returns an array of error strings; see %SYSTEM.Status.

For example:

Set status=obj.%Save() If $$$ISERR(status) Do $system.Status.DecomposeStatus(status,.err,"-d") For i=1:1:err Write err(i),!

Parameters

XSDTYPE

Parameter XSDTYPE = "base64Binary";

Declares the XSD type used when projecting XML Schemas.

JSONTYPE

Parameter JSONTYPE = "string";

JSONTYPE is JSON type used for this datatype.

MAXLEN

Parameter MAXLEN = 65536;

Maximum expected length of a %Status value

Methods

XSDToLogical

ClassMethod XSDToLogical(%val As %String) As %Binary [ CodeMode = generator ]

Converts the SOAP encoded base64 input value to a logical value.

LogicalToXSD

ClassMethod LogicalToXSD(%val As %Binary) As %String [ CodeMode = generator ]

Converts the %Binary value to the SOAP base64 encoded value.

LogicalToOdbc

ClassMethod LogicalToOdbc(%val = "") As %String

Converts the value of this data type from $List format to a delimited string using the value of the ODBCDELIMITER parameter as a delimiter.