VisiWinNET Entwicklung Allgemein
Neue Funktionen und Optimierungen:
- Variableneditor:
Strukturnamen werden jetzt bei der Datentypauswahl sortiert aufgelistet.
- Im Alarmsystem können nun für die Meldegruppen Symbole, auch Grafiken
im PNG und BMP Format projektiert werden (*.png und *.bmp Dateien).
- Für VisiWinNET Compact Projekte können nun unter dem Knoten Projektkonfiguration
auch die Zykluszeiten für das applikationsweite Blinken und die Togglezeit
der Alarmzeile eingestellt werden.
- Bei der Übertragung eines Projektes auf das Zielgerät über TCP/IP
lässt sich nun die Zeit für die interne Timeout-Überwachung über den
Verbindungsdialog konfigurieren.
Die Übertragung lässt sich so auch für langsame Verbindung (z.B. über
DFÜ/Modem) konfigurieren.
Fehlerbehebungen:
- Die „Suchen und Ersetzen“ Funktion funktionierte bei Einheitenklassen
nicht korrekt.
- Die „Suchen und Ersetzen“ Funktion funktionierte nicht korrekt, wenn
die zu ersetzende Spalte sortiert eingestellt war.
- Die Auswahl von Rezeptvariablen im Rezepteditor war nicht möglich,
wenn genau eine Rezeptvariable angelegt war.
- TextImExport Tool:
Beim Importieren von Texten konnte es bei leeren Feldern in der Importdatei
zu einer Cast-Exception (DBNull -> string) kommen, die zum Abbruch
des Importvorgangs führte.
- Protokollierung VisiWinNET Standard:
Die Bearbeitung der System-Kategorien über die entsprechenden Eigenschaften
konnte zu einem Absturz des Entwicklungssystems führen.
- Beim Löschen von kompletten Variablen-Namensräumen traten Fehler auf,
wenn in den Variablenbezeichnern Sonderzeichen (z.B. ‚[‚ oder ‚]’) vorkamen.
- Kopieren und Einfügen von Alarmen über die Zwischenablage funktionierte
nicht korrekt.
- In den Variablen-Auswahldialogen wurden Stringvariablen mit einer
Feldgröße ungleich 0 bei VisiWinNET Standard Projekten fälschlicherweise
als Variablenfeld dargestellt. Da die Feldgröße von der VisiWinNET Standard
Laufzeit als Stringlänge interpretiert wird, werden diese Variablen
nun als Einzelvariablen dargestellt.
- Das Setzen des Defaultwertes für spezifische Parameter eines Treibers
oder OPC Servers war nicht möglich, wenn der Defaultwert außerhalb der
einstellbaren Grenzen lag. Für diesen Fall existiert nun eine Schaltfläche
im Konfigurationsdialog, mit dem sich der Defaultwert übernehmen lässt.
- Fehlende Texte für TouchKeyboards "AlphaPad" und "TinyAlphaPad"
in den Projektvorlagen ergänzt.
VisiWinNET Smart
Fehlerbehebungen:
- In einigen Situationen konnte es passieren, das beim Aufruf der Speichern-Funktion,
die Daten der VisiWinNET Editoren und Eigenschaftenseiten nicht gespeichert
wurden
- Der Aufruf der Hilfe aus der Eigenschaftenliste führte bei einigen
Eigenschaften (z.B. VarIn.Padding) zum Absturz des Entwicklungssystems.
VisiWinNET Professional
Neue Funktionen und Optimierungen:
- Im Optionen-Dialog des Projektmanagers lassen sich jetzt im Verzeichnisauswahldialog
alle beliebigen Verzeichnisse auswählen.
- Der Splash-Screen des Projektmanagers wird jetzt nach dem vollständigen
Anzeigen des Projektmanagers ausgeblendet.
- Wird aus der "Aktuelle Projekte"-Liste des Projektmanagers
ein Projekt konvertiert oder neu gespeichert, wird das neue Projekt
jetzt in die Liste eingetragen.
Fehlerbehebungen:
- Die Auflistung der geladen Assemblies aus dem „Über-Dialog“, führte
in VisiualStudio zu einer Exception.
- Wenn nur Visual Studio 2008 SP1 installiert ist und ein Beispielprojekt
geöffnet wurde, gab es die Fehlermeldung "...Visual Studio 8.0
konnte nicht gefunden werden".
- Beim Starten eines Windows CE Projektes über die Start-Debug Funktion
in Visual Studio 2008 wurden in einigen Situationen nicht alle VisiWinNET
Dateien auf dem Zielgerät aktualisiert.
VisiWinNET Steuerelemente
Neue Funktionen und Optimierungen:
- RecipeList:
Anzeige und Eingabe von Bool-Variablen optimiert. Die Ein-/Ausgabe erfolgt
nun über Checkboxen.
- Neue Systemfunktionen ShowMouseCursor und HideMouseCursor zum Anzeigen
und Verstecken des Mauszeigers zur Laufzeit.
- RecipeList, RecipeClassHandler:
In den Dialogen zum Laden und Speichern von Rezepten wird das geladene
Rezept nun in der Rezept-Auswahlliste automatisch beim Öffnen des Dialoges
selektiert.
In der Rezeptliste wird das geladenen Rezept automatisch selektiert,
wenn die Liste aktualisiert wird.
- RecipeList:
Beim Speichern eines Rezeptes wird nun die Eigenschaft RecipeFile.FileName
im angebundenen RecipeClassHandler nicht mehr zurückgesetzt.
- Der SmartTag Dialog zur Bearbeitung der Eingabegrenzen im VarIn Steuerelement
wurde überarbeitet.
- Slider / ExtendedSlider:
Darstellung des Thumb für den Zustand Disabled verbessert.
Fehlerbehebungen:
- Stringvergleiche mit Leerstrings wurden bei der bedingten Ausführung
von Systemfunktionen (IF THEN ELSE - Bedingungen) nicht korrekt ausgeführt.
- Process-Komponente:
Die Funktion StartProcess wurde in VisiWinNET Professional nicht richtig
serialisiert.
- Im Dialog zum Anlegen neuer Benutzer wurden die ComboBoxen bei der
ersten Selektion nicht geschlossen. Zum Schließen der ComboBoxen mussten
diese immer zweimal selektiert werden.
- Die Funktionen Back und Forward aus der Formularverwaltung funktionierten
bei ChildForms nicht korrekt. Bei Aufruf der Funktionen wurden teilweise
falsche oder keine Formulare angezeigt.
- Auf einigen Systemen wurde der Dialog zum Auswählen von sprachumschaltbaren
Texten bei jedem Öffnen größer.
- Bei der Eingabe von Werten über das AlphaPad wurde das ChangeByEditing-Ereignis
des bearbeiteten Steuerelementes nicht ausgelöst.
- RecipeList:
Bei der Eingabe von Variablen wurde die Einheitenumschaltung nicht berücksichtigt.
Variablen vom Typ DateTime wurden falsch angezeigt und konnten innerhalb
der Liste nicht editiert werden.
- VarIn:
Bool Variablen konnten im Rezeptmodus nicht über das NumPad editiert
werden.
- HistoricalAlarmList:
Beim Auflisten von historischen Alarmen konnte es zu Abstürzen in der
Applikation kommen, wenn das Formular während der Ermittlung der Alarme
geschlossen wurde.
- TrendLegend:
In Spalten vom Typ Unit wurde der Einheitentext nicht angezeigt.
- XYGraph:
Die Skalen wurden in einigen Situation nicht korrekt dargestellt.
- ListView:
In Spalten vom Typ CheckBox wurde die dargestellte Checkbox nach einem
Click auf die Zelle nicht richtig aktualisiert.
Die im ListView angebunden Variablen wurden bei der formularbezogene
Variablenaktivierung und –deaktivierung nicht berücksichtigt.
Nach einem Sortiervorgang wurden die Eigenschaften SelectedIndex und
SelectedItem nicht neu gesetzt.
- NumPad:
Bei zweimaliger Betätigung der „-“ Taste wurde in der Anzeige des NumPads
wieder ein „+“ Zeichen angezeigt. Der eigentliche Wert blieb aber weiterhin
negativ. Nun wird auch der entsprechende Wert negiert.
- RecipeClassHandler:
Die Eigenschaften MinButtonHeight, MinInputHeight zur Konfiguration
des Load- und Save-Dialogs, wurden nicht ausgewertet und hatten keine
Auswirkungen auf die Darstellung der Dialoge.
- Skalendarstellung:
Bei allen Steuerelementen mit Skala gab es einen Darstellungsfehler
bei wenn die Eigenschaft ScalePosition auf den Wert Secondary eingestellt
wurde.
- Shape:
Die Farbdarstellung für Outline=RoundedRect war falsch.
- AlarmLine:
Für die Alarmeigenschaft "Count" wurde nur ein "-"
Zeichen ausgegeben. Jetzt wird korrekt die Anzahl der anstehenden Alarme
ausgegeben.
VisiWinNET Compact Laufzeit
Neue Funktionen und Optimierungen:
Prozessanbindung
- Nach einem synchronen Schreibvorgang wird nun die Variablen-Quality
geprüft. Eine Variablen-Quality ungleich OPC_QUALITY_GOOD wird als Fehler
gewertet und liefert bei der Funktion VWSet den Rückgabewert „false“
zurück.
- Wenn „Null“ Werte aus einem Treiber übermittelt werden, wird jetzt
nur noch die Qualität nicht aber der Wert übernommen.
- Die Funktionen VWGet, VWSet, VWGetBit und VWSetBit sind nun threadsicher
und können auch in vom Hauptthread abgespaltenen Threads verwendet werden.
- Wenn ein OPC-Server Variablen mit der Qualität BAD sendet, können
die dazugehörenden Variablenwerte nun optional verworfen werden. Die
Werte werden dann nicht in den interne Variablencache übernommen.
Alarmverwaltung
- Variablenwerte, die in Alarmtexten verwendet werden, werden nun beim
Generieren des Alarms synchron eingelesen.
- Der Toggle-Zyklus des Alarmline Objektes lässt sich nun konfigurieren.
Rezeptverwaltung
- Für nicht kommunizierte Variablen erzeugt das Rezeptsystem nun keine
Systemfehler mehr. Die Informationen werden weiterhin in die Logdatei
eingetragen.
- Lese- und Schreibfehler die in der Funktion RecipeClass.Get auftreten,
werden nun in der LogDatei protokolliert. Zusätzlich wird im Ereignis
GetDone ein allgemeiner Fehler mitgeliefert.
- Die Funktion RecipeClass.Get liest die Variablen nun synchron aus
der Steuerung. Über eine neue Überladung der Funktion können die Variablenwerte
aus dem Variablen-Cache gelesen werden.
Fehlerbehebungen:
Allgemein
- Das automatische Beenden der Laufzeit im Fehlerfall oder bei abgelaufener
oder fehlerhafter Lizenz hat nicht immer korrekt funktioniert.
Prozessanbindung
- Die Change-Ereignisse für Array-Variablen wurden in diversen Situationen
nicht korrekt ausgelöst.
- Fehler beim Schreiben von Arrays behoben.
- Das mehrmalige Beschreiben der Name-Eigenschaft eines Item-Objektes
konnte dazu führen, das die entsprechende Variable deaktiviert und somit
anschließend nicht mehr kommuniziert wurde.
- Bei StateItem Objekten wurde im Rezeptmodus (RecipeMember = true)
im Change Ereignis anstelle des Rezeptwertes der Prozesswert übergeben.
- Die Zugriffsart 1xR (einmaliges Lesen) für Variablen wurden nicht
ausgewertet. Alle Variablen die diese Einstellung verwenden, werden
nun bei Starten des Projektes einmal synchron gelesen.
Sprachumschaltung
- Bei der Ermittlung von sprachumschaltbaren Texten (z.B. über die
Funktion Localization.GetText) durfte am Anfang der übergebenen TextID
kein @-Zeichen stehen. Der entsprechende Text wurde in diesem Fall nicht
gefunden. Das @-Zeichen wird nun erkannt und korrekt behandelt.
Alarmverwaltung
- Wenn eine Alarmgruppe mit anstehenden Alarmen über eine Variable
deaktiviert und anschließend wieder aktiviert wurde, wurden die aktiven
Alarme nicht in der aktuellen Alarmliste eingetragen.
Trendsystem
- Fehler die bei der Trendaufzeichnung auftreten werden nun zentral
abgefangen und führen nicht mehr zum Absturz der Applikation.
- In einigen Situationen konnte es passieren das die aufgezeichneten
Daten nicht korrekt an das TrendChart Steuerelement übergeben wurden.
Das TrendChart Steuerelement hat in diesem Fall keine Kurve dargestellt.
Rezeptverwaltung
- Beim Speichern und Lesen von Rezeptwerten des Datentyps VT_R4, VT_R8
in Verbindung mit einer Prozesswertumrechung oder Rezeptwertnormierung,
wurden die Daten sprachabhängig abgespeichert. Da das Probleme beim
Laden von Rezepten auf Systemen mit unterschiedlichen Spracheinstellungen
verursacht, werden die Daten nun sprachneutral gespeichert und gelesen.
- Bei der Verwendung von Einzelvariablen aus einem Variablenfeld in
einem Rezept, wurden die Rezeptdateien zu diesem Rezept nicht korrekt
abgespeichert und ausgelesen.
Protokollierung
- Beim Auslesen des Logbuches wurden Einträge mit Indextextparameteren
oder benutzerdefinierten Parametern als ungültig markiert (fehlerhafte
Checksumme).
- Beim Ändern von Benutzergruppen wurden zu viele Parameter im Logbuch
abgespeichert.
- Beim Speichern von Ereignissen mit benutzerdefinierten Parametern,
wurde ein Systemfehler ausgelöst, wenn die übergebenen Parameter den
Wert Null enthielten.
VisiWinNET Standard Laufzeit
Neue Funktionen und Optimierungen:
Allgemein
- Wenn der Client die Verbindung zum Server verliert, wird nun ein
temporärer Systemalarm erzeugt.
- Geschwindigkeitsoptimierung beim Maskenwechsel für VPN-Verbindungen.
- Der Dialog zur Anzeige von Fehlern und Ereignissen im Client-Laufzeitsystem
passt sich jetzt auch auf Bildschirmauflösung kleiner 640*480 Pixel
an.
- Im Client-Server Betrieb werden nun auch Terminal-Server-Dienste unterstützt.
- Verhalten bei Client-Server-Kommunikationsabriss optimiert.
- Fehlerausgabe bei falscher Lizenz verbessert.
- Client-Server-Verbindungsabrissbehandlung optimiert.
Prozessanbindung
- Die "Cause"-Eigenschaft in den ChangeEventArgs ist jetzt
nicht mehr sichtbar.
Trendsystem
- Damit die automatische Reparaturfunktion keine falschen Daten liefert,
wird im "sicheren" Modus nun zusätzlich zu jedem Sample noch
eine Checksumme gespeichert.
Fehlerbehebungen:
Allgemein
- Der Client-Rechnername wurde bei Client-Server-Projekten nicht richtig
übertragen. Dadurch war z.B. die Spalte Rechnername im Protokollsystem
bei den LogOn- LogOff-Aufzeichnungen immer leer.
- Das Fenster zur Anzeige von fehlerhaften Laufzeitlizenzen wurde in
einigen Situationen nicht korrekt dargestellt. Manchmal war nur ein
weißer Hintergrund zu sehen.
- Bei Client-Projekten wurde die aktuell eingestellte Sprache nicht
abgespeichert.
- Das manchmal auftauchende "RemServer"-Fenster wurde besser
versteckt.
Prozessanbindung
- Die Nachkommastellen im Item-Objekt konnten bei "Unitconversion=true"
in Client-Projekten nicht editiert werden.
- Die Gruppeneinstellung "Asynchron" wurde bei VWSet nicht
berücksichtigt. Die Funktion VWSet schrieb immer synchron.
- Im Design-Mode wurden den Steuerelementen die Variableninformationen
bei mehrfach verschachtelten Feld- oder Strukturvariablen nicht korrekt
übergeben.
- Feldelemente konnten nicht beschrieben werden, wenn ein VisiWinNET-Treiber
keinen Einzelzugriff auf Feldelemente erlaubt und stattdessen immer
das ganze Feld beschrieben werden muss.
- Bei manchen OPC-Servern traten beim Verbindungsabbruch durch den Eintrag
in das Alarmsystem Probleme auf, so dass die Visualisierung "einfror".
Sprachumschaltung
- Das Beschreiben der Eigenschaft LocalizedText.Text oder LocalizedText.TextGroup
mit dem Wert „null“ führte zu einem Fehler.
- Bei Verwendung einer nicht vorhandenen Fontklasse konnte es zur Laufzeit
zu einem Fehler kommen. In einigen Situation führte das dazu, dass das
Projekt nicht gestartet werden konnte.
- Die Gruppentexte von Alarmuntergruppen wurden bei der Sprachumschaltung
nicht umgeschaltet.
Alarmverwaltung
- In den Ereignisparametern des Clear-Events von CurrentAlarms war
die "Deactivation"-Zeit nicht gesetzt, wenn die Alarmquittierung
auf "Zurücksetzen" stand und der Alarm ging.
- In der Date-Formatierungsfunktion bei SQL-Anbindung waren die Werte
für Tag und Monat vertauscht, so dass historische Abfragen mit Zeitintervall
zu einem falschen Ergebnis führten.
Protokollierung
- In der Date-Formatierungsfunktion bei SQL-Anbindung waren die Werte
für Tag und Monat vertauscht, so dass historische Abfragen mit Zeitintervall
zu einem falschen Ergebnis führten.
|
|
|
|