AdsRead[Datatype]Connect
AdsReadBoolConnect
AdsReadIntegerConnect
AdsReadLongConnect
AdsReadSingleConnect
AdsReadDoubleConnect
AdsReadStringConnect
Stellt eine zyklische Verbindung zwischen einer Visual Basic-Variablen vom Typ Boolean, Integer, Long, Single, Double oder String und einem Datum aus einem ADS-Gerät her.
object.AdsRead[Datatype]Connect(
nIndexGroupAs Long,
nIndexOffset As Long,
cbLength As Long,
nRefreshType As Integer,
nCycleTime As Integer,
pData As [Datatype]
) As Long
Parameter
nIndexGroup
[in] Index-Gruppe der ADS-Variable
nIndexOffset
[in] Index-Offset der ADS-Variable
cbLength
[in] Länge der Daten in Byte (siehe VB-Variablenlängen)
nRefreshType
[in] Art des Datenaustausches zwischen VB-Variable und ADS-Variable (siehe Datentyp ADSOCXTRANSMODE)
nCycleTime
[in] Lesezyklus in ms
pData
[in] Visual Basic-Variable, in der die Daten der ADS-Variable geschrieben werden
Rückgabewert
Siehe ADS-Fehlercodes
Bemerkungen
Wird die Verbindung zu der ADS-Variable nicht mehr benötigt, sollte dieses über die Methode AdsRead[Datatype]Disconnect() wieder freigegeben werden. Wenn in einer Form nur bestimmte Werte benötigt werden, sollte die Verbindung erst beim Laden der Form erzeugt werden und beim Schließen der Form wieder freigegeben werden.
Anmerkung zum Datentyp String: Bei der Länge der Daten ist zu beachten, dass sich diese auf die Länge der Variable im Visual Basic Programm bezieht. Da Visual Basic ein Zeichen mit 2 Byte darstellt, muss die Länge der Variable mit LenB() ermittelt werden, nicht mit Len().
Beispiel
Dim VBVar As Integer
'wird beim Starten des Programms aufgerufen
Private Sub Form_Load()
'Verbindung zwischen Merkerwort 0 der SPS und VBVar herstellen
Call AdsOcx1.AdsReadIntegerConnect(&H4020&, 0&, 2&, 1, 110, VBVar)
End Sub
'wird beim Beenden des Programms aufgerufen
Private Sub Form_Unload(Cancel As Integer)
'Verbindung zwischen den Variablen trennen
Call AdsOcx1.AdsReadIntegerDisconnect(VBVar)
End Sub
'wird nach jedem Lesen vom ADS-OCX aufgerufen
Private Sub AdsOcx1_AdsReadConnectUpdate(ByVal nIndexGroup As Long, ByVal nIndexOffset As Long)
'Variablen am Bildschirm anzeigen
Label1.Caption = VBVar
End Sub
Dim VBVar As String
'wird beim Starten des Programms aufgerufen
Private Sub Form_Load()
'Visual Basic Variable initialisieren
VBVar = Space(10)
'Verbindung zur Variable in der SPS herstellen
Call AdsOcx1.AdsReadStringConnect(&H4020&, 0&, LenB(VBVar), 4, 110, VBVar)
End Sub
'wird beim Beenden des Programms aufgerufen
Private Sub Form_Unload(Cancel As Integer)
'Verbindung zur Variable in SPS beenden
Call AdsOcx1.AdsReadStringDisconnect(VBVar)
End Sub
'wird bei Veränderung der SPS-Variablen vom ADS-OCX aufgerufen
Private Sub AdsOcx1_AdsReadConnectUpdate(ByVal nIndexGroup As Long, ByVal nIndexOffset As Long)
If (nIndexGroup = &H4020) And (nIndexOffset = 0) Then
'Variablen in Form anzeigen
Label1.Caption = VBVar
End If
End Sub