Column | Data Type | Description |
H_CLS | NUMBER | Handle instance class. |
H_IDX | INTEGER | Handle instance index. |
SCADA_NAME | VARCHAR(32) | SCADA system name. |
RTU_ALIAS | VARCHAR(64) | SCADA Remote Terminal Unit for measurements. |
RTI_ALIAS | VARCHAR2(128) | SCADA point (base) name - unique |
TEMPLET | VARCHAR2(32) | Template name used for scadapop exception processing |
PARTITION | INTEGER | Model partition for this object. |
BIRTH | DATE | Date object activated into the model. |
BIRTH_PATCH | INTEGER | Model patch which activated with this object. |
DEATH | DATE | Date object de-activated from the model. |
DEATH_PATCH | INTEGER | Model patch which de-activated this object. |
ACTIVE | VARCHAR2(1) | Active flag (Y/N). |
SUBSTATION | VARCHAR2(100) | Nominal substation for this device. |
FEEDER | VARCHAR2(100) | Nominal feeder for this device. |
Column | Data Type | Description |
ID | NUMBER | Numeric identifier for each "scada source" that we want RTI to process. |
SCADA_NAME | VARCHAR(32) | Name for the scada source |
ADAPTER_TYPE | VARCHAR(32) | Adapter type associated with this SCADA. Valid values are ICCP, MULTISPEAK, and RTADAPTER. |
ACTIVE | VARCHAR(1) | 'Y'/'N' - adapter is active or not. |
Column | Data Type | Description |
---|---|---|
Id | INTEGER | Unique integer - primary key. |
scada_id | INTEGER NOT NULL | Matches scada_ids.id |
keyword | VARCHAR2(32) NOT NULL | SCADA unique attribute keyword string from SCADA system. Generally maps to an NMS attribute name but this is not required unless the scada_synonyms.attribute_alias field is left blank. If the scada_synonyms.attribute_alias field is left blank than the scada_synonyms.keyword field must map to a valid NMS attribute name - from attributes.name (table.column). For conditions this is unique name used by external SCADA to identify the condition class and condition status (NOTE, TAG_RED, TAG_BLUE, etc). NMS condition class must be defined in scada_synonyms.attribute_alias. |
value | VARCHAR2(32) | • For digitals: Customer value associated with keyword that indicates digital state (OPEN, CLOSED, 0, 1). • For analogs: This field can be null. • For conditions: Must be "add", "rem", "syn" or "end". The "syn" and "end" values are used for synchronization requests. |
process_type | VARCHAR2(5) | • For digitals: 'D' • For analogs: 'A' - If the corresponding scada_synonyms.int_value is >0, then that value will be used as an absolute value to filter incoming analogs. • For analogs: 'A_PCT' indicates the corresponding scada_synoynms.int_value should be interpreted as a "percentage change" filter for incoming analogs. For a 1% filter int_value=0.01, for a 0.5% filter int_value=0.005, etc. • For conditions: 'C' |
attribute_alias | VARCHAR2(20) | Attribute name from NMS attributes table. • For digitals: The only way to get a model object to change status is to set this value to 'Status'. All other values are for digital attributes. • For analogs: This field is optional and can be set to '' (empty string). If this value is '' (blank), the scada_synonyms.keyword is used as the NMS attribute name. • For conditions: This field is the condition class name (tag, note, and so on). |
status_value | VARCHAR2(20) | Numeric or string from scada_states.alias table. • For digital status: This field is generally set to DEVICE_CLOSE, DEVICE_OPEN (defined in scada_states table), 0 (open), 1 (close). • For analogs: This field is NULL. • For conditions: This field is either a numeric condition status or a string that maps to a numeric condition status via the scada_states table. If it is a string it MUST start with an alpha (non-numeric) character. |
int_value | NUMBER | • For digitals: not used. • For analogs: If process_type is 'A', then int_value is used as an absolute value to filter incoming analogs. If process_type is 'A_PCT', then int_value is used as a "percentage" filter value. An int_value=0.01 would filter incoming A_PCT analog measurements by 1%. • For conditions: not used. |
stale | CLOB | For digitals: not used. For analogs: stale is a JSON value that specifies optional stale processing values on a per attribute and, optionally, per device class basis. Example JSON stale configuration: '{"default" : "30", "breaker" : "45"}' The example configuration (for a given attribute) sets default stale processing at 30 seconds. If a corresponding analog measurement comes in on a "breaker" class device, it will use 45 seconds for a stale processing threshold; otherwise (for any other class of device), it will default to 30 seconds. As many classes as desired can be added in this manner. Example stale configuration can be found in the $NMS_SQL_FILES/OPAL_scada.sql file and/or the $NMS_BASE/templates/rtadapter.dat.template file. |
Column | Data Type | Description |
SCADA_NAME | VARCHAR2(32) | Name of scada from scada_ids.scada_name |
ALIAS | VARCHAR2(32) | Alias to map to integer |
VALUE | INTEGER | Integer value to map to |
Column | Data Type | Description |
---|---|---|
ID | VARCHAR2(32) | scada_digital_in sequence generated pk |
H_CLS | NUMBER(38,0) | NMS class of device – can be null if alias is not null. |
H_IDX | NUMBER(38,0) | NMS index of device – can be null if alias is not null. |
ALIAS | VARCHAR2(128) | SCADA point alias - can be null if h_cls and h_idx are NOT null. If not null it is suggested this value (alone) uniquely identify a measurement. |
ATTRIBUTE | VARCHAR(32) | SCADA attribute. If numeric, it must match a valid NMS attribute number. If it is a string, it must map to a valid NMS attribute number via the scada_synonyms table. If the ALIAS above is unique it is NOT necessary to include an attribute value on input. |
PHASES | VARCHAR(4) | Intended phases for operation. If numeric, must be between 1 and 7 (where 1 is A and 7 is ABC). If a string must map to a valid numeric via the scada_states table. |
OPERATION | VARCHAR(32) | Operation. If numeric and used for attribute 0 (topology status), it must be 0 (open) or 1 (close) and the phase attribute must be set to indicate which phases are intended to operate. If a string it must map to a valid code for the attribute involved via a combination of the scada_synonyms table and/or the scada_states table. |
OPERATION_DATE | TIMESTAMP | Time the operation occurred in the field (in the UTC time zone), which can include milliseconds. If left blank, will default to SYSDATE. |
OPERATION_COUNT | NUMBER(10) | How many operations have occurred since the last scan – for momentaries. |
CAPTURE_DATE | DATE | When operation captured by NMS (in the UTC time zone) - generally set to SYSDATE. |
QUALITY | VARCHAR2(32) | Quality code for attribute – can be numeric or a string. Either way it must be properly configured in NMS and must ultimately translate to be greater than 0xFFFF (65535) and less than or equal to 0xFFFF. All quality codes below 0xFFFF are reserved for NMS. |
SOURCE | VARCHAR(32) | Data source/user name |
STATUS | VARCHAR2(1) | Status of request: • N = New • E = Error • S = Success |
ERROR_CODE | NUMBER(38,0) | Error code |
ERROR_DESCRIPTION | VARCHAR(256) | Error code description. |
Column | Data Type | Description |
---|---|---|
H_CLS | NUMBER(38,0) | NMS class of device |
H_IDX | NUMBER(38,0) | NMS index of device |
ALIAS | VARCHAR2(128) | SCADA point alias - can be null if h_cls and h_idx are NOT 0. |
ATTRIBUTE | VARCHAR(16) | SCADA attribute. If it is numeric it must match a valid NMS attribute. If it is a string it must be defined in scada_synonyms and map to a valid NMS attribute. If it is NOT provided the provided ALIAS must be provided and MUST uniquely identify a measurement. |
MEASUREMENT | NUMBER | Analog update value. |
MEASUREMENT_DATE | TIMESTAMP | When operation occurred in the field (in the UTC time zone); not currently used. |
CAPTURE_DATE | DATE | When measurement captured (in the UTC time zone) – could be updated by trigger on table update. This is the how RTAdapter determines what to examine during periodic polls. |
QUALITY | VARCHAR2(32) | Quality code for attribute; can be numeric or a string. Either way it must be properly configured in NMS and must ultimately translate to be greater than 0xFFFF (65535) and less than or equal to 0xFFFF. All quality codes below 0xFFFF are reserved for NMS. |
SOURCE | VARCHAR(32) | source/user name |
Column | Data Type | Description |
---|---|---|
H_CLS | NUMBER(38,0) | NMS class of device |
H_IDX | NUMBER(38,0) | NMS index of device |
ALIAS | VARCHAR2(128) | SCADA point alias - can be null if h_cls and h_idx are NOT 0. |
ATTRIBUTE | VARCHAR(16) | SCADA attribute. If it is numeric it must match a valid NMS attribute. If it is a string it must be defined in scada_synonyms and map to a valid NMS attribute. If it is NOT provided the provided ALIAS must be provided and MUST uniquely identify a measurement. |
MEASUREMENT | NUMBER | Analog update value. |
TYPE | VARCHAR2(2) | Entry type A=Analog,D=Digital, At/DT=Add, AR/DR=Remove |
PHASES | VARCHAR2(4) | Phase for attribute 0 operation (1->7 or ABC if defined in scada_states |
STATE | VARCHAR2(32) | Operation (0, 1, Open, Close) from scada_states |
MEASUREMENT | NUMBER | Analog measurement value |
QUALITY | VARCHAR2(32) | Quality code |
STATEOLD | VARCHAR2(32) | Previous operation (0, 1, Open, Close) from scada_states |
MEASUREMENT_OLD | NUMBER | Previous analog measurement value |
QUALITY_OLD | VARCHAR2(32) | Previous quality code |
MEASUREMENT_DATE | TIMESTAMP | When operation occurred in the field (in the UTC time zone); not currently used. |
CAPTURE_DATE | DATE | When measurement captured (in the UTC time zone) – could be updated by trigger on table update. |
SOURCE | VARCHAR2(32) | Source/user name for request |
Column | Data Type | Description |
---|---|---|
ID | NUMBER(38,0) | Unique identifier for the row. Generated by the scada_in_sequence. |
H_CLS | NUMBER(38,0) | NMS class of device |
H_IDX | NUMBER(38,0) | NMS index of device |
ALIAS | VARCHAR2(128) | Alias of the NMS device |
COND_KEY | VARCHAR2(32) | SCADA_SYNONYM.KEYWORD for the condition type. |
EXTERNAL_ID | VARCHAR(64) | External identifier for this condition. |
STATUS | VARCHAR2(1) | Process status ('N'=New, 'E'=Error, 'S'=Success) |
ACTION_DATE | DATE | When operation occurred in field (in the UTC time zone). |
CAPTURE_DATE | DATE | When the condition was captured (in the UTC time zone). This is the how RTAdapter determines what to examine during periodic polls. |
ACTION | VARCHAR2(3) | Action ('add' - Add, 'rem' - Remove, 'syn' – Synchronize, 'end' – End the synchronization) |
SOURCE | VARCHAR(32) | source/user name |
PHASES | NUMBER(38,0) | The bitwise integer phases for the condition. |
TEXT | VARCHAR(128) | The text for the condition. |
Column | Data Type | Description |
---|---|---|
Id | INTEGER | Id (primary key) sequence generated on insert |
exp_act_id | INTEGER | NMS expected action id key for original control |
cond_id | VARCHAR(64) | NMS (unique) condition id |
status | VARCHAR2(1) | Process status (N=New, E=Error, S=Success) |
response | SMALLINT | Response from SCADA - >0 is ok <=0 is error |
external_id | VARCHAR2(64) | SCADA id for control/condition point - optional |
h_cls | SMALLINT | Device handle class number - optional |
h_idx | INTEGER | Device handle index number - optional |
attribute | SMALLINT | Device attribute - optional |
action | VARCHAR2(32) | Original action - optional |
phases | VARCHAR2(4) | Phases for action - optional |
action_date | DATE | Time of original request (in the UTC time zone) - optional |
capture_date | DATE | Time response was captured (in the UTC time zone) - trigger. |
source | VARCHAR2(32) | Who responsible for action - optional |
text | VARCHAR2(128) | Text associated with response - optional |
Column | Data Type | Description |
---|---|---|
H_CLS | NUMBER | Object handle |
H_IDX | NUMBER | Object index |
PARTITION | NUMBER | Object partition handle |
ATTRIBUTE | NUMBER | Data attribute index (from ATTRIBUTES table) |
TTL | NUMBER | Time-To-Live Value. If set to 0 value will not be broadcast dynamically. If set to 2, the value will be considered a pseudo measurement. |
LIMIT_GROUP_ID | INTEGER | Object limit group |
RTI_ALIAS | VARCHAR2(128) | RTI device measurement name |
RTI_ALIAS_A | VARCHAR2(128) | RTI device measurement name for phase A - MultiSpeak status updates. |
RTI_ALIAS_B | VARCHAR2(128) | RTI device measurement name for phase B - MultiSpeak status updates. |
RTI_ALIAS_C | VARCHAR2(128) | RTI device measurement name for phase C - MultiSpeak status updates. |
SCADA_ID | INTEGER | SCADA source identifier - matches scada_ids.id |
RTU_ID | VARCHAR2(32) | RTU ID - unique name within SCADA system. Not generally used. |
QUALITY | INTEGER | Quality code |
VALUE | FLOAT | Current value – from Manual Replace or from SCADA if configured for persistence. |
UPDATE_FLAG | INTEGER | Update flag |
ICCP_OBJECT | VARCHAR2(32) | ICCP mms object name |
DISPLAY_ID | VARCHAR2(64) | ID for display call up – if different than rti_alias. |
CONTROLLABLE | VARCHAR2(1) | Is this row controllable |
ACTIVE | VARCHAR2(1) | Is this row active |
SOURCE | VARCHAR2(33) | Source of measurements |
COMMENTS | VARCHAR2(512) | Comment |
NORMAL_STATE | INTEGER | Nominal state – only used for Digital measurements. |
OFF_NOMINAL_TIME | DATE | Time quality went off-nominal (in the UTC time zone). |
MEASUREMENT_TYPE | VARCHAR2(1) | 'A' for Analog or 'D' for Digital. |
FEEDER | VARCHAR2(100) | Nominal feeder |
SUBSTATION | VARCHAR2(100) | Nominal substation |
GANG | VARCHAR2(1) | Y/N is this a gang measurement or not - for topology status. |
ICCP_DATA_SET | VARCHAR2(64) | ICCP Data Set |
DEVICE | VARCHAR2(64) | Device the measurement is on. |
NCG | INTEGER | The NCG of the device. |
Column | Data Type | Description |
---|---|---|
H_CLS | SMALLINT | Object handle |
H_IDX | INTEGER | Object index |
PARTITION | INTEGER | Object partition handle |
ATTRIBUTE | SMALLINT | Data attribute index (from ATTRIBUTES table) |
TTL | SMALLINT | Time-To-Live Value |
LIMIT_GROUP_ID | INTEGER | Object limit group |
RTI_ALIAS | VARCHAR2(128) | RTI device measurement name |
SCADA_ID | INTEGER | SCADA source identifier - matches scada_ids.id |
RTU_ID | VARCHAR2(32) | RTU IDID - unique name within SCADA system. |
QUALITY | INTEGER | Quality code |
VALUE | FLOAT | Manual Replace Value |
UPDATE_FLAG | INTEGER | Manual Replace Flag |
ICCP_OBJECT | VARCHAR2(32) | ICCP mms object name |
DISPLAY_ID | VARCHAR2(64) | ID for display call up |
CONTROLLABLE | VARCHAR2(1) | Is this row controllable |
ACTIVE | VARCHAR2(1) | Is this row active |
SOURCE | VARCHAR2(33) | Source of measurements |
COMMENTS | VARCHAR2(512) | Comment associated with |
OFF_NOMINAL_TIME | DATE | Time quality went off-nominal (in the UTC time zone). |
SCADA_TIME | TIMESTAMP | Time the operation captured by SCADA (in the UTC time zone). |
SYSTEM_TIME | DATE | Time operation captured by RTAdapter (in the UTC time zone). |
SUBSTATION | VARCHAR2(100) | Nominal Substation |
FEEDER | VARCHAR2(100) | Nominal Feeder |
GANG | VARCHAR2(1) | Whether the device is gang operable. |
QUAL_COMMENT | VARCHAR2(256) | Comment for quality code |
QUAL_COMMENT_USER | VARCHAR2(32) | NMS user who placed the comment |
QUAL_COMMENT_DATE | DATE | When quality comment entered (in the UTC time zone). |
DEVICE | VARCHAR2(64) | Device the measurement is on. |
NCG | INTEGER | The NCG of the device. |
Column | Data Type | Description |
H_CLS | SMALLINT | Object handle |
H_IDX | INTEGER | Object index |
PARTITION | INTEGER | Object partition handle |
ATTRIBUTE | SMALLINT | Data attribute index (from ATTRIBUTES table) |
TTL | SMALLINT | Time-To-Live Value |
LIMIT_GROUP_ID | INTEGER | Object limit group |
RTI_ALIAS | VARCHAR2(128) | RTI device measurement name |
SCADA_ID | INTEGER | SCADA source identifier |
RTU_ID | VARCHAR2(32) | RTU ID |
QUALITY | INTEGER | Quality code |
VALUE | FLOAT | Manual Replace Value |
UPDATE_FLAG | INTEGER | Manual Replace Flag |
ICCP_OBJECT | VARCHAR2(32) | ICCP mms object name |
DISPLAY_ID | VARCHAR2(64) | ID for display call up |
NORMAL_STATE | INTEGER | Normal state for measure |
CONTROLLABLE | VARCHAR2(1) | Is this row controllable |
ACTIVE | VARCHAR2(1) | Is this row active |
SOURCE | VARCHAR2(33) | Source of measurements |
COMMENTS | VARCHAR2(512) | Comment associated with |
OFF_NOMINAL_TIME | DATE | Time quality went off-nominal (in the UTC time zone). |
SCADA_TIME | TIMESTAMP | Time operation captured by SCADA (in the UTC time zone). |
SYSTEM_TIME | DATE | Time operation captured by RTAdapter (in the UTC time zone). |
SUBSTATION | VARCHAR2(100) | Nominal Substation |
FEEDER | VARCHAR2(100) | Nominal Feeder |
GANG | VARCHAR2(1) | Whether the device is gang operable |
QUAL_COMMENT | VARCHAR2(256) | Comment for quality code |
QUAL_COMMENT_USER | VARCHAR2(32) | NMS user who placed the comment. |
QUAL_COMMENT_DATE | DATE | When quality comment entered (in the UTC time zone). |
DEVICE | VARCHAR2(64) | Device the measurement is on. |
NCG | INTEGER | The NCG of the device. |
Column | Data Type | Description |
H_CLS | NUMBER(38) | Device class associated measurement |
H_IDX | NUMBER(38) | Device index associated measurement |
ATTRIBUTE | NUMBER(38) | Attribute number of measurement |
VALUE | NUMBER | Captured value of measurement |
SCADA_TIME | TIMESTAMP | Time value was captured (in the UTC time zone). |