WinCC Error # -2147024893

MartinJ12

Level-1
Beiträge
43
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Community,

ich bekomme dauerhaft auf meinem HMI diesen Fehler [Error # -2147024893] angezeigt, kann aber leider nichts mit anfangen.
Hatte jemand schon mal den gleichen Fehler? Falls ja was habt ihr getan das er nicht mehr aufgetreten ist?

Ich vermute bei mir ganz stark, dass es an den VB-Skripten das Problem liegt. Entweder hab ich bei der Pfadbeschreibung was falsch oder ich weiß auch nicht.

['Selection of the storage path - Auswahl des Speicherpfads
If SmartTags("bExtension") =0 Then
path ="\Storage Card USB\datafile.txt"
delimiter=vbTab
Else
path ="\Storage Card USB\datafile.csv"
delimiter=";"
End If]

https://support.industry.siemens.co...s-data-in-a-file-via-a-script-?dti=0&lc=en-FR

Ich hab das hier mal herausgenommen, weil ich etwas testen möchte, leider funktioniert das alles nicht so wie ich es mir vorgestellt habe zu meinen Bedauern.

Bleibt gesund, viele Grüße
Martin
 
Was heißt "dauerhaft angezeigt"? Geht die Meldung nie weg? Ab wann wird die Meldung angezeigt?
Steht bei der Meldung auch ein Text, eine Beschreibung des Errors?
Hast Du ein Bild von der Fehlermeldung?

Harald
 
Das Panel lautet: TP700 Comfort

Hallo Harald,

die meldung kommt auf wenn ich auf den Button Datei speichern klicke, dann geht sie nach einer gewissen Zeit 4-5sec wieder weg.
 
Hallo Martin,

solche und ähnliche Fehlercodes werden geworfen, wenn in Scripten ein sogenannter Runtime-Error auftritt.
Es gibt im Netz diverse Informationen zu diesen Codes, einfach mal nach "Visual Basic" und der jeweiligen Fehlernummer suchen.

Grundsätzlich solltest du in einem Script solche Fehler abfangen,
z.B. zuerst prüfen, ob eine Datei vorhanden ist, bevor du sie öffnest/kopierst.
Im Netz gibt es auch zum Thema ErrorHandling in VBScript genügend Infos.


Gruß, Fred
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich würde mal vermuten, daß bei einem Comfort Panel der Pfad zur USB-Schnittstelle nicht "Storage Card USB" heißt. Sondern vermutlich irgendwas mit "USB_X6..."
Hat das Comfort Panel einen Windows Explorer? Kann man da den Name eines angesteckten USB-Sticks sehen?
Wenn man bei dem Comfort Panel ein Archiv projektiert, dann sollte in TIA der korrekte Name zum Auswählen des Ablageortes angezeigt werden.

PS: scheint wohl doch "\Storage Card USB\" zu heißen. "\USB_X6..." ist bei Basic Panels.

Harald
 
Zuletzt bearbeitet:
path ="\Storage Card USB\datafile.txt"
delimiter=vbTab
Else
path ="\Storage Card USB\datafile.csv"

Hier wird ja nur ein Pfad der Variable "path" zugewiesen.
Zeig doch einmal dein ganzes Skript oder zumindest die Stelle, an der mit der Variable "path"
vom USB Stick gelesen oder geschrieben wird.
 
Ich würde mal vermuten, daß bei einem Comfort Panel der Pfad zur USB-Schnittstelle nicht "Storage Card USB" heißt. Sondern vermutlich irgendwas mit "USB_X6..."

Nein, dass passt schon.

Hier mal ein Ausschnitt von einem bei mir funktionierendem Skript ( TP700 Comfort ):
Code:
datei = "\Storage Card USB\Daten.csv"
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Sub Read_Data()
'Tip:
' 1. Use the <CTRL+SPACE> or <CTRL+I> keystroke to open a list of all objects and functions
' 2. Write the code using the HMIRuntime object.
' Example: HmiRuntime.Screens("Screen_1").
' 3. Use the <CTRL+J> keystroke to create an object reference.
'Write the code as of this position:

'Declaration of local tags - Deklaration der lokalen Variablen
Dim fo
Dim path
Dim mode
Dim delimiter
Dim data
Dim splitdata

'Initialization of Tags - Initialisierung von Variablen
mode=1 '1 = Input

'Selection of the storage path - Auswahl des Speicherpfads
If SmartTags("bExtension") =0 Then
path ="\Storage Card USB\datafile.txt"
delimiter=vbTab
Else
path ="\Storage Card USB\datafile.csv"
delimiter=";"
End If

'Starting error routine - Starten der Fehlerroutine
On Error Resume Next

'Create a file object - Datei Objekt erstellen
Set fo= CreateObject("FileCtl.File")

'Check if any errors happend - Auf Fehler prüfen
If Err.Number<> 0 Then
ShowSystemAlarm "Error # " & CStr(Err.Number)& " "& Err.Description
Err.Clear
Exit Sub
End If

'Open or creat a file - Öffnen bzw. Erstellen einer Datei
fo.open path,mode

'Check if any errors happend - Auf Fehler prüfen
If Err.Number<> 0 Then
ShowSystemAlarm "Error # " & CStr(Err.Number)& " "& Err.Description
Err.Clear
Exit Sub
End If



'Read data from file - Daten werden aus Datein gelesen
While fo.EOF = False
data=fo.LineInputString
Wend

'Write data to HMI-Tags - Daten werden auf die HMI-Variablen geschrieben
data=Replace(data,vbTab & vbTab,delimiter)
splitdata=Split(data,delimiter)
SmartTags("szDate")=splitdata(0)
SmartTags("szString_1")= splitdata(1)
SmartTags("iValue_1")=splitdata(2)
SmartTags("iValue_2")=splitdata(3)

'Close the file - Datei wird geschlossen
fo.Close

'Release the Object - Objekt wird freigegeben
Set fo = Nothing

ShowSystemAlarm "Reading of data was successful!"
End Sub
 
Wie gesagt ist von dem Link den ich oben genannt hatte.
Ich hab da nichts dran geändert, fuchse mich momentan noch in die Skriptsprache ein.


Hab den Tipp von Harald mal kontrolliert, leider wird mir mein USB Stick nicht mal angezeigt.
Muss ich eventuell den Project File einstellen?
 
Zuletzt bearbeitet:
Wie Harald schon schrieb,

sollte erst mal geprüft werden, ob der USB Stick überhaupt erkannt wird. Dafür in den Explorer gehen und mal das USB Laufwerk anklicken ( wenn überhaupt vorhanden ).
 
Zurück
Oben