Autor
|
Thema: Event bei Namensänderung (1240 mal gelesen)
|
Strohli Mitglied
Beiträge: 860 Registriert: 20.09.2002
|
erstellt am: 17. Sep. 2012 17:14 <-- editieren / zitieren --> Unities abgeben:
Hallo, gibt es eine Möglichkeit beim Umbenennen des Namens eines Objektes zu reagieren? Es gibt ja verschiedene Scriptfunktionen, OnSave z.B. würde bei jedem Speichern reagieren, auch wenn sich ein anderes Attribut ändert. Vielen Dank im vorraus für die zahlreichen Hinweise..... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Comos User Mitglied
Beiträge: 112 Registriert: 23.03.2010
|
erstellt am: 18. Sep. 2012 10:09 <-- editieren / zitieren --> Unities abgeben: Nur für Strohli
Hi, scheints wir sind hier die einzigen COMOS geplagten
Zitat: Original erstellt von Strohli: gibt es eine Möglichkeit beim Umbenennen des Namens eines Objektes zu reagieren?
Genaugenommen nicht. OnCheck bzw. BeforeCheck werden zwar aufgerufen aber: 1. erst vorm speichern und zwischen umbenennen und speichern kann doch so einiges passieren 2. der Aufruf erfolgt auch wenn sich der name garnicht geändert hatt (sondern andere Eigenschaften). Zitat: Original erstellt von Strohli:Vielen Dank im vorraus für die zahlreichen Hinweise.....
Da ich nicht weiß was du vorhast ist es mit den Hinweisen schwer. Gruß Peter Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Strohli Mitglied
Beiträge: 860 Registriert: 20.09.2002
|
erstellt am: 18. Sep. 2012 17:07 <-- editieren / zitieren --> Unities abgeben:
Hallo, danke Dir für die Antwort. Ich möchte vor dem Speicherm einen externen Trigger zur Namensprüfung aufrufen. Bei Attributen kann man leichter erkennen, ob eine Änderung stattgefunden hat. Man könnte den Namen natürlich auch über ein Attribut editierbar machen und die Comos-Maske ausblenden, suche aber eine andere Lösung.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Comos User Mitglied
Beiträge: 112 Registriert: 23.03.2010
|
erstellt am: 19. Sep. 2012 08:18 <-- editieren / zitieren --> Unities abgeben: Nur für Strohli
Moin Stohli, Zitat: Original erstellt von Strohli: Ich möchte vor dem Speicherm einen externen Trigger zur Namensprüfung aufrufen.
Hierfür ist OnCheck bzw. BeforCheck durchaus geeignet. Üblicherweise ist es bei der Früfung ja unerheblich wie der alte Name war bzw. ob er überhaupt geändert wurde. Es sei denn die Prüfung ist so aufwendig, dass sie wirklich nur bei erfolgter Änderung stattfinden soll. Zitat: Original erstellt von Strohli: Bei Attributen kann man leichter erkennen, ob eine Änderung stattgefunden hat.
Wenn du genau auf eine Änderung triggern willst, gilt das im 1. Posting gesagte, mit dem Zusatz, wenn die Änderung im Dialog (Eigenschaftenmaske) erfolt wird die Prüfung sofort beim verlassen des Editierfeldes aufgerufen. Aber halt auch bei jeder andern Änderung einer Eigenschaft. Mir ist jetzt noch nicht ganz klar warum du zur Prüfung vor dem Speichern unbedingt auf die Änderung triggern mußt? Zitat: Original erstellt von Strohli: Man könnte den Namen natürlich auch über ein Attribut editierbar machen und die Comos-Maske ausblenden
ganz schlecht: der Name kann ja nicht nur über die Maske geändert werden und beim syncronisieren mit dem Attribut stehts du vor dem selben Problem (erkennen der Änderung) Gruß Peter
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Strohli Mitglied
Beiträge: 860 Registriert: 20.09.2002
|
erstellt am: 19. Sep. 2012 08:36 <-- editieren / zitieren --> Unities abgeben:
Hi, werde mal die Sache ausprobieren, dasnke für Deine Hinweise. Zu Deiner Frage: Mir ist jetzt noch nicht ganz klar warum du zur Prüfung vor dem Speichern unbedingt auf die Änderung triggern mußt?
Vor dem Speichern wäre halt sinnvoll, weil wenn der externe Trigger sagt "Name nicht erlaubt" soll es ja nicht umbenannt werden. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Comos User Mitglied
Beiträge: 112 Registriert: 23.03.2010
|
erstellt am: 19. Sep. 2012 10:10 <-- editieren / zitieren --> Unities abgeben: Nur für Strohli
|
COMOS Consultant Mitglied
Beiträge: 2 Registriert: 05.03.2013
|
erstellt am: 05. Mrz. 2013 15:57 <-- editieren / zitieren --> Unities abgeben: Nur für Strohli
Seit COMOS Version 9.2 gibt es das Event "OnPropertyChanged". Hierdurch ist es möglich auf die Änderung einer Objekteigenschaft (wie beispielsweise Name, Kennzeichen, Beschreibung) spezifisch zu reagieren. Über den ScriptHelper kann hierbei die Art der Änderung (z. B. "Name") geprüft werden, um dann basierend auf dieser (und nur dieser) Änderung einen entsprechenden Prüfmechanismus zu starten. Schlägt dieser Prüfmechanismus fehl, kann ebenfalls über den ScriptHelper der zuvor gesetzte Wert (OldValue) abgefragt werden und die Eigenschaft wieder auf den vorherigen Wert zurückgesetzt werden.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |