Seite 1 von 1
Tabelle , wann ist die Tabelle voll?
Verfasst: Montag 23. Februar 2009, 11:56
von KAKTUS
Ich schon wieder
Auch wenn sich meine Postings in letzter Zeit häufen , so möchte ich trotzdem versuchen mit konstruktiven Anregungen aus der Praxis fortzusetzen.
Bei uns wird auf einem großen Monitor neben dem Y(t) Schreiber auch häufig die Tabelle eingesetzt. Sie eignet sich hervorragend um Störmeldungen darzustellen. Die Anwendung läuft monatelang ohne Unterbrechung sehr stabil ( übrigens Windows XP) ohne Benutzereingaben .Das funktioniert soweit tadellos.
Jetzt meine Frage:
Was passiert wenn die Tabelle voll ist ?
Sind weiterhin auf der Frontplatte neue Eintragungen sichtbar?
wenn nicht so wäre mein Vorschlag hier eine Option zu schaffen neuen Eintragungen gegenüber alten den Vorrang zu geben so das tatsächlich immer die letzten Störmeldungen in der Tabelle bleiben.
Ich konnte in der Hilfe keine entsprechenden Hinweise finden.
Re: Tabelle , wann ist die Tabelle voll?
Verfasst: Donnerstag 26. Februar 2009, 21:36
von abacom
30.000 Einträge, danach keine Aufzeichnung mehr. Wer mehr braucht sollte wohl lieber mit dem "Datenrekorder" in Datei schreiben.
Re: Tabelle , wann ist die Tabelle voll?
Verfasst: Freitag 27. Februar 2009, 11:15
von KAKTUS
Vielen Dank für die schnelle Antwort.
Sie haben mich wieder missverstanden. Ich brauche nicht mehr Speicher.
Wahrscheinlich drücke ich mich immer etwas undeutlich aus, das Ganze nochmal:
wenn nicht so wäre mein Vorschlag hier eine Option zu schaffen neuen Eintragungen gegenüber alten den Vorrang zu geben so das tatsächlich immer die letzten Störmeldungen in der Tabelle bleiben.
Mir ging nicht ums speichern sondern vielmehr um eine Option in der Tabelle, so dass die letzten Störmeldung oder was auch immer sichtbar bleiben. Sonst muss ich ja alle x Tage proforma die Tabelle löschen, denn ich habe ja keine Info wann die Tabelle voll ist.
Deswegen an den Gedanken eines Art Ringspeichers, so das immer die letzten Einträge sichtbar bleiben und neue Einträge nicht verloren gehen.
Was halten andere Anwender von diesem Vorschlag?
Re: Tabelle , wann ist die Tabelle voll?
Verfasst: Freitag 27. Februar 2009, 11:51
von abacom
Habe ich schon verstanden. Ist aber im Moment nicht so. Wollte nur andeuten, dass 30000 Störungsmeldungen nicht sonderlich praktikabel sind.
Re: Tabelle , wann ist die Tabelle voll?
Verfasst: Samstag 14. März 2009, 23:24
von GP Helli
Hallo und Servus aus Graz!
Vieleicht wäre so etwas möglich:
Datei: Ringzähler
ist nur prinzipiell zu verstehen:
Nach einer bestimmten Anzahl von Einträgen Hotkey (>0<) .doc oder so senden,
dann Tabellenspeicher löschen
Re: Tabelle , wann ist die Tabelle voll?
Verfasst: Samstag 14. März 2009, 23:54
von KAKTUS
@GP Helli
Vielen Dank für deine Mühe, aber damit kann ich nix anfangen.
Was ich bräuchte wäre eine Tabelle wo IMMER die letzten 10,20 oder xx Einträge stehen bleiben. Die älteren Einträge rutschen raus wenn ein neuer Eintrag kommt.
Sozusagen ein FIFO, first in first out. Aber solange ich alleine dastehe mit diesem Wunsch, wird das wohl so nix....
Re: Tabelle , wann ist die Tabelle voll?
Verfasst: Sonntag 15. März 2009, 12:28
von GP Helli
Hallo und Servus aus Graz!
@Kaktus!
gerne geschehen!
Die ASCII-Anzeige hat, glaub ich, so eine Funktion, die bei vollem Speicher
die lezten Einträge durch aktuelle ersetzt
Re: Tabelle , wann ist die Tabelle voll?
Verfasst: Montag 16. März 2009, 01:29
von Microprocessor
Hallo Kaktus,
Deine Anforderung lässt sich wahrscheinlich nur mit einer eigenen DLL erfüllen (sofern Du auf eine
Einzelbaustein-Lösung bestehst).
Hieri ein Alternativvorschlag als Work-around nach dem Motto " Think beyond the limits" :
- man nehme zwei Tabellen (bei Platzmangel auf der Frontplatte notfalls bis auf eine Zeile verkleinern
und zum Betrachten scrollen)
- beim Start werden beide Tabellen gelöscht (RST°).
- aktiviere und fülle die erste Tabelle bis zur gewünschten Zeile. Ich empfehle einen 8-bit Zähler für 256 Einträge,
um mit dem RCO°-Signal das J/K-FF als Tabellenselektor zu toggeln (ansonsten ist weitere Logik erforderlich, um
bei anderen Grenzwerten zu toggeln. Nebenbei: Abacom spricht von max. 30000, in der Online-Hilfe sind max.
16000 angegeben).
- aktiviere und fülle die zweite Tabelle bis zum Ende aber lösche den Inhalt der ersten, wenn genügend Werte in
Tabelle 2 eingetragen sind z.B bei der Hälfte der Einträge (128 bei 8-Bit-Zähler).
- anschließend wieder Wechsel auf Tabelle 1
- usw.
Anbei eine .prj mit einem 4-Bit-Zähler für jeweils 16 Einträge in die Tabellen, die jeweils "alte Tabelle" wird nach 8
Einträgen in der "aktuellen Tabelle" gelöscht, d.h. ein Ringspeicher wie gewünscht.
Ich hoffe, diese Lösung ist Dir dienlich.
Grüße
microprocessor
Re: Tabelle , wann ist die Tabelle voll?
Verfasst: Montag 16. März 2009, 08:23
von KAKTUS
@Microprocessor + @GP Helli
Vielen Dank dass ihr euch meinem Problem angenommen habt.
Dass mit dem zwei Tabellen ist so ne Sache. Die ist Lösung gut, denn anders ist es mit einer Tabelle im Moment nicht möglich. Nur mit einer Tabelle ist es schöner, klar. Könnte ich beide Tabellen übereinander legen und mal Tab1 und mal2 Tab 2 sichtbar machen, wäre noch besser.
@GP Heli
Das mit dem Ascii Display muss ich in einer ruhige Minute mal testen.
@Abacom
Vielleicht kommt der Wunsch auch noch von anderer Seite und die Tabelle wird erweitert.
Vielen Dank für eure Beiträge !
Re: Tabelle , wann ist die Tabelle voll?
Verfasst: Dienstag 31. März 2009, 12:11
von kpaul
Hallo,
die Idee mit dem 'Ringspeicher' gefällt mir,
werde mich mal wieder mit DLL-Programmierung beschäftigen.
kpaul
Re: Tabelle , wann ist die Tabelle voll?
Verfasst: Mittwoch 1. April 2009, 12:09
von abacom
Die ursprüngliche Anregung "alte Einträge der Tabelle zu löschen, wenn die Anzahl der Einträge die Kapazität von 30000 Einträgen überschreitet" ist mit dem Update von heute umgesetzt. (Update 01.04.2009 lädt gerade noch hoch)
Re: Tabelle , wann ist die Tabelle voll?
Verfasst: Mittwoch 1. April 2009, 22:07
von KAKTUS
Hallo Abacom,
was ist denn in Euch plötzlich gefahren?
Das ist ja heut wie Weihnachten, Forum Meldungen, Updates und Funktionserweiterungen.
Klasse, das mit der Tabelle hab ich schon ausprobiert, funktioniert wunderbar.
Kaktus sagt DANKE!
Re: Tabelle , wann ist die Tabelle voll?
Verfasst: Donnerstag 2. April 2009, 10:23
von irrerpolterer
Hallo!
Die Lösung von Microprocessor gefällt mir gut.
Eine kleine Anpassung würde Kaktus sicher helfen, vorausgesetzt das Zielprojekt ist nicht zu groß!
Es muß nur eine Tabelle von beiden sichtbar sein: Wenn die letzten 20 Werte vorm Umschalten&Reseten in beide Tabellen übernommen werden, ist die Übersicht der dargestellten Prozesse gesichert. Jetzt muß nur noch die Hauptfrontplatte dupliziert werden. In der ersten Frontplatte ist Tabelle 1 sichtbar und umgekehrt zweite Frontplatte Tabellle 2. Dann ist es optisch wieder ein Kreislauf.
Re: Tabelle , wann ist die Tabelle voll?
Verfasst: Donnerstag 2. April 2009, 15:48
von KAKTUS
Guten Morgen irrerpolterer,
Abacom hat das doch schon im Update mir reingepackt. (siehe oben)
Für mich ist damit das Thema Tabelle erledigt.
Danke für die Beiträge
Re: Tabelle , wann ist die Tabelle voll?
Verfasst: Dienstag 28. April 2009, 23:19
von kpaul
... Thema zwar erledigt, trotzdem möchte ich noch darauf hinweisen weil hier die Rede von einem Ringspeicher war:
In Stringspeicher steckt auch das Wort Ringspeicher und ist mit dieser DLL auch zu realisieren:
http://www.kpaul.ag.vu/downloads.html : Stringspeicher.zip
kurze Beschreibung:
- DLL-Bauteil mit String-Eingang, dieser wird als eine Zeile sofort in einer Datei angelegt
- beliebiger Dateiname, beliebige Dateiendung
- Datei wird bei Programmstart erzeugt wenn nicht vorhanden
- addiert Stringzeile immer in selbe Datei
- löschen der letzten Zeile möglich
- löschen der gesamten Datei möglich, hierbei wird Backup-Datei angelegt
- maximale Zeilenanzahl kann eingestellt werden, bei Überschreiten wird Backup und neue Datei angelegt
- Triggerfunktion bei Dateiänderung (z.B. für Anzeige über ASCII-Display und FileRead)
- Anzeige über String-Ausgänge mit Scrollfunktion
- im compilierten Projekt wird die selbe Datei verwendet wenn kompletter Pfad\Dateiname angegeben wird
Viel Spaß
kpaul