Quantcast
Channel: SPS-Forum - Automatisierung und Elektrotechnik
Viewing all articles
Browse latest Browse all 49833

WinCC Variablen DATE und TIME in .CSV korrekt darstellen

$
0
0
Hallo,

ich sollte Variablen aus einem DB mit den Formaten DATE und TIME in eine Datei exportieren.
Habe ein Beispielskript genommen von Siemens und das funktioniert auch so, aber die DATE und TIME Variablen werden als Zahl in der Datei angezeigt.
Muss ich diese erst in einen String wandeln, und wie kann ich das machen?

arrTags(1) = "StaDataExport_AnaA.actTm0" : diese sind Typ TIME
arrTags(2) = "StaDataExport_AnaA.actDt0" : diese sind Typ DATE

Code:

Option Explicit
Function action

'Das Skript liest die im Datenbaustein liegenden Prozessdaten ein
'und gibt sie formatiert In einer CSV Datei aus

'**************************************************************************************************************
'Variablen deklarieren
Dim fso
Dim objFile, objTag 
Dim objFileName
Dim i,j, typ, laenge
Dim strPathFolder, strSampleLine, strFileName, strTimeDate, strLine
Dim dtTimeDate, dtYear, dtMonth, dtDay, dtHour, dtMin, dtSec
Dim arrTags(99)
Dim arrSTags(99)
Dim tagName, tagValue, tagFilename

'******************************************************************************************************
If HMIRuntime.Tags("bTest").Read = 1 Then
    arrTags(0) = "StaDataExport_AnaA.actSta0"
    arrTags(1) = "StaDataExport_AnaA.actTm0"
    arrTags(2) = "StaDataExport_AnaA.actDt0"
    arrTags(3) = "StaDataExport_AnaA.actSta1"
    arrTags(4) = "StaDataExport_AnaA.actTm1"
    arrTags(5) = "StaDataExport_AnaA.actDt1"
    arrTags(6) = "StaDataExport_AnaA.actSta2"
    arrTags(7) = "StaDataExport_AnaA.actTm2"
    arrTags(8) = "StaDataExport_AnaA.actDt2"
    arrTags(9) = "StaDataExport_AnaA.actSta3"
    arrTags(10) = "StaDataExport_AnaA.actTm3"
    arrTags(11) = "StaDataExport_AnaA.actDt3"
    arrTags(12) = "StaDataExport_AnaA.actSta4"
    arrTags(13) = "StaDataExport_AnaA.actTm4"
    arrTags(14) = "StaDataExport_AnaA.actDt4"
    arrTags(15) = "StaDataExport_AnaA.actSta5"
    arrTags(16) = "StaDataExport_AnaA.actTm5"
    arrTags(17) = "StaDataExport_AnaA.actDt5"
    arrTags(18) = "StaDataExport_AnaA.actSta6"
    arrTags(19) = "StaDataExport_AnaA.actTm6"
    arrTags(20) = "StaDataExport_AnaA.actDt6"
    arrTags(21) = "StaDataExport_AnaA.actSta7"
    arrTags(22) = "StaDataExport_AnaA.actTm7"
    arrTags(23) = "StaDataExport_AnaA.actDt7"
    arrTags(24) = "StaDataExport_AnaA.actSta8"
    arrTags(25) = "StaDataExport_AnaA.actTm8"
    arrTags(26) = "StaDataExport_AnaA.actDt8"
    arrTags(27) = "StaDataExport_AnaA.actSta9"
    arrTags(28) = "StaDataExport_AnaA.actTm9"
    arrTags(29) = "StaDataExport_AnaA.actDt9"
    arrTags(30) = "StaDataExport_AnaA.actSta10"
    arrTags(31) = "StaDataExport_AnaA.actTm10"
    arrTags(32) = "StaDataExport_AnaA.actDt10"
    arrTags(33) = "StaDataExport_AnaA.actSta11"
    arrTags(34) = "StaDataExport_AnaA.actTm11"
    arrTags(35) = "StaDataExport_AnaA.actDt11"
    arrTags(36) = "StaDataExport_AnaA.CONC11"
    arrTags(37) = "StaDataExport_AnaA.CONC12"
    arrTags(38) = "StaDataExport_AnaA.CONC13"
    arrTags(39) = "StaDataExport_AnaA.CONC14"
    arrTags(40) = "StaDataExport_AnaA.CONC15"
    arrTags(41) = "StaDataExport_AnaA.CONC16"
    arrTags(42) = "StaDataExport_AnaA.CONC17"
    arrTags(43) = "StaDataExport_AnaA.CONC18"
    arrTags(44) = "StaDataExport_AnaA.CONC21"
    arrTags(45) = "StaDataExport_AnaA.CONC22"
    arrTags(46) = "StaDataExport_AnaA.CONC23"
    arrTags(47) = "StaDataExport_AnaA.CONC24"
    arrTags(48) = "StaDataExport_AnaA.CONC25"
    arrTags(49) = "StaDataExport_AnaA.CONC26"
    arrTags(50) = "StaDataExport_AnaA.CONC27"
    arrTags(51) = "StaDataExport_AnaA.CONC28"
   
    strPathFolder = "C:\Ana_Data\"
   
    dtTimeDate = Now
    strTimeDate = Year(dtTimeDate) & Right("0" & Month(dtTimeDate),2) & Right("0" & Day(dtTimeDate),2) _
                    & Right("0" & Hour(dtTimeDate),2) & Right("0" & Minute(dtTimeDate),2) _
                    & Right("0" & Second(dtTimeDate),2)
       
    Set tagFilename = HMIRuntime.Tags("SampleLine")
    strSampleLine = tagFilename.Read
   
    Set fso = CreateObject("Scripting.FileSystemObject")
   
    'Verzeichnis erzeugen falls noch nicht vorhanden
    If fso.FolderExists(strPathFolder) = False Then
        fso.CreateFolder(strPathFolder)   
    End If
    'for control
    'HMIRuntime.Trace("VBS_control: " & strPathFolder & vbCrLf)
   
    strFileName = strPathFolder & "_" & strTimeDate & "_" & strSampleLine & ".csv"
    'for control
    HMIRuntime.Trace("VBS_control: " & strFileName & vbCrLf)
   
    Set objFile = fso.CreateTextFile(strFileName,True)
   
    For i=0 To 51
        Set objTag = HMIRuntime.Tags(arrTags(i))
        strLine = arrTags(i) & ";" & objTag.read
        objFile.WriteLine strLine

        'for control
        'HMIRuntime.Trace(strLine & vbCrLf)
    Next
    objFile.Close
   
    HMIRuntime.Tags("bTest").Write(0)
   
End If


Viewing all articles
Browse latest Browse all 49833


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>