Hallo,
bin vorhin leider auf eine garstige Wanze bei den Bildschirmausgaben im Designer gestoßen.
Problem: Ein im darzustellenden String vorkommendes Semikolon führt dazu, dass der String bei der Anzeige ab und inklusive Semikolon „abgehakt“ wird.
Beispiel (siehe auch Bild unten):
Variableninhalt: Provider=SQLOLEDB;Server=127.0.0.1;Database=Test; usw
Anzeige: Provider=SQLOLEDB …der Rest fehlt!
Natürlich habe ich „die üblichen Verdächtigen“ versucht, um diesen Effekt zu umgehen (quoten des Semikolons mit Backslash, Zeichen im String doppelt hinschreiben, Zeichen oder String mit einfachen Hochkommas schützen… usw), aber leider alles ohne Erfolg. Der Variableninhalt wurde im IPS-Kernel / Variablen / Evaluate beobachtet und ist als solcher i.O.! Auch in der Designer-Doku steht dazu nichts bei den beiden Objekttypen bzgl. unerlaubter Zeichen oder Workarounds.
Noch fataler wird die Sache, da das offenbar nicht nur bei Objekten vom Typ „Label“, sondern auch bei „Edit“-Objekten vorkommt. D.h. Eingaben „mit Semikolon im Text“ führen dazu, dass auch hier im Texteingabefeld der Text ab Semikolon abgehackt wird, der Inhalt aber sehr wohl komplett mit dem Teil ab Semikolon in der Stringvariable steht! (gleiche String-Variable bei Properties/Text und bei Events/onChange verknüpft) Ergo steht in der Variable etwas anderes, als das Angezeigte, was ziemlichen Ärger machen kann. Bzw. sportlich gesehen macht sowas eine Fehlersuche doch wieder echt spannend…
=================
Hmmm. Und weil wir gerade dabei sind, gleich noch einer. Ok, erheblich harmloser, aber doch WAF-kritisch, weil „das geht doch nich! viel zu technisch, merk ich mir doch nie…“
Dass man zwischen mehreren Edit-Eingabefeldern mit Tab weiterspringen kann, ist echt toll.
Das ein geänderter Inhalt eines Edit-Feldes trotz Event „onChange“ bei Weiterschaltung per Tab NICHT in die Variable übernommen wird, ist dagegen fatal.
Immer erst zwingend Enter drücken, werd ich meinen Mädels nie beigebracht bekommen (die ansonsten dank Chaterfahrung usw. jede Hotkey inzwischen im Genpool aufgenommen haben, also Tab sehr wohl kennen…)
Ok, die sollen nicht an den DB-Configs drehen, sehr wohl aber künftig an anderen Stellen (z.B. eigenen Text-Prefix für die Alarm-SMS, wenn im eigenen Zimmer mal wieder per Fenster die Temperatur geregelt wurde, und deshalb die Jalousie zwangweise runterfährt / errechneter Heizkostenverlust=Taschengeldabzug mitgeteilt wird )
Gruß Gerd