Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 23

Thema: WinCC flex Daten in Runtime in csv-datei

  1. #1
    Registriert seit
    29.05.2013
    Beiträge
    353
    Danke
    74
    Erhielt 3 Danke für 3 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ich drücke auf eine Startfläche, in der ein Skript aufgerufen wird, wo eine csv-Datei gelesen wird und in meine EA-Felder die jeweiligen Texte aus der csv-Datei abgespeichert werden.

    Jetzt möchte ich den umgekehrten Weg gehen, also in der Runtime auf ein EA-Feld klicken und dort einen Text eingeben, wodurch dann dieser Text in die jeweilige Spalte in der csv-Datei abgeändert wird.
    Ich programmiere momentan mit VBScript und WinCC flex. Hat jemand das schon mal gemacht?

    Gruß
    Zitieren Zitieren WinCC flex Daten in Runtime in csv-datei  

  2. #2
    Registriert seit
    06.10.2004
    Ort
    Kopenhagen.
    Beiträge
    4.626
    Danke
    377
    Erhielt 801 Danke für 642 Beiträge

    Standard

    Hast du schon Volkers FAQ gelesen ?

    Muss aber kommentieren, das du kannst nur eine komplette Zeile in den CSV schreiben, nicht nur ein Wert innerhalb von ein bestehende Zeile.
    Entweder wird den CSV überschrieben, oder der Zeile wird angehängt nach die Zeilen die schon in den CSV gibt.

    In Volkers FAQ ist beschrieben wie man einzelne Zellen in ein Excel Datei manipuliert.
    Jesper M. Pedersen

  3. Folgender Benutzer sagt Danke zu JesperMP für den nützlichen Beitrag:

    kuti (12.03.2014)

  4. #3
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.726
    Danke
    398
    Erhielt 2.401 Danke für 2.001 Beiträge

    Standard

    ... deine Ereignis für das Speichern-Script (wie immer du das ausführst) wäre dann z.B. die Wertänderung der Variablen in dem Eingabefeld.

    Gruß
    Larry

  5. #4
    Registriert seit
    20.06.2003
    Ort
    Sauerland.NRW.Deutschland
    Beiträge
    4.850
    Danke
    78
    Erhielt 800 Danke für 543 Beiträge

    Standard

    Wie Jesper bereits erwähnt hat.
    Wenn du mehrere Zeilen/Variablen in der csv speicherst mußt du die csv KOMPLETT neu schreiben mit allen Zeilen.
    .
    mfg Volker .......... .. alles wird gut ..

    =>Meine Homepage .. direkt zum Download

    Meine Definition von TIA: Total Inakzeptable Applikation

  6. #5
    kuti ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    29.05.2013
    Beiträge
    353
    Danke
    74
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Hallo,

    war ein paar Tage weg. Ich habe mal ein Skript hier in diesem Forum kopiert. Es werden zwar Daten in in die csv geschrieben, aber immer wenn neue Daten geschrieben werden, so werden dieses untereinander geschrieben. Besser wäre es natürlich, wenn die den gewünschten Platz beschreiben, die ich möchte, also z.B Spalte x und Zeile y. Kann mir da jemand weiterhelfen? Hier ist das Skript:
    Dim fso, f, ts, Dateiname, VZ_NAME, DT_STRING, DT_SPLIT, i



    Set fso = CreateObject ("Scripting.FileSystemObject")




    ' VERZEICHNIS
    VZ_NAME = "C:\Users\Desktop\" 'SmartTags("DATEIABLAGE")

    ' Verzeichnis erzeugen (Objekt erzeugen)
    Set fso = CreateObject("Scripting.FileSystemObject")
    'Prüfung ob das Verzeichnis existiert
    If Not fso.FolderExists(VZ_NAME) Then ' Wenn es nicht existiert, dann anlegen
    fso.CreateFolder (VZ_NAME)
    Else 'Fehlermeldung ausgeben
    End If

    ' Schreiben zu Internem Medium. Vorwahl über Bildschirmgrafik.
    Dateiname = VZ_NAME & "sasqs.csv"
    ' CSV-DATEI ANLEGEN UND SPALTENÜBERSCHRIFTEN EINTRAGEN
    If Not fso.FileExists(Dateiname) Then
    fso.CreateTextFile (Dateiname)
    Set f=fso.GetFile(Dateiname)
    Set ts=f.OpenAsTextStream(8,-2)
    ts.WriteLine ("DATUM UND UHRZEIT; REZEPTUR_ID; WERT 0 ; WERT 1 ; WERT 2 ; WERT 3 ; WERT 4 ; WERT 5 ; WERT 6 ; WERT 7 ; WERT 8 ; WERT 9 ; WERT 10 ; WERT 11 ; WERT 12 ; WERT 13 ; WERT 14 ; WERT 15 ")
    ts.Close
    End If
    ' VARIABLEN IN CSV-DATEI SCHREIBEN
    Set f=fso.GetFile(Dateiname)
    Set ts=f.OpenAsTextStream(8,-2)
    ts.WriteLine ( SmartTags("Variable_1") & ";" & SmartTags("Variable_2") & ";" & SmartTags("Variable_3") )
    ts.Close



    Set ts = Nothing
    Set f = Nothing
    Set fso = Nothing
    Set Dateiname = Nothing

    Gruß

  7. #6
    Registriert seit
    06.10.2004
    Ort
    Kopenhagen.
    Beiträge
    4.626
    Danke
    377
    Erhielt 801 Danke für 642 Beiträge

    Standard

    Zitat Zitat von kuti Beitrag anzeigen
    Besser wäre es natürlich, wenn die den gewünschten Platz beschreiben, die ich möchte, also z.B Spalte x und Zeile y. Kann mir da jemand weiterhelfen?
    Warum ist das besser ?
    Was willst du erzielen damit ?
    Egal, wie schon erklärt das kannst du nicht, zumindest nicht mit CSV Dateien.

    Es gibt auch den Möglichkeit Excel-Dateien zu manipulieren, aber das öffnet viele andere Probleme.
    CSV ist einfacher als Excel, und mMn. dann ist Einfacher=Besser.
    Jesper M. Pedersen

  8. #7
    kuti ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    29.05.2013
    Beiträge
    353
    Danke
    74
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Wie gesagt lese ich eine csv-Datei mit mehreren Zeilen und Spalten, wo Texte stehen, aus. Diese Texte werden dann in der Runtime in den EA-Feldern angezeigt. Nun möchte ich manchemal ein Text ändern. Wenn ich also diesen Text ändere, so muss das auch in der csv-datei abgespeichert werden.

    Sowas kann ich mit csv-dateien nicht machen?

  9. #8
    Registriert seit
    06.10.2004
    Ort
    Kopenhagen.
    Beiträge
    4.626
    Danke
    377
    Erhielt 801 Danke für 642 Beiträge

    Standard

    Du kannst die bestehende Zeilen in ein ein bestehende CSV nicht manipulieren, ausser:
    Du kannst neue Zeilen anhängen nach die bestehende Zeilen, oder..
    Du kannst den CSV komplett neu schreiben (sprich: überschreiben), mit alle Zeilen und Werte usw.
    Jesper M. Pedersen

  10. #9
    kuti ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    29.05.2013
    Beiträge
    353
    Danke
    74
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Zitat Zitat von JesperMP Beitrag anzeigen
    Du kannst den CSV komplett neu schreiben (sprich: überschreiben), mit alle Zeilen und Werte usw.
    Kann man nicht die csv lesen, dann die gezielte Zelle ändern, dann noch mal lesen?

  11. #10
    Registriert seit
    06.10.2004
    Ort
    Kopenhagen.
    Beiträge
    4.626
    Danke
    377
    Erhielt 801 Danke für 642 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ich verstehe nicht was du mit den CSV Datei willst.
    In den allererste Kolonne hast du DATUM_UND_UHRZEIT.
    Ist es ein art Log ?
    Dann kannst du ja nicht nachträglich Werte ändern.

    Oder ist es ein Art Rezepturverwaltung ?
    Jesper M. Pedersen

Ähnliche Themen

  1. CSV-Datei in WinCC flex importieren
    Von Aulicus im Forum HMI
    Antworten: 40
    Letzter Beitrag: 20.03.2014, 12:34
  2. WINCC flex - Daten in csv-Datei schreiben
    Von dirknico im Forum HMI
    Antworten: 8
    Letzter Beitrag: 02.12.2013, 11:39
  3. WinCC RT Daten in csv Datei exportieren
    Von themasterchris im Forum HMI
    Antworten: 2
    Letzter Beitrag: 10.08.2011, 18:00
  4. Antworten: 3
    Letzter Beitrag: 13.03.2011, 11:22
  5. Antworten: 6
    Letzter Beitrag: 04.01.2007, 15:27

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •