From OpenSCADAWiki
Jump to: navigation, search

The strict structure of the category and the text of the message is not intended, and the user can create them for their own messages arbitrarily, but account should be taken of the structure of system messages and messages defined by standard OpenSCADA libraries to prevent intersection with them, or targeting expanding:

  • System, are generates by the OpenSCADA objects-nodes:
CATEGORY: defines a typical path to the message node, for example — "/sub_DAQ/mod_LogicLev/cntr_gen/", where:
  • "/*/*" — the typical template-sign of a system message based on a delimiter character of a path element that can be directly used in the category filter to determine only the system message archive.
TEXT: contains the path of the name of the message node and the same message in the format "{NodeNmPath}: {message}", for example — "AGLKS > Data Acquisition > LogicLev > gen: Controller starting.".
  • Transferred, messages that were received from the hierarchically lower stations of OpenSCADA (like PLC) or sent by the higher stations:
CATEGORY: the controller object ID of the module DAQ.DAQGate is added to the start of the received message category, for example — "loop:alModBus:testTCP" or "TopStat(DAQCntr):alModBus:testTCP", where:
  • Unified structures with the DAQ-source in the category, are generated by the data source or its procedures using the function messSet() of the OpenSCADA API and the User API:
CATEGORY: defines the ID-address of the source in the format "{ID}{ModId}:{CntrId}[.{PrmId}][:{SpecPrms}]", where:
  • ID — two symbol structure identification;
  • ModId — identifier of the module;
  • CntrId — identifier of the controller object;
  • PrmId — identifier of the parameter;
  • SpecPrms — specific parameters of the structure ID.
CATEGORY: defines the ID-address of the source in the format "al{ModId}:{CntrId}[.{PrmId}]", for example — "alLogicLev:gen.F_PP1", where:
  • "al*" — the typical template-sign of a violation message based on the first two characters of the word "alarm", which can be directly used in the category filter to determine only the archive of violations.
TEXT: "{CntrNm} > {PrmNm}: {MessText}", for example — "Mainstation > F_PP1: Gas flow through the diaphragm PP1: Upper warning border error", where:
  • CntrNm — name of the controller object;
  • PrmNm — name of the parameter.
  • MessText — text of the message, which has the substructure "{Viol}: {Value}[: {QuietTime}[: {NormTime} [: {Comment}]]]", where:
  • Viol — description of the violation, which some frames, such as Main.alarmsAct and Main.alarmsSt, can expand by custom fields in the form "[[{CustFld0} => {CustFld1} => ... => {CustFldN}]]";
  • Value — value of the violation;
  • QuietTime — quietance time;
  • NormTime — time of return to the NORM-state, set here after quietation-acquiring already NORM message;
  • Comment — commentary of the issue.
  • User-operator actions with the DAQ-source, are generated by the widget procedures at the determined actions of the user-operator which must be recorded in the protocol of user-operator, and when the DAQ-parameter object is accessible:
CATEGORY: defines the user and the complete characteristic DAQ-source for which actions are made, in the format "OP{ModId}:{CntrId}[.{PrmId}]:{user}", for example — "OPLogicLev:gen.PC_PCV1:roman", where:
  • "OP*" — the typical pattern-sign of the user-operator action message based on the first two characters of the word "operator" that can be directly used in the category filter to determine only operator's archive of operations.
TEXT: the same as the "User-operator actions" structure.
  • User-operator actions, are generated by the widget procedures at the determined actions of the user-operator, which must be recorded in the protocol of user-operator:
CATEGORY: defines the user and the characteristic source (usually the DAQ-subsystem parameter) for which actions are made, in the format "OP:{user}:{src}", for example — "OP:roman:PC_PCV1", where:
  • "OP:*" — the typical pattern-sign of the user-operator action message based on the first two characters of the word "operator" that can be directly used in the category filter to determine only operator's archive of operations;
  • user — OpenSCADA user;
  • src — characteristic source, usually the parameter of the subsystem "Data acquisition", if necessary, supplemented by a hierarchy of DAQ-parameters up to the controller object.
TEXT: description of the action in the format "{src} : {name} : [{oldVal}] : {newVal}", for example — "'PC_PCV1'. Setpoint : Regulator of the input pressure of the CS : 5.8 : 6.0", where:
  • src — the source name, usually the parameter object with the details, and if necessary, is supplemented by the hierarchy of the DAQ-parameters up to the controller object;
  • name — name of the source, usually it is a controller object;
  • oldVal — old value, can be missed;
  • newVal — new value or action.
CATEGORY: defines the source ID SrcID in the form "val{SrcID}", where:
  • "val*" — the typical template-sign of a value, that can be directly used in the category filter to determine only the values in messages;
  • SrcID — source identifier.
TEXT: the parameter Name and Value in the form "{Name}: {Value}".
CATEGORY: defines the user prescription-program ID ProgNM in the form "uprg{ProgNM}", where:
  • "uprg*" — the typical template-sign of a user prescription-program, that can be directly used in the category filter to determine in the messages only the user prescriptions-programs;
  • ProgNM — the prescription-program name.
TEXT: the action description in the form "{ActDescr} "{ProgNM}" : {StartTm} : {ActTm}", where:
  • ActDescr — the action description:
  • "No current node present";
  • "Terminated program session by the user";
  • "Terminated program session by the error";
  • "Successful session of the program".
  • ProgNM — the prescription-program name;
  • StartTm — start time of the prescription-program, in the form "2020-03-14 16:05:01";
  • ActTm — action time of the prescription-program, in the form "2020-03-14 16:05:52".