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

Seite 3 von 4 ErsteErste 1234 LetzteLetzte
Ergebnis 21 bis 30 von 33

Thema: WINCC flexible Archiv / Tabelle

  1. #21
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.793
    Danke
    398
    Erhielt 2.417 Danke für 2.013 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,
    wenn du die Datei von einem anderen Programm in Beschlag hast, so erhälst du normalerweise nur Lesezugriffe darauf - reinschreiben ist also nicht.

    In der FAQ gibt es ein schönes Beispiel (von mir ) zu dem Thema "Daten -> Excel". Das hat allerdings einen Haken. Die Zugriffe auf Excel sind ganz schön langwierig. Willst du also öfter in schneller Folge Daten schreiben, so würde ich dir davon abraten.

    Ob das beim Schreiben in eine Datenbank wesentlich besser ist will ich mal dahingestellt sein lassen. Dazu könnte aber JesperMP (z.B.) sicherlich mehr dazu sagen.

    Ob eine Datenbank für dich generell die bessere Lösung ist hat m.E. sehr mit der Aufgabe zu tun. Für deine Produktionsdaten-Chargen-Geschichte ist das nach meiner Meinung am Ziel vorbei. Für regelmäßig große Datenmengen ist das schon was Anderes.
    Die Frage, die sich hier stellt ist allerdings :
    Ist es nicht vielleicht sinniger, du schreibst deine aktuellen Daten wie gehabt in eine CSV-Datei - das belastet dann schonmal nicht die Visu über Gebühr - die CSV-Datei importierst du dann bei Bedarf in eine Datenbank (oder sonst wohin).

    Die Daten würde ich generell nicht direkt auf dem Server erzeugen sondern immer lokal und dann diese lieber hin und wieder auf den Server kopieren. Dadurch lößt du dann auch das Problem mit dem "Öffnen von 2 Benutzern".

    Gruß
    LL

  2. #22
    JoHo ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    08.04.2009
    Beiträge
    15
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Also zu allererst muss ich mich mal hier selber loben. Die Daten in HTML anzuzeigen und die HTML Datei auch noch hübsch aussehen zu lassen war ja mal echt kein Problem. Bei dieser Form der Darstellung entfällt ja auch das Problem des gleichzeitigen öffnens bzw. lesens und schreibens. Genial!


    So zurück zu meiner Excel Sache. Von dem Gedanken der Datenbank habe ich mich jetzt erstmal gelöst, da ja meine Ideen auch in Excel gehen und ich da ja jetzt drinhäng.

    Zum Thema öffnen, bearbeiten und mehrere Nutzer gleichzeitig habe ich mir was überlegt. Ich habe 5 Anlagen, die ca. 1-2 mal pro Stunde was schreiben sollen. Deshalb sollte es kein echtes Problem sein, die Daten direkt auf den Server zu schreiben. Für den Fall, dass eine Anlage schreibt und eine andre auch schreiben will setze ich mir einfach ein Bit in der SPS bevor das Dokument geöffnet wird und setze es zurück wenn ich sie schließe. Vor dem Schreiben das Bit abfragen und bei gesetztem Bit ne Sekunde warten und schon bin ich recht fein raus bild ich mir ein.
    Problem bleibt, wenn jemand die Datei von seinem Rechner aus auf dem Server direkt öffnet. Kann ich einem Excel-Dokument auch sagen, dass es von Usern bitte nur lesend geöffnet werden kann???
    Und was noch wichtiger ist und echt ein Problem: Kann ich bei einigen Zellen vorher schon ein Format (z.B. Datum oder Zeit) festlegen???

    Beispiel:
    Bei der ersten Eingabe einer neuen Auftragsnummer in einem Monat soll das Gerät eine neue Datei mit Entsprechendem Namen anlegen. Soweit net schwer. Nur wenn es die Schon anlegt möge das Script auch direkt Überschriften reinknallen. Auch noch kein echtes Thema. Aber im selben Zug direkt einer Spalte sagen, dass da nun ein Datum reinkommt und es bitte nich versucen möge die Zahl als Zahl darzustellen?


    Nächstes Problemchen:
    Das ist jetzt einfach nur nice to have, aber nicht nötig. Ich schreibe mir eine HTML in der ich mit dateimodus 8 ja immer brav ne Zeile anhänge.
    Diese hätte ich aber gern auf 50 Zeilen begrenzt, wobei ich die neueste Zeile immer oben anhänge und die älteste (bei voll) rauslösche. Idee: alles in nem for-loop auslesen, verschieben, einfügen, letzte löschen und gut. Aber gibts da nicht was andres? ich möchte ungern wieder alle Daten anfassen müssen dafür um sie neu zu ordnen.

  3. #23
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.793
    Danke
    398
    Erhielt 2.417 Danke für 2.013 Beiträge

    Standard

    Zitat Zitat von JoHo Beitrag anzeigen
    So zurück zu meiner Excel Sache. ... Zum Thema öffnen, bearbeiten und mehrere Nutzer gleichzeitig habe ich mir was überlegt. Ich habe 5 Anlagen, die ca. 1-2 mal pro Stunde was schreiben sollen. Deshalb sollte es kein echtes Problem sein, die Daten direkt auf den Server zu schreiben. Für den Fall, dass eine Anlage schreibt und eine andre auch schreiben will setze ich mir einfach ein Bit in der SPS bevor das Dokument geöffnet wird und setze es zurück wenn ich sie schließe. Vor dem Schreiben das Bit abfragen und bei gesetztem Bit ne Sekunde warten und schon bin ich recht fein raus bild ich mir ein.
    Problem bleibt, wenn jemand die Datei von seinem Rechner aus auf dem Server direkt öffnet. Kann ich einem Excel-Dokument auch sagen, dass es von Usern bitte nur lesend geöffnet werden kann???
    Also dazu schon jetzt von mir ein ganz herzliches "Viel Spaß" ...
    Die gleiche Datei für mehrere Visu-PC's auf dem Server zu nehmen und die Zugriffe zu synchronisieren wird bestimmt ein Unterfangen mit Anforderungs-Charakter - aber bestimmt ist es machbar.
    Allerdings - was machst du, wenn die Server-Verbindung mal nicht zur Verfügung steht ? Bei uns im Unternehmen kommt das aus unterschiedlichen Gründen schon mal vor ...
    Des weiteren : Für die Dauer der Script-Bearbeitung ist deine Visu möglicherweise für Weiteres (auf jeden Fall aber für weitere Scripts) geblockt. Mach dir auch das bitte klar ...

    Das mit dem "Read-Only-Zugriff" für andere User kann ich mir nicht vorstellen, da es von Excel kommt. Dazu habe ich aber leider keine weiteren Kenntnisse ...

    Zitat Zitat von JoHo Beitrag anzeigen
    Und was noch wichtiger ist und echt ein Problem: Kann ich bei einigen Zellen vorher schon ein Format (z.B. Datum oder Zeit) festlegen???

    Beispiel:
    Bei der ersten Eingabe einer neuen Auftragsnummer in einem Monat soll das Gerät eine neue Datei mit Entsprechendem Namen anlegen. Soweit net schwer. Nur wenn es die Schon anlegt möge das Script auch direkt Überschriften reinknallen. Auch noch kein echtes Thema. Aber im selben Zug direkt einer Spalte sagen, dass da nun ein Datum reinkommt und es bitte nich versucen möge die Zahl als Zahl darzustellen?
    Für ein öhnlich geartetes Unterfangen hatte ich mit einemm Vorlagen-Sheet gearbeitet. Ist die gwünschte Ziel-Datei noch nicht vorhanden, so lädt (und bearbeitet) die Visu die Vorlage und speichert diese unter einem neuen Namen ab. Vorteil hierbei : du kannst sicherlich die Formatierungen auch im Script und handisch machen - aber blickt da hinterher noch einer durch ?

    Zitat Zitat von JoHo Beitrag anzeigen
    Nächstes Problemchen:
    Das ist jetzt einfach nur nice to have, aber nicht nötig. Ich schreibe mir eine HTML in der ich mit dateimodus 8 ja immer brav ne Zeile anhänge.
    Diese hätte ich aber gern auf 50 Zeilen begrenzt, wobei ich die neueste Zeile immer oben anhänge und die älteste (bei voll) rauslösche. Idee: alles in nem for-loop auslesen, verschieben, einfügen, letzte löschen und gut. Aber gibts da nicht was andres? ich möchte ungern wieder alle Daten anfassen müssen dafür um sie neu zu ordnen.
    Da wirst du wohl nicht darum herum kommen, dass du erst alle Daten lädst und dann den veränderten Stand abspeicherst. Dafür gibt es keine interne Funktion (oder so). Das sehe ich aber auch nicht als problematsich an, denn das ist sehr viel einfacher zu programmieren, wie deine Synchronisierung ...

    Gruß
    LL

  4. #24
    JoHo ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    08.04.2009
    Beiträge
    15
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Augenscheinlich hast du einen Punkt von mir icht zu 100% so verstanden wie ich das gemeint habe......
    Also die Visu PCs sollen nicht alle wild auf meine Tabelle zugreifen. Die Tabelle ist mein "Datenendlager".
    Nix lesen und nix weiteres. Einfach nur öffnen, Zeile schreiben und wieder freigeben. ENDE! ich unterstelle einfach mal, dass das nicht zu lange aufhalten sollte und auch kein echtes Problem mit der synchronisierung darstellt, oder lieg ich da ganz falsch?

  5. #25
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.793
    Danke
    398
    Erhielt 2.417 Danke für 2.013 Beiträge

    Standard

    ... ich denke, ich habe genau verstanden was du machen willst ...

  6. #26
    JoHo ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    08.04.2009
    Beiträge
    15
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Also Zellen vorformatieren is jetzt auch kein Ding. Man lernt ja nie aus!

    Habs mir einfach gemacht und in Excel einfach mal ein Makro aufgezeichnet und von Hand die Zellen formatiert. Makro anzeigen lassen und siehe da....Die Befehle gehen auch in meinem Script
    Code:
    Set wsExcel = wbExcel.Worksheets("Tabelle1")
      
     'Zellen formatieren
     wsExcel.Columns("G:G").NumberFormat = "d/m/yyyy;@"
    Nur mal um die stumpfheit dieses Beispiels zu dokumentieren...

  7. #27
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.793
    Danke
    398
    Erhielt 2.417 Danke für 2.013 Beiträge

    Standard

    Zitat Zitat von Larry Laffer Beitrag anzeigen
    Für ein ähnlich geartetes Unterfangen hatte ich mit einemm Vorlagen-Sheet gearbeitet. Ist die gewünschte Ziel-Datei noch nicht vorhanden, so lädt (und bearbeitet) die Visu die Vorlage und speichert diese unter einem neuen Namen ab. Vorteil hierbei : du kannst sicherlich die Formatierungen auch im Script und handisch machen - aber blickt da hinterher noch einer durch ?
    Hatte ich etwas davon gesagt, dass es nicht geht ?
    Ich denke, dass du alle Excel-Eigenschaften im Script umsetzen kannst.
    Heute muss eine Spalte im Date-Format sein. Morgen soll sie eine Spaltenbreite von 15 haben und der ganze Block einen Fett umrahmten Header, der hellblau ist mit anderer Schriftgröße und und und ...
    Es sollte nur ein Vorschlag sein und jeder soll und darf natürlich auch seine eigenen Erfahrungen machen. Also los ...

    Gruß
    LL

  8. #28
    Registriert seit
    10.06.2010
    Beiträge
    66
    Danke
    10
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Zitat Zitat von Mondmann Beitrag anzeigen
    Bei Win flex kannst du Variablen archivieren und anschließend über ein VBS script diese in eine Tabelle schreiben, sortieren, etc.
    Ich schreibe Variablen meistens in eine SQL Datenbank (über eine Runtime) und Werte die dann über Excel aus.
    Hallo Mondi,

    könntest Du vielleicht mal posten wie Du das machst? Möchte soetwas auch gerne umsetzen, da man mit dem originalen Archiv am PC ja gar nichts anfangen kann.

    Würde mich freuen

    Gruss Hausen

  9. #29
    Registriert seit
    17.09.2006
    Beiträge
    67
    Danke
    12
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Hi Hausen,

    wo müssen wir denn anfangen ? Was möchtest du gerne realisiert haben (Konzept?).

    Mfg

    Der Mondmann
    Technik entwickelt sich immer vom Primitiven
    über das Komplizierte zum Einfachen.

    Antoine de Saint-Exupéry

  10. #30
    Registriert seit
    10.06.2010
    Beiträge
    66
    Danke
    10
    Erhielt 3 Danke für 3 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Mondmann,

    also ich nutze zur Zeit die normale Archivierung von WinCC Flexible um Historische Trends auf einem MP377 anzuzeigen. Da man diese erzeugten Dateien jedoch außerhalb vom MP nur sehr schlecht auswerten bzw. benutzen kann, suche ich eine andere Lösung.

    Ich habe bereits schon einen Script hier im Forum gefunden der die zur archivierenden Werte in eine "normale" gut lesbare csv-Datei schreibt.

    1.) Was ich jedoch etwas negativ daran finde ist die doppelte Datenarchivierung. Einmal die normale interne WinCC Flexible um die Historischen Trends anzuzeigen und die zweite gut lesbare Form.

    2.) Ich denke das die performance da doch bestimmt gut leidet wenn ich zusätzlich noch ca. 20-30 Werte je sekunde in eine zweite Datei schreibe.

    Was ich mir vorstellen würde ist, das ich z.B. ein oder zweimal am Tag die vorhandenen Archivdateien auslese und die Werte in eine csv-Datei schreibe die dann besser auswertbar ist.

    Geht das überhaupt? Und wie müsste ich da ansetzten.

    Herzlichen Dank schon mal für Deine/Euere Mühe.

    Gruss Hausen

Ähnliche Themen

  1. Antworten: 10
    Letzter Beitrag: 27.01.2011, 21:22
  2. Tabelle in WinCC für Auswahl eines Punktes
    Von haeminator im Forum HMI
    Antworten: 0
    Letzter Beitrag: 27.07.2010, 13:42
  3. Tabelle erstellen mit Wincc flex 2008
    Von buba1983 im Forum HMI
    Antworten: 3
    Letzter Beitrag: 10.08.2009, 14:31
  4. Antworten: 1
    Letzter Beitrag: 15.01.2009, 19:52
  5. Antworten: 0
    Letzter Beitrag: 06.10.2007, 10:22

Stichworte

Lesezeichen

Berechtigungen

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