If you've ever seen Ignition 8 Quality codes that look unfamiliar (i.e., not listed in this IA docs page), in our module message payloads, when scripting in Ignition, etc., you may need to do further decoding. To get the specific subcode you must look only at the lower 16 bits of the QualityCode 32 bit Integer. See Ignition Java docs here for more details.
Below is a table of decoded Ignition 8 Quality codes (Python script below that was used to generate this list on Ignition 8.1.9)
Quality | Code | Subcode |
---|---|---|
Good_Unspecified | 0 | 0 |
Good_WritePending | 2 | 2 |
Good | 192 | 192 |
Good_Provisional | 200 | 200 |
Good_Initial | 201 | 201 |
Good_Overload | 202 | 202 |
Good_Backfill | 203 | 203 |
Uncertain | 1073742080 | 256 |
Uncertain_LastKnownValue | 1073742081 | 257 |
Uncertain_InitialValue | 1073742082 | 258 |
Uncertain_DataSubNormal | 1073742083 | 259 |
Uncertain_EngineeringUnitsExceeded | 1073742084 | 260 |
Uncertain_IncompleteOperation | 1073742085 | 261 |
Bad | -2147483136 | 512 |
Bad_Unauthorized | -2147483135 | 513 |
Bad_AccessDenied | -2147483134 | 514 |
Bad_Disabled | -2147483133 | 515 |
Bad_Stale | -2147483132 | 516 |
Bad_TrialExpired | -2147483131 | 517 |
Bad_LicenseExceeded | -2147483130 | 518 |
Bad_NotFound | -2147483129 | 519 |
Bad_ReferenceNotFound | -2147483128 | 520 |
Bad_AggregateNotFound | -2147483127 | 521 |
Bad_NotConnected | -2147483126 | 522 |
Bad_GatewayCommOff | -2147483125 | 523 |
Bad_OutOfRange | -2147483124 | 524 |
Bad_DatabaseNotConnected | -2147483123 | 525 |
Bad_ReadOnly | -2147483122 | 526 |
Bad_Failure | -2147483121 | 527 |
Bad_Unsupported | -2147483120 | 528 |
Error | -1073741056 | 768 |
Error_Configuration | -1073741055 | 769 |
Error_ExpressionEval | -1073741054 | 770 |
Error_TagExecution | -1073741053 | 771 |
Error_TypeConversion | -1073741052 | 772 |
Error_DatabaseQuery | -1073741051 | 773 |
Error_IO | -1073741050 | 774 |
Error_TimeoutExpired | -1073741049 | 775 |
Error_Exception | -1073741048 | 776 |
Error_InvalidPathSyntax | -1073741047 | 777 |
Error_Formatting | -1073741046 | 778 |
Error_ScriptEval | -1073741045 | 779 |
Error_CycleDetected | -1073741044 | 780 |
from com.inductiveautomation.ignition.common.model.values import QualityCode codesAsJson = QualityCode.getCodesJson() for code in codesAsJson: print "%s, %s, %s" % (codesAsJson[code], code, int(code) & 0xFFFF) |