-> Hier kostenlos registrieren
Hallo zusammen,
Ich soll gerade ein Bestandsprojekt erweitern. Momentan werden Produktionsdaten in einem .txt - File abgelegt. Das File heißt "Ergebnisdaten" und wird erstellt, wenn es nicht existiert.
Nun soll das .txt - File das variable Datum des Datensatzes tragen. Das Datum steht in einem DB und ist in die HMI verlinkt (SmartTags("DB_TP900_Daten_Speichern_Datum")).
Wie könnte ich den Smarttag in den Dateinamen (path="\\NAS-FGS\Produktionsdatenspeicherung\Ergebnisdaten.txt") einfügen, damit das variabel an- bzw. abgelegt wird?
Des weiteren möchte ich die Rückmeldung abfragen, ob die Daten erfolgreich abgelegt wurden. Gibt es im VB-Skript eine Möglichkeit das abzufragen?
Ich benutze ein TP900 Comfort panel und arbeite mit TIA WinCC Advanced V14 SP1.
Vielleicht kennt sich jemand damit aus .
Hier der VB-script Code, der bisher läuft:
'Tip:
' 1. Use the <CTRL+SPACE> or <CTRL+I> shortcut to open a list of all objects and functions
' 2. Write the code using the HMI Runtime object.
' Example: HmiRuntime.Screens("Screen_1").
' 3. Use the <CTRL+J> shortcut to create an object reference.
'Write the code as of this position:
Dim trigger
Dim Datum
Dim path
Dim delimeter
Dim fo
Dim mode
Datum="04.11.2019"
'path="\\NAS-FGS\Produktionsdaten\Ergebnisdaten.txt"
'path="\\NAS-FGS\data\Ergebnisdaten.txt"
path="\\NAS-FGS\Produktionsdatenspeicherung\Ergebnisdaten.txt"
delimeter=";"
mode=8
Set fo= CreateObject("FileCtl.File")
fo.open path,mode
If SmartTags("DB_TP900_Daten_Speichern_TriggerSchreiben") = True Then
If fo.LOF = 0 Then
fo.LinePrint(" Datum //Ignore// Zeit " & delimeter & " Kennnummer " & delimeter & " IO/NIO " & delimeter & " DMC Links " & delimeter & " DMC Rechts " & delimeter ) 'make the header on txt file
End If
fo.LinePrint(SmartTags("DB_TP900_Daten_Speichern_Datum") & " " & SmartTags("DB_TP900_Daten_Speichern_Uhrzeit") & " " & delimeter & " " & DB_TP900_Daten_Speichern_KennNummer & delimeter & " " & DB_TP900_Daten_Speichern_IO & " " & delimeter & " " & DB_TP900_Daten_Speichern_DMC_LI & delimeter & " " & DB_TP900_Daten_Speichern_DMC_RE & delimeter) 'make the data on txt file
fo.Close
End If
Set fo = Nothing
Ich soll gerade ein Bestandsprojekt erweitern. Momentan werden Produktionsdaten in einem .txt - File abgelegt. Das File heißt "Ergebnisdaten" und wird erstellt, wenn es nicht existiert.
Nun soll das .txt - File das variable Datum des Datensatzes tragen. Das Datum steht in einem DB und ist in die HMI verlinkt (SmartTags("DB_TP900_Daten_Speichern_Datum")).
Wie könnte ich den Smarttag in den Dateinamen (path="\\NAS-FGS\Produktionsdatenspeicherung\Ergebnisdaten.txt") einfügen, damit das variabel an- bzw. abgelegt wird?
Des weiteren möchte ich die Rückmeldung abfragen, ob die Daten erfolgreich abgelegt wurden. Gibt es im VB-Skript eine Möglichkeit das abzufragen?
Ich benutze ein TP900 Comfort panel und arbeite mit TIA WinCC Advanced V14 SP1.
Vielleicht kennt sich jemand damit aus .
Hier der VB-script Code, der bisher läuft:
'Tip:
' 1. Use the <CTRL+SPACE> or <CTRL+I> shortcut to open a list of all objects and functions
' 2. Write the code using the HMI Runtime object.
' Example: HmiRuntime.Screens("Screen_1").
' 3. Use the <CTRL+J> shortcut to create an object reference.
'Write the code as of this position:
Dim trigger
Dim Datum
Dim path
Dim delimeter
Dim fo
Dim mode
Datum="04.11.2019"
'path="\\NAS-FGS\Produktionsdaten\Ergebnisdaten.txt"
'path="\\NAS-FGS\data\Ergebnisdaten.txt"
path="\\NAS-FGS\Produktionsdatenspeicherung\Ergebnisdaten.txt"
delimeter=";"
mode=8
Set fo= CreateObject("FileCtl.File")
fo.open path,mode
If SmartTags("DB_TP900_Daten_Speichern_TriggerSchreiben") = True Then
If fo.LOF = 0 Then
fo.LinePrint(" Datum //Ignore// Zeit " & delimeter & " Kennnummer " & delimeter & " IO/NIO " & delimeter & " DMC Links " & delimeter & " DMC Rechts " & delimeter ) 'make the header on txt file
End If
fo.LinePrint(SmartTags("DB_TP900_Daten_Speichern_Datum") & " " & SmartTags("DB_TP900_Daten_Speichern_Uhrzeit") & " " & delimeter & " " & DB_TP900_Daten_Speichern_KennNummer & delimeter & " " & DB_TP900_Daten_Speichern_IO & " " & delimeter & " " & DB_TP900_Daten_Speichern_DMC_LI & delimeter & " " & DB_TP900_Daten_Speichern_DMC_RE & delimeter) 'make the data on txt file
fo.Close
End If
Set fo = Nothing