-> Hier kostenlos registrieren
Hallo,
ich habe folgendes Problem:
Ich habe Fünf Variablen vom Typ Byte mit 8 Arrayelementen konfiguriert.
Diese sind mit einer S7 414 verbunden und auf einen DB-Bereich adressiert.
Die Werte in den Bytes bezeichnen den Betriebszustand einer Maschine.
In einem Bild, das nur eine von 5 Maschinen zeigt möchte ich zyklisch einen Teil des Arrays der anzuzeigenden Anlage in die Interne Byt- Variable kopieren, welche an Steuerelemente auf einem Bild gekoppelt ist.
Alle Versuche scheitern an einem Typenkonflikt.
Z.B:
If SmartTags("bol_Modulbild_Aktiv") = False Then
Exit Sub
End If
Select Case SmartTags("int_Modulnummer")
Case 1
SmartTags("byt_MEV_Modul_Upstacker_SSh") = SmartTags("byt_Arr_M1_Upstacker_SSh[1]")
Case 2
SmartTags("byt_MEV_Modul_Upstacker_SSh") = SmartTags("byt_Arr_M2_Upstacker_SSh[1]")
Case 3
SmartTags("byt_MEV_Modul_Upstacker_SSh") = SmartTags("byt_Arr_M3_Upstacker_SSh[1]")
Case 4
SmartTags("byt_MEV_Modul_Upstacker_SSh") = SmartTags("byt_Arr_M4_Upstacker_SSh[1]")
Case 5
SmartTags("byt_MEV_Modul_Upstacker_SSh") = SmartTags("byt_Arr_M5_Upstacker_SSh[1]")
End Select
Call Refresh_Time()
Ein weiterer bizarrer Fefler ist, dass bie der Case-Abfrage die "1" rot unterschlängelt ist (hat Siemens heimlich die 1 aus der Menge der Integerzahen entfernt???).
Auch dies funktioniert nicht:
Dim Testarray(7)
Testarray = SmartTags("byt_Arr_M1_Upstacker_SSh") 'Testarray ist rot unterschlängelt. Grund ?????
Dim Testarray
Testarray = SmartTags("byt_Arr_M1_Upstacker_SSh[1]")'Hier ist der andere Teil unterschlängelt: Grund ??????
So langsam verzweifle ich an WinCC-flexible.
Danke schon mal für eure Mühe.
Gruß,
Norbert
ich habe folgendes Problem:
Ich habe Fünf Variablen vom Typ Byte mit 8 Arrayelementen konfiguriert.
Diese sind mit einer S7 414 verbunden und auf einen DB-Bereich adressiert.
Die Werte in den Bytes bezeichnen den Betriebszustand einer Maschine.
In einem Bild, das nur eine von 5 Maschinen zeigt möchte ich zyklisch einen Teil des Arrays der anzuzeigenden Anlage in die Interne Byt- Variable kopieren, welche an Steuerelemente auf einem Bild gekoppelt ist.
Alle Versuche scheitern an einem Typenkonflikt.
Z.B:
If SmartTags("bol_Modulbild_Aktiv") = False Then
Exit Sub
End If
Select Case SmartTags("int_Modulnummer")
Case 1
SmartTags("byt_MEV_Modul_Upstacker_SSh") = SmartTags("byt_Arr_M1_Upstacker_SSh[1]")
Case 2
SmartTags("byt_MEV_Modul_Upstacker_SSh") = SmartTags("byt_Arr_M2_Upstacker_SSh[1]")
Case 3
SmartTags("byt_MEV_Modul_Upstacker_SSh") = SmartTags("byt_Arr_M3_Upstacker_SSh[1]")
Case 4
SmartTags("byt_MEV_Modul_Upstacker_SSh") = SmartTags("byt_Arr_M4_Upstacker_SSh[1]")
Case 5
SmartTags("byt_MEV_Modul_Upstacker_SSh") = SmartTags("byt_Arr_M5_Upstacker_SSh[1]")
End Select
Call Refresh_Time()
Ein weiterer bizarrer Fefler ist, dass bie der Case-Abfrage die "1" rot unterschlängelt ist (hat Siemens heimlich die 1 aus der Menge der Integerzahen entfernt???).
Auch dies funktioniert nicht:
Dim Testarray(7)
Testarray = SmartTags("byt_Arr_M1_Upstacker_SSh") 'Testarray ist rot unterschlängelt. Grund ?????
Dim Testarray
Testarray = SmartTags("byt_Arr_M1_Upstacker_SSh[1]")'Hier ist der andere Teil unterschlängelt: Grund ??????
So langsam verzweifle ich an WinCC-flexible.
Danke schon mal für eure Mühe.
Gruß,
Norbert