AdsRead[Datatype]Req

AdsReadIntegerReq

AdsReadLongReq

AdsReadSingleReq

AdsReadDoubleReq

AdsReadStringReq

Setzt ein Read-Request für ein Datum von Typ Integer, Long, Single, Double oder String ab.

object.AdsRead[Datatype]Req(
  nInvokeId As Long,
  nIndexGroup As Long,
  nIndexOffset As Long,
  cbLength As Long
) As Long

Parameter

nInvokeId

[in] Auftragsnummer zur Identifizierung der Antwort

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)

Rückgabewert

Siehe ADS-Fehlercodes

Bemerkungen

Nachdem ein Read-Request an das ADS-Gerät abgesetzt wurde, wird mit der Abarbeitung des Visual Basic-Programms fortgefahren. Sobald die Daten vorliegen, löst das ADS-OCX die Ereignisfunktion AdsRead[Datatype]Conf() aus, mit der die geforderten Daten übermittelt werden.
Beim Absetzen vom Read-Request muss eine Identifizierungsnummer mit angegeben werden, die später beim Aufruf der Ereignisfunktion wieder zurückgegeben wird. Dadurch ist eine Zuordnung zwischen Read-Request und der Ereignisfunktion möglich.
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 nInvokeId As Long
nInvokeId = 1
'Lesen von MW0 aus der SPS
Call AdsOcx1.AdsReadIntegerReq(nInvokeId, &H4020&, 0&, 4&)

Private Sub AdsOcx1_AdsReadIntegerConf(ByVal nInvokeId As Long, ByVal nResult As Long, ByVal cbLength As Long, pData As Integer)
    If (nInvokeId = 1) And (nResult = 0) Then 
    'Daten anzeigen
    Label1.Caption = pData 
    End If
End Sub
Dim nInvokeId As Long
nInvokeId = 1
'Lesen aus SPS
Call AdsOcx1.AdsReadStringReq(nInvokeId, &H4020&, 0&, 20&)

Private Sub AdsOcx1_AdsReadStringConf(ByVal nInvokeId As Long, ByVal nResult As Long, ByVal cbLength As Long, ByVal pData As String)
    If (nInvokeId = 1) And (nResult = 0) Then
    'Daten anzeigen
    Label1.Caption = pData
    End If
End Sub