INGEAR.NET.ABLink

 

Tag.Changed Event

Data Change Event

[Visual Basic]
Public Event Changed As EventHandler
[C#]
public event EventHandler Changed;

Remarks

The Changed event fires when the Tag changes value or Quality state

Example

VB
' ******************************
' * Initialize Controller and Tag
Dim MyPLC As New ABLink.Controller("192.168.1.32")
Dim WithEvents MyTag As New ABLink.Tag("N7:0")
Try
 ' *****************************
 ' * add event handler
  AddHandler MyTag.Changed, AddressOf MyTag_Changed 
  
  ' ****************************
  ' * read tag
  MyPLC.ReadTag(MyTag)
Catch ex As System.Exception
  Console.WriteLine(ex.Message)
End Try
{...elsewhere in code...}
' *********************************
' * event handler
Private Sub MyTag_Changed(ByVal sender As Object, ByVal e As System.EventArgs)
  Try
  
   Dim theTag as ABLink.Tag
   Dim args as ABLink.DataChangeEventArgs
   
   ' ***************************
   ' * Tag that caused the event 
   theTag = sender
   
   ' ***************************
   ' * event argument parameters
   args = e
   
   ' ***************************
   ' * process the event data
   If ResultCode.QUAL_GOOD = args.QualityCode Then
      Console.WriteLine(Convert.ToString(args.Value))
      Console.WriteLine(args.TimeStamp.ToString())
   Else
      Console.WriteLine(args.ErrorString)
   End If
   Console.WriteLine(args.QualityString)
 Catch ex As System.Exception
   Console.WriteLine(ex.Message)
 End Try
End Sub


 
C# /////////////////////////// // initialize controller and tag ABLink.Controller MyPLC = new ABLink.Controller("192.168.1.32"); ABLink.Tag MyTag = new ABLink.Tag("N7:0"); try {  ///////////////////////////  // add event handler  MyTag.Changed +=new EventHandler(MyTag_Changed);    ///////////////////////////  // read the tag  MyPLC.ReadTag(MyTag); } catch(System.Excpetion ex) {  Console.WriteLine(ex.Message); } {...elsewhere in code...} ///////////////////////////////////// // EVENT HANDLER private void MyTag_Changed(object sender, EventArgs e) {  try  {    //////////////////////////////////////    // Tag that caused the event    ABLink.Tag theTag = (ABLink.Tag)sender;        //////////////////////////////////////    // event argument parameters    ABLink.DataChangeEventArgs args = (ABLink.DataChangeEventArgs)e;        /////////////////////////////////////    // process the event data    if(ResultCode.QUAL_GOOD == args.QualityCode)    {       Console.WriteLine(Convert.ToString(args.Value));       Console.WriteLine(args.TimeStamp.ToString());    }    else       Console.WriteLine(args.ErrorString);    Console.WriteLine(args.QualityString);  }  catch (System.Exception ex)  {    Console.WriteLine(ex.Message);  } }           

See Also

Tag Class | ABLink Namespace | ReadTag | WriteTag | Active | GroupRead | GroupWrite