Entwicklung VisiWinNET Allgemein
- Smart: Fehler beim Speichern von Projektdefinitionen (Texte, Variablen,
Alarme, ...) behoben.
Wenn man nach der Eingabe z.B. eines neuen Textes direkt über die
Tabreiter im Arbeitsbereich von VisiWinNET Smart auf ein geöffnetes
Formular gewechselt hat, konnte es passieren, das der Text nicht ins
Projekt übernommen wurde. Die Auswahl des Textes im Formulardesigner
war dann nicht möglich.
- Smart: Beim Speichern von Formularen konnte es passieren, das das
Formular anschließend im Projekt Explorer nicht mehr dargestellt
wurde.
- Smart: Der Projektexplorer berücksichtigt jetzt die Filtereinstellungen
aus der Konfiguration.
- Die Abfrage zum Überschreiben der Exportdatei war nicht sprachumgeschaltet.
- Importieren in eine schreibgeschützte Projektdatei ist jetzt
abgefangen.
- Exportieren von nur leeren Texten einer bestimmten Sprache funktionierte
nicht
- Im Projektmanager reagiert die Beenden-Schaltfläche jetzt auf
die Esc-Taste, die Öffnen-Schaltfläche auf die Enter-Taste.
- Bei 6.0-Projekten wurde der zugehörige Template-Pfad nicht richtig
ermittelt. Dadurch waren z.B. "CE Single ARM" mit der falschen
Vorlage "CE Single" verbunden.
- Beim Konvertieren von VisiWinNET-5-Projekte war die Liste der Projekte
leer. Das Menü zum Aufrufen dieses Dialogs wurde entfernt. Die
Konvertierfunktion ist jetzt aufrufbar über den Tabulator "Erweitert".
- Funktion "Projekt in neue VisiWinNET-Version konvertieren"
ließ die Auswahl einer älteren oder der gleichen Version
wie das Projekt zu. Die Funktion kann aber nur in höheren Versionen
konvertieren.
- Die VisiWinNET-Versionsliste zeigte bei ServicePacks teilweise doppelte
"SP"-Buchstaben an.
- Auf dem "Erweitert"-Tabulator war die "Suchen"-Schaltfläche
nicht zu sehen.
- Im Loggingsystem Konfiguration wurde die Eigenschaft 'Dateimodus'
nicht abgespeichert.
- Im Loggingsystem Konfiguration fehlte die Eigenschaft 'VWE-Rechnername
in Datenbanknamen einbinden'.
- Die Propertypage wird unsichtbar geschaltet, wenn eine Designer (Formular,
UserControl, usw.) oder CodeEditor angeklickt wird.
- Beim OPC-Server Kanal wurde die Eigenschaft: 'Einzelzugriff auf Feldelemente'
in der Projektdatei nicht abgespeichert.
- Beim ItemGruppen Definition Aktivierungsmodus = Applikationsgesteuert
wurde die Eigenschaft für das SteuerObjekt nicht freigegeben.
- Beim ItemGruppen Definition war die Eigenschaft AktivierungsModus
= Immer nicht Einstellbar.
- Änderungen beim ArchiveMode über das Grid wurden nicht übernommen.
- Beim Projektwechsel, beispielsweise von Compact nach Standard, konnte
es unter bestimmten Umständen zum Systemfehler kommen (Es wurde
vor dem Systemstart versucht, auf Systemkomponenten zuzugreifen! ...)
- Wenn vom OPC-Server ein Zugriffsrecht zurück gegeben wurde, welches
nicht dem erwarteten/möglichen Wert entsprach, kam es intern zu
einem Absturz.
- Wurde beispielsweise ein Nicht-VisiWin-Projekt geöffnet und dann
auf ein VisiWin-Projekt umgeschaltet, kam die Warnung, dass VisiWin
sich im Demomodus befindet.
- Schnittstellenerweiterung um das Browsen über das Netzwerk wieder
zu ermöglichen
- Das Browsen von OPC-Servern übers Netzwerk ist jetzt wieder möglich.
- Unter Projektkonfiguration -> Laufzeit konnte man eine Zykluszeit
unter 10 ms einstellen.
- Bei der spanischen Sprache fehlte eine Sortierreihenfolge (LCID 1034).
- Bei den VariablenAdaptern wurde der aktive Umschaltzustand nicht in
die Datenbank geschrieben, wenn er auf "Default" stand.
- Freie AlarmParameter implementiert.
- Die CurrentUICulture wird nicht mehr verändert
- Wenn beispielsweise in einem Konfigurationsknoten nicht definierte
Eigenschaften vorhanden waren, z.B. durch nicht aktuelle Templates,
konnten die Einstellungen des gesamten Knoten nicht abgespeichert werden.
- In Clientprojekten konnte man unter der Projektkonfiguration die Lauzeitkonfiguration
sehen.
- Waren in einer Sprachdatei Texte, die in der Prozessdatenbank bereits
nicht mehr verfügbar sind, kam es im Designmode zu einem Fehler,
der dazu führte, dass keine Texte mehr im Formular aufgelöst
wurden.
- Das Flag "Einzeln beschreibbar" bei einem Item war standardmäßig
auf false gesetzt.
- In Client-Projekten konnten keine Sprachen hinzugefügt werden.
- Beim Ermitteln der Lizenzinformationen wurden die Items mitgezählt,
die auf nicht aktiv gestellt sind.
- Forms: Im Auswahldialog für Alarmfilter fehlten die sprachumschaltbaren
Texte.
- Die Eigenschaften für ItemInfo, MemberInfo und StructureInfo
erweitert.
- Das Browsen und Übernehmen von Strukturen ermöglicht.
- Die Steuerung über einen Dialog, für das Ersetzen von vorhandenen
Definitionen implementiert.
- Die Editoren haben die ShortCuts für löschen, kopieren und
einfügen verloren.
- Der Anzeigefehler im VisualStudio, bei dem durch das Sichtbarwerden
der Toolbars der Projektexplorer teilweise verdeckt worden ist, konnte
durch einen Workaround behoben werden.
- Bei der Formularauswahl über den Events/Commands-Dialog wurden
im Professional keine Smartformulare angezeigt.
- EditorÜberschrift: Informationsreihenfolge vertauscht. Bsp.:
statt "[Projekt3] Variablen" -> "Variablen [Projekt3]".
- Eigenschaftenseite LoggingCategory: Die Textbox für "Text"
hatte einen falschen Font.
- Liste mit falschen Text beschriftet.
- In den VB-Projekten ist die Eigenschaft IsSingleInstance=false gesetzt.Dieses
machte Probleme beim Remoting.Folgende Fehlermeldung wird ausgegeben:Remoting
Verbindung kann nicht aufgebaut werden: Authentication failure.
- Hilfe Aufruf für OPCServer implementiert.
- Es konnten, bei einer bestimmten Klickreihenfolge im Editor, beim
Hinzufügen von neuen Definitionen, nicht eindeutige Einträge
entstehen. Dieser Fehler wurde nun auf unterster Ebene abgefangen, zusätzlich
wird dieser Fehler im Editor behoben, sodass keine Fehleingabe mehr
möglich sind.
- Beim Kopieren der Rechte in die Zwischenablage, war die Zuordnung
der Benutzergruppen nicht freigegeben.
- Beim Ändern des Serverprojektes werden jetzt auch die Formulardaten
auf das neue Serverprojekt aktualisiert.
- Unsterstützung für Variable X,Y-Punkte in der Einheitenklasse
aktiviert. Umschalten der Prozessumrechnung konnte ein Deadlock auslösen
(VWEManager fror ein).
Steuerelemente VisiWinNET Allgemein
- ListView: Die Farben ForeColorEven/Odd und BackColorEven/Odd waren
Transparent, daher wurden u.a. die Harken in den CheckBoxen nicht richtig
angezeigt.
- ListView: Beim Löschen von ListViewItems mit HashTable-Key konnten
die gelöschten Items über die HashTable noch ausgelesen werden,
obwohl das Item in der Items-Collection entfernt war
- ListView: Performanceoptimierung - die Prozessorauslastung während
eines MouseMove in einer ListBox stieg auf bis zu 100% an.
- ListView: Der Scrollbar hat sich beim Aufruf von Items.Remove und
Items.RemoveAt nicht aktualisiert
- ListView: ItemAutoHeight funktionierte nicht, wenn die Columns und
Items programmatisch in einer Methode hinzugefügt werden. Erst
nach dem ersten Repaint passte dann die Darstellung
- ListBox: Das SelectedItemChange-Event wurde zu früh geworfen.
ListBox.Text stand zu dem Zeitpunkt noch auf dem alten Wert
- ComboBox: Die DropDownList der ComboBox war bei einer ComboBox mit
einer Breite von weniger als 125px beim ersten Aufklappen zu breit.
- ComboBox: DropDownListBox hat zwar die FontClass aber nicht den Font
übernommen
- SmartForms: ScaleToScreenSize=true führte zu einem Fehler, wenn
die Formulare verkleinert wurden und der Font ein Size<1 annehmen
sollte. Die Font.Size wird in diesem Fall jetzt auf 1.0f gesetzt.
- Commands: Increment/Decrement für den DatenTyp VT_DATE korrigiert
- CommandButton: ChildForms waren unter Smart (CE) im CommandButton
auswählbar aber zur Laufzeit ohne Funktion
- TabControl: Beim Löschen des TabControls wurden die TabPages
nicht entfernt und bleiben als unsichtbare Objekte auf dem Formular
liegen
- TabPage: Angebundene Images (Image/ImageSelected) ließen sich
über das PropertyGrid nicht entfernen.
- Scale: Serialisierung verbessert und Bug behoben- z.B: MinorRulerAlign
wurde beim Laden eines Formulars immer von Value=0 auf Value=10 zurückgesetzt
- VisiWinNET.Forms.ProjectForms.ActiveForm warf eine Exception, wenn
noch kein Formular über die ProjectForms geladen wurde
- TrendTime: Autorisierung funktionierte beim Laden des Formulars nicht
richtig
- RecipeClassHandler: In den LoadRecipeDialog und SaveRecipeDialog traten
exceptions auf, wenn im RecipeClassHandler für den RezeptklassenNamen
eine ungültige Rezeptklasse angegeben wurde.
- Recipe: Die RecipeClassHandler-Dialog zum Laden und Speichern von
Rezepten wurden so angepasst, das die Tasten für Laden und Speichern
nur freigeschalten sind, wenn für den Rezeptnamen kein Leerstring
angegeben ist.
- Label,TextBox: Wenn der Text-Ausgabebereich kleiner waren als die
Font.Height, so wurde der Text nicht mehr gezeichnet. Dies war falsch,
denn es sollte zumindest ein Teil des Textes sichtbar sein.
- TouchkeyBoard: Die NumPadEingabe war mit dem DatenTyp VT_BOOL nicht
möglich.
- Shape: Die Darstellung für Outline = RoundedRect wurde als Rect
dargestellt.
- Key: Status der MonitorLED wurde beim Formular laden nicht richtig
gesetzt
- PictureBox: Die BlinkColor des BlinkService funktionierte nicht
Laufzeit VisiWinNET Compact
- Eine Gruppe ohne Items kann dazu führen, dass die Items in dem
Treiber nicht initialisiert werden!
- Zeitformat wurde in der Methode VisiWinNET.LanguageSwitching.DateTimeFormat.FormatDateTime()
nicht richtig angezeigt.
- Trends schreiben jetzt eine Indexdatei für schnelleren Systemstart.
- Verzeichnisstruktur bei Trendsystem auf ein Verzeichnis je Trend umgebaut.
- Dateifunktionen im Trendsystem gehen jetzt nur noch über einen
einzelnen Thread zur Synchronisation.
- Vergabe des Dateinamens und Dateiwechsel bei Trenddateien überarbeitet.
- Bei getriggertem Dateiwechsel und Aufzeichnung von Trends konnte es
zu mehrfach vorhandenen CTC Dateien kommen.
- Die Eigenschaft Benutzergruppe.Text liefert jetzt den Namen der Gruppe
zurück, wenn kein sprachumgeschalteter Text gefunden wird. Dadurch
wird z.B. in den Listenelementen von VisiWinNET auch etwas angezeigt,
wenn der Text im Projekt nicht ausgefüllt ist.
- Dateiwechseleinstellungen bei Alarmhistorie wurde teils aus der Projektdatei
falsch ausgelesen.
- Fehler bei der Eingabe von Elementen einer Feldvariablen mit VarIn.
- Beim Schreiben in die Logdatei konnte es vorkommen, dass sie bei vielen
Einträgen aus Treibern nicht mehr geöffnet werden konnte.
- Nur PC Version: DisableWindowsKeys hat nicht funktioniert.
- Das Property VisiWinNET.Alarm.AlarmManager.AlarmDef[string] liefert
die korrekte Alarmdefinition zurück! Zuvor fehlte die Gruppenhierarchie
zu dem Alarm, für die Eindeutige Identifikation.
- Das Property LocalisabelText der Alarmdefintion liefert jetzt den
vollständigen Lokalisierbaren Text zurück.
- Umrechnungsfehler bei Itemobjekt in Verbindung mit Einheitenumschaltung
(Einheit: * 0.5, Eingabe 60000 wurd bei VT_I2 abgewiesen, obwohl 60000
* 0.5 = 30000 noch in ein VT_I2 passt). GetMnemonicKeyCode war seit
VWN 6.1 nicht mehr ausprogrammiert.
- Trace-Ausgeben in den Logfile beseitigt
- ForeColor und BackColor wurden im VarIn, in der ListBox und in der
ComboBox nicht serialisiert.
Laufzeit VisiWinNET Standard
- Performanceoptimierung bei allen historischen Listen und Trends bei
Abfrage der Notizen.
- Die Alarmklassenauflistung ging nicht, wenn in den Klassen Icons angegeben
waren. Daher ging dann auch die Alarmauflistung nicht ("Der Schlüssel
darf nicht NULL sein.").
- Performanceverbesserung beim Hochfahren, wenn viele Alarmgruppen mit
Statusvariablen und viele Alarme angelegt waren.
- Benutzerschnittstelle durch Filtermöglichkeit nach Ereignissen
erweitert.
- Textcache für die Ermittlung von Servertexten eingebaut. Damit
wird der Aufbau der historischen Alarm- und Logdatenliste bei größeren
Datenmengen beschleunigt.
- Die Textformatierfunktionen lieferte bei manchen Textformatierfunktionen
mi Parameterübergabe einen Fehler, obwohl der Aufruf eigentlich
richtig war (z.B.:VisiWinNET.LanguageSwitching.Localization.GetText("Textgruppe1.Text1",
2, 4)).
- Es konnte keine dynamischen Trends mehr hinzugefügt werden.
- Es konnten keine dynamischen Trends mehr angelegt werden.
- War zu einer Fontklasse eine Sprachspalte nicht ausgefüllt und
wurde auf diese Sprache gewechselt, wurden der Ladevorgang der Fontklassen
an dieser Stelle abgebrochen und der zugehörige Text in der falsche
Fontklasse angezeigt. Nun werden alle Fontklassen, die vorhanden sind,
geladen.
- Wenn ein VisiWin-Treiber einen Lesefehler hatte, wurde die Qualität
des Items auf 0 (OPC_QUALITY_BAD) gesetzt, richtig ist aber 8 (OPC_QUALITY_NOT_CONNECTED),
damit auch das Eintragen eines eventuellen Ersatzwerte funktioniert.
- Das Auflisten von Benutzern zu einer Benutzergruppe funktionierte
nicht.
- Beim Browsen wurden für die __SYSTEM_VARIABLEN als Zugriffrecht
eine 0 übertragen, dass konnte der VisiWinNET-Browser nicht.
- Die Formatierfunktion für Alarmtexte stürzte ab, wenn das
Resultat > 256 Zeichen war. Nun werden die Texte nach 256 Zeichen
abgeschnitten, damit sie in der Datenbank gespeichert werden können.
"AOTO_CLOSE OFF/ON" Option bei SQL-Datenbank als Speichermedium,
je nach Einstellung: FileMode - Schnell/Sicher.
- SendRecipe und OnSendRecipeDone im Rezeptinterface. Kommunikator wird
noch für RemoteTrend gebraucht.
- Historische Alarm- und Logbucheinträge haben nun ein Flag, ob
Notizen anhängen. Damit kann die Listenanzeige optimiert werden.
- "GetAlarmParam" überträgt bei Bildern nun auch
Bytefelder und keine Image-Objekte mehr (gab Problem beim Auslesen).
- Bei nicht vorhandenen Indextexten setzte das Laufzeitsystem immer
ein "\\@" davor, daher kam auch im englischen Touchkeyboard
über der '2' ein '\@' statt '@'.
- __UNLINKED-Variablen hatten fälschlicherweise die Qualität
"BAD".
- GetChannelInfo (externe Alarmparameter) liefert nun für nicht
vorhandene Parameter als Typ NONE zurück.
- Probleme, wenn keine historischen Logbucheinträge gefunden wurde.
Eintrag „OnRequestedLogData - Error: 0x80131531“ im VWEManager.LOG.
- Das Zurücksetzen der Alarmbits, wenn Gruppen deaktiviert werden,
funktionierte nicht.
- DisableWindowsKeys-Eigenschaft funktionierte nicht, wenn es direkt
im Startcontrol angegeben war.
- ALT+F4 und CTRL+ALT+DEL (letzteres über VWFilter.SYS-Anbindung,
nur bei PS2-Tastaturen) bei DisableWindowsKeys wieder berücksichtigt.
- Wenn man die Trendfarben aus der Trend-Definition übernahm, war
der A-Anteil der Farben immer 0 (voll transparent), d.h. die Kurve konnte
nicht gesehen werden.
- Nicht bei allen angelegten Archiven wurde das interne Dispose aufgerufen.
- System ist nun toleranter, wenn benötigte Projekteinträge
in der Registrierung nach einem Laufzeitsetup fehlen.
- Dynamische Kanaldeaktivierung über Kanalstatusvariable (__CHANNEL_1_STATE)
funktionsfähig gemacht.
- Bei Verbindungsabbrüchen zum VisiWinNET-Manager wurden bisher
nur Informationen ins Logfile geschrieben. Nun sind es Fehler, da Informationen
standardmäßig nicht in der Ereignisanzeige auftauchen.
- "AppService.VWSet" hat nun Typüberprüfung und
automatische Umwandlung von benutzerdefinierten Enums in Int32 (vorher
gab es Remoting-Serialisierungs-Exceptions und Verbindungsabbrüche
bei nicht unterstützten Datentypen).
- Wenn bei Client-Server mit mehreren Clients sich der erste Client
wieder abmeldete, gingen die anderen Clients auch nicht mehr.
- Strukturunterstützung bei Item-Objekten (inklusive Change-Event).
- Shutdown-Windows Funktionalität wurde wieder implementiert.
- Unterstützung für Click-Once-Deployment eingebaut
- Im Design-Modus konnte man trotz ausgeschaltetem Nachkomma-Kompatibilitätsmodus
keine Nachkommastellen eingeben, wenn die Einheitenumschaltung für
ein Control aktiviert war.
- AutoLogOff ging nicht, wenn die Zeit > 1 Minute eingestellt war.
- System fuhr sehr langsam hoch, wenn es viele Alarme ohne Ereignisvariable
gab. Allgemeine Beschleunigung des Hochfahrens bei vielen Alarmen.
- Dynamisch erzeugte Trends konnten nicht wieder gelöscht werden.
- Umrechnungsfehler bei Itemobjekt in Verbindung mit Einheitenumschaltung
(Einheit: * 0.5, Eingabe 60000 wurd bei VT_I2 abgewiesen, obwohl 60000
* 0.5 = 30000 noch in ein VT_I2 passt).GetMnemonicKeyCode war seit VWN
6.1 nicht mehr ausprogrammiert.
- Zu leeren Archiven konnten keine Trends dynamisch hinzugefügt
werden.
- Bei AddTrend mussten immer Minimum und Maximum angegeben werden, das
ist nun nicht mehr nötig.
- AddTrend - Funktion durfte nur mit dem Abstand von mindestens einer
Sekunde hintereinander aufgerufen werden -> verbessert.
- Wenn bei Recipe.Get oder Recipe.Set einzelne Variablen nicht gelesen
oder geschrieben werden konnten, wurde die Bearbeitung an dieser Stelle
abgebrochen. Nun wird sie mit den restlichen Variablen bis zum Ende
durchgeführt.
|
|
|
|