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

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 18

Thema: TIA WINCC Skript Write to File....in eine bestimmte Zelle schreiben ?

  1. #1
    Registriert seit
    23.06.2008
    Ort
    Uetersen
    Beiträge
    10
    Danke
    4
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo alle miteinander

    Mein Ziel ist es Werte, bzw. Daten in einer Datei zu sichern. (Softkey)
    Die Datei (wunsch .xls) sollte dann über den PC gedruckt werden.
    ... bis dahin kein eigentlich kein Problem.....

    Aber:

    Ich stelle mir das so vor, das schon eine Vorlagen-Datei besteht.. z.B mit Logo
    und festen Texten...
    Datum:
    Materialnummer:
    Druck:
    Benutzer:
    usw. usw. usw.

    Das Script öffnet diese Vorlage -> trägt die Variablen in meine gewünschte Zelle (hinter dem festen Text)->
    und speichert diese Datei dann mit dem Dateinamen z.B. Materialnummer+Datum+Uhrzeit.xls

    ich habe mir gerade von Siemes das BeispielProgramm ReadWrite_to_File angesehen....
    ... leider verstehe ich von dieser Programmierung nur Bushaltestelle.....

    Kann mir vielleicht jemand sagen ob diese Funktion so überhaupt möglich ist ??

    Vielen Dank....

    Gruß Stephan
    Zitieren Zitieren TIA WINCC Skript Write to File....in eine bestimmte Zelle schreiben ?  

  2. #2
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.207
    Danke
    927
    Erhielt 3.293 Danke für 2.662 Beiträge

    Standard

    FAQ: Protool/WinCCflex Daten lesen / schreiben mit VB-Script

    Hast Du auf Deinem unbekannten Gerät EXCEL installiert?

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  3. #3
    Stephan_GPT ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    23.06.2008
    Ort
    Uetersen
    Beiträge
    10
    Danke
    4
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo Harald,

    Noch nicht ... Aber wenn es funktioniert dann ja ....

    Soll ein IPc werden mir WinCC Runtime ...

    Gruß Stephan

  4. #4
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.207
    Danke
    927
    Erhielt 3.293 Danke für 2.662 Beiträge

    Standard

    Ja, Dein Vorhaben ist möglich. Beispiel für schreiben in EXCEL-Datei ist in der FAQ.

    Allerdings würde ich persönlich das nicht machen, EXCEL hat für mich viel zu viel Absturz-Potential. Ich gebe mich mit den Lesen/Schreiben von Textdateien (z.B. csv) zufrieden.

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  5. Folgender Benutzer sagt Danke zu PN/DP für den nützlichen Beitrag:

    Stephan_GPT (15.01.2016)

  6. #5
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.728
    Danke
    398
    Erhielt 2.406 Danke für 2.002 Beiträge

    Standard

    Es gibt dabei auch noch eine weitere Problematik : das Ganze ist nicht besonders schnell ...
    Das ist natürlich kein Problem, wenn sowieso nur jede Minute (oder noch langsamer) etwas geschrieben werden soll - ist es aber deutlich schneller dann solltest du an Stelle dessen lieber mit einer CSV-Datei liebäugeln. Die ist auch Excel-lesbar - aber sehr viel schneller gelesen/geschrieben. Lediglich das Adressieren einer "Zelle" in der der datei-Mitte ist etwas "tricky".

    Gruß
    Larry

  7. Folgender Benutzer sagt Danke zu Larry Laffer für den nützlichen Beitrag:

    Stephan_GPT (15.01.2016)

  8. #6
    Registriert seit
    09.09.2004
    Beiträge
    71
    Danke
    0
    Erhielt 17 Danke für 13 Beiträge

    Standard

    Wenn es CSV werden sollte, was ich persönlich auch für besser und einfacher halte, dann stellen sich eigendlich nur zwei Fragen:
    Soll in der Vorlagendatei noch etwas anderes drin stehen als jeweils der feste Text?
    Oder wird von anderer Stelle in die Datei schon etwas dynamisches reingeschrieben?

    Wenn nein, würde ich die Datei immer komplett aus dem Skript heraus erstellen. Denn es ist beim schreiben von Textdateien nicht möglich eine bestimmte Zeile zu adressieren. Man müsste am Anfang anfangen und zeilenweise die Zeilen bis zur gewünschten überspingen. Weiterhin müsste man die Zeilen in die geschrieben werden soll auch erst lesen und dann den neuen Text hinzufügen. Was auch wieder dauert.

    Schreibst du die Datei komplett neu aus dem Sript heraus, gibt es nur Schreibbefehle und die Logik drumherum ist auch einfacher weil nicht erst die Zeilen gesucht und gelesen werden müssen.

    Einziger Nachteil, wenn an den festen Texten etwas geändert werden soll, muss man das Skript anfassen. Es reicht nicht aus einfach die Vorlagen Datei zu ändern.

    Weiterer Nachteil von Textdatei ggü. EXCEL wäre dann eigentlich nur noch das angesprochene Logo und Formatierungen wie Tabellenränder, Hintergrundfarben, Fettschrift usw. Das bekommst über eine Textdatei nicht hin.


    Gruß, Nico

  9. Folgender Benutzer sagt Danke zu nicS für den nützlichen Beitrag:

    Stephan_GPT (15.01.2016)

  10. #7
    Stephan_GPT ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    23.06.2008
    Ort
    Uetersen
    Beiträge
    10
    Danke
    4
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo Nico,

    Vielen Dank für die Informationen.

    Hier mal eine kleine Funktionsbeschreibung von dem was passieren soll:

    Ein Werkstück soll geprüft werden.
    Der Bediener trägt seinen Namen ein.
    Die Bezeichnung des Prüflings.
    Softkey Start Prüfung (Ca. 10 Start-Werte werden in ein DB geschrieben)
    Es wird Druck auf das Werkstück gegeben...
    ... Druck erreicht...
    Die 10 Werte werden erneut geschrieben.....(End-Werte)
    Der Bediener beendet den Prüfvorgang....

    Per Softkey soll jetzt von dem Bediener die Datei erstellt werden !

    .. ich wäre auch mit einer .csv zufrieden !

    Ja ich würde gerne Logos in den Vorlagen haben.
    (bzw. Bilder von den verschiedenen Prüflingen)
    Ich würde mir für jeden Prüfling (ca. 8 Stck) eine Vorlage erstellen wollen.
    Und je nach Prüfling die Vorlage aufrufen.

    Eigentlich habe ich genug Zeit um die csv. oder .xls zu beschreiben...
    ... dieser Vorgang erfolgt so ca. 3x am Tag.

    Frage: warum muss ich die Zelle erst lesen ?
    ... also kann ich nicht z.B sagen "schreibe in Zelle D1" ... das geht also nicht

    Gruß Stephan

  11. #8
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.728
    Danke
    398
    Erhielt 2.406 Danke für 2.002 Beiträge

    Standard

    @Stephan:
    Wenn du es so, wie beschrieben, machen möchtest, dann spricht aus meiner Sicht gar nichts dagegen, direkt mit Excel-Files zu arbeiten.
    Dort würdest du dann auch direkt die Zelle ansprechen (die auch schon formatiert sein kann) und den Wert da rein schreiben. Du kannst hier auch mit einer Vorlagen-Datei arbeiten, die du dann unter einem neuen Namen abspeicherst. Schau dir dazu einfach mal das Beispiel von mir in der von Harald verlinkten FAQ an ...

    Gruß
    Larry

  12. Folgender Benutzer sagt Danke zu Larry Laffer für den nützlichen Beitrag:

    Stephan_GPT (15.01.2016)

  13. #9
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.207
    Danke
    927
    Erhielt 3.293 Danke für 2.662 Beiträge

    Standard

    Du könntest die Datei auch aus einer Vorlage-Datei mit Platzhaltern + Daten mixen. Wie bei Etikettendruckern oder einer Serienbrief-Druckfunktion. Um eine formatierte Protokoll-Datei zu erstellen muß man nicht die Datei im EXCEL-Binärformat erstellen (dazu braucht man EXCEL), man kann auch Textdateien mit Formatsteueranweisungen erstellen z.B. rtf oder html oder xml. Solche Dateien lassen sich ohne Hilfsprogramme einfach per VBS-Skript erzeugen. Bilder/Logos müssen nicht unbedingt in der Datei eingebettet sein, sie können auch nur verlinkt sein.


    In Textdateien, wozu auch csv-Dateien gehören, kann man nicht "Zellen" adressieren. Will man einen Wert ändern, dann muß man die Datei bis zu der zu ändernden Stelle kopieren, den neuen Wert einfügen und den Rest der Datei kopieren.

    Beispiel: "Nettogewicht: 98,3 kg" ändern in "Nettogewicht: 103,7 kg"
    - "Nettogewicht: " aus Originaldatei oder Vorlagedatei einlesen und in Ausgabedatei schreiben
    - "98,3" aus Originaldatei oder Vorlagedatei einlesen
    - "103,7" in Ausgabedatei schreiben
    - " kg" aus Originaldatei oder Vorlagedatei einlesen und in Ausgabedatei schreiben

    Prinzip Vorlagedatei: Die Zahlenwerte durch besonders markierte Platzhalter ersetzen, z.B. "Nettogewicht <GN> kg" oder "Nettogewicht <GN%4.1f> kg". Beim Erstellen der Ausgabedatei die Platzhalter der Vorlage durch aktuelle Datenwerte ersetzen.

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  14. #10
    Stephan_GPT ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    23.06.2008
    Ort
    Uetersen
    Beiträge
    10
    Danke
    4
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Moin moin,

    kurzer Status Bericht:

    Ich habe am WE genau das hinbekommen, was ich mir vorgestellt habe !
    Vorlage öffnen... gezielt Zellen beschreiben... Datei unter gewünschten Namen(+Datum+Zeit).xls speichern .... Datei schließen !

    Vielen Dank an alle die mir geholfen haben !!!!!

    Noch eine abschließende Frage......

    besteht die Möglichkeit die Datei(.xls) vor dem Schließen noch mal schnell an
    den Standard Drucker zu senden ????

    Gruß Stephan

Ähnliche Themen

  1. WinCC (Tia) VB Skript zum String trennen
    Von Lucius2 im Forum HMI
    Antworten: 4
    Letzter Beitrag: 24.07.2015, 11:41
  2. HEX Editor mit Gramatik (zur Fileanalyse) + TIA-File Format Grammar File
    Von Jochen Kühner im Forum Hochsprachen - OPC
    Antworten: 2
    Letzter Beitrag: 14.04.2015, 09:26
  3. Antworten: 2
    Letzter Beitrag: 12.03.2015, 22:14
  4. Antworten: 18
    Letzter Beitrag: 14.04.2014, 15:31
  5. Antworten: 1
    Letzter Beitrag: 26.03.2014, 11:57

Lesezeichen

Berechtigungen

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