don_looney
Level-2
- Beiträge
- 95
- Reaktionspunkte
- 5
-> Hier kostenlos registrieren
Moin Moin zusammen
Ich habe ein Problem mit einem Script in WinCC TIA V13 SP1 UP1. Zuvor habe ich schon viele Threads hier im Forum, genau so wie auf der Siemens Homepage angeschaut. Ich habe vorher noch nicht wirjlich viel Kontakt mit VBS gehabt, deswegen frage ich hier jetzt mal nach.
In meinem Script lege ich einen Ornder auf dem NAS Laufwerk an wenn dieser noch nicht vorhanden ist.
Danach möchte ich in diesem Ordner eine Datei erstellen.
Ich bekomme es einfach nicht hin in dem Ordner der erstellt wurde eine Datei zu erstellen.
Momentan ist der Code so gestaltet, dass die Datei dann im Verzeichnis vor dem erstellten Ordner angelegt wird. Das funktioniert soweit auch.
Genutzt wird eine 319-3 PN/DP CPU und ein TP 700 Comfort HMI
Ich wäre für jede Hilfe dankbar.
Hier der Code:
/////////////////////////////////////////////////////////////////////
Dim fdatei, fordner, path, path2, ordner
'Fehlerausgabe initialisieren
SmartTags("Datensatz_NAS.Fehler_Objekt_erstellen") = False
SmartTags("Datensatz_NAS.Fehler_Objekt_oeffnen") = False
SmartTags("Datensatz_NAS.Fehler_Daten_schreiben") = False
SmartTags("Datensatz_NAS.Fehler_Ordner_nicht_vorhanden") = False
SmartTags("Datensatz_NAS_Fehler_Ordner_erstellen") = False
SmartTags("Datensatz_NAS_Fehler_Ordner_nicht_vorhanden") = False
'Datenbaustein für Fehleranalyse rücksetzen
If SmartTags("Daten_init") = True Then
SmartTags("Daten_init") = False
Err.Clear
Exit Sub
End If
'path = "\\nas\daten\"& CStr(Year(Date)) & "_" & CStr(Month(Date)) & "_" & CStr(Day(Date)) &"__" & CStr(Hour(Time)) &"_" & CStr(Minute(Time)) &"_" & CStr(Second(Time)) & ".csv"
path = "\\nas\daten\" & CStr(Year(Date)) & "_" & CStr(Month(Date)) & "_" & CStr(Day(Date)) & ".csv"
path2 = "\\nas\daten\"
ordner = "\\nas\daten\"& CStr(Year(Date)) & "_" & CStr(Month(Date)) & "_" & CStr(Day(Date))
'Error Routine - Fehlerroutine
On Error Resume Next
'Ordner für Datum erstellen
Set fordner = CreateObject("Filectl.Filesystem")
If fordner.dir(ordner) = "" Then fordner.mkdir(ordner)
If Err.Number <> 0 Then
SmartTags("Datensatz_NAS_Fehler_Ordner_erstellen") = True
Err.Clear
Exit Sub
End If
fordner.Close
Set fordner = Nothing
'If fdatei.dir(ordner) = "" Then
' SmartTags("Datensatz_NAS_Fehler_Ordner_nicht_vorhanden") = True
'End If
'Create object - Objekt erstellen
Set fdatei = CreateObject("Filectl.File")
'If Err.Number <> 0 Then
' SmartTags("Datensatz_NAS.Fehler_Objekt_erstellen") = True
' Err.Clear
' Exit Sub
'End If
Err.Clear
'Open the textfile - Öffnen der Textdatei
fdatei.open path , 2
If Err.Number <> 0 Then
SmartTags("Datensatz_NAS.Fehler_Objekt_oeffnen") = True
Err.Clear
Exit Sub
End If
'Write values into the textfile
fdatei.LinePrint ("Datensatz1; " & SmartTags("Datensatz_NAS.Nummer1") & ";")
fdatei.LinePrint ("Datensatz2; " & SmartTags("Datensatz_NAS.Nummer2") & ";")
If Err.Number <> 0 Then
SmartTags("Datensatz_NAS.Fehler_Daten_schreiben") = True
Err.Clear
Exit Sub
End If
'Close file - Datei schließen
fdatei.Close
Set fdatei = Nothing
//////////////////////////////////////////////////
Ich habe ein Problem mit einem Script in WinCC TIA V13 SP1 UP1. Zuvor habe ich schon viele Threads hier im Forum, genau so wie auf der Siemens Homepage angeschaut. Ich habe vorher noch nicht wirjlich viel Kontakt mit VBS gehabt, deswegen frage ich hier jetzt mal nach.
In meinem Script lege ich einen Ornder auf dem NAS Laufwerk an wenn dieser noch nicht vorhanden ist.
Danach möchte ich in diesem Ordner eine Datei erstellen.
Ich bekomme es einfach nicht hin in dem Ordner der erstellt wurde eine Datei zu erstellen.
Momentan ist der Code so gestaltet, dass die Datei dann im Verzeichnis vor dem erstellten Ordner angelegt wird. Das funktioniert soweit auch.
Genutzt wird eine 319-3 PN/DP CPU und ein TP 700 Comfort HMI
Ich wäre für jede Hilfe dankbar.
Hier der Code:
/////////////////////////////////////////////////////////////////////
Dim fdatei, fordner, path, path2, ordner
'Fehlerausgabe initialisieren
SmartTags("Datensatz_NAS.Fehler_Objekt_erstellen") = False
SmartTags("Datensatz_NAS.Fehler_Objekt_oeffnen") = False
SmartTags("Datensatz_NAS.Fehler_Daten_schreiben") = False
SmartTags("Datensatz_NAS.Fehler_Ordner_nicht_vorhanden") = False
SmartTags("Datensatz_NAS_Fehler_Ordner_erstellen") = False
SmartTags("Datensatz_NAS_Fehler_Ordner_nicht_vorhanden") = False
'Datenbaustein für Fehleranalyse rücksetzen
If SmartTags("Daten_init") = True Then
SmartTags("Daten_init") = False
Err.Clear
Exit Sub
End If
'path = "\\nas\daten\"& CStr(Year(Date)) & "_" & CStr(Month(Date)) & "_" & CStr(Day(Date)) &"__" & CStr(Hour(Time)) &"_" & CStr(Minute(Time)) &"_" & CStr(Second(Time)) & ".csv"
path = "\\nas\daten\" & CStr(Year(Date)) & "_" & CStr(Month(Date)) & "_" & CStr(Day(Date)) & ".csv"
path2 = "\\nas\daten\"
ordner = "\\nas\daten\"& CStr(Year(Date)) & "_" & CStr(Month(Date)) & "_" & CStr(Day(Date))
'Error Routine - Fehlerroutine
On Error Resume Next
'Ordner für Datum erstellen
Set fordner = CreateObject("Filectl.Filesystem")
If fordner.dir(ordner) = "" Then fordner.mkdir(ordner)
If Err.Number <> 0 Then
SmartTags("Datensatz_NAS_Fehler_Ordner_erstellen") = True
Err.Clear
Exit Sub
End If
fordner.Close
Set fordner = Nothing
'If fdatei.dir(ordner) = "" Then
' SmartTags("Datensatz_NAS_Fehler_Ordner_nicht_vorhanden") = True
'End If
'Create object - Objekt erstellen
Set fdatei = CreateObject("Filectl.File")
'If Err.Number <> 0 Then
' SmartTags("Datensatz_NAS.Fehler_Objekt_erstellen") = True
' Err.Clear
' Exit Sub
'End If
Err.Clear
'Open the textfile - Öffnen der Textdatei
fdatei.open path , 2
If Err.Number <> 0 Then
SmartTags("Datensatz_NAS.Fehler_Objekt_oeffnen") = True
Err.Clear
Exit Sub
End If
'Write values into the textfile
fdatei.LinePrint ("Datensatz1; " & SmartTags("Datensatz_NAS.Nummer1") & ";")
fdatei.LinePrint ("Datensatz2; " & SmartTags("Datensatz_NAS.Nummer2") & ";")
If Err.Number <> 0 Then
SmartTags("Datensatz_NAS.Fehler_Daten_schreiben") = True
Err.Clear
Exit Sub
End If
'Close file - Datei schließen
fdatei.Close
Set fdatei = Nothing
//////////////////////////////////////////////////