Skriptfehler behandeln
- embl-structures
- Beiträge: 327
- Registriert: 13 Jan 2010, 18:41
- Wohnort: Heidelberg
- Kontaktdaten:
Skriptfehler behandeln
Hallo,
zwei Fragen zu Skriptfehleren (damit meine ich Syntaxfehler u.ae.):
a) Bei einem solchen Fehler erhalte ich - bei Default-Einstellungen - die Meldung, es sei ein Syntaxfehler aufgetreten mit den Optionen "OK" und "Exit". Leider macht es keinerlei Unterschied, welchen Knopf ich druecke: Das Skript laeuft auf jeden Fall weiter. Mache ich was falsch oder ist das ein Bug? (WInst Version 4.11.2.9, war aber "schon immer" so)
b) Wie kann ich Skriptfehler abfangen? Auch wenn ein Syntaxfehler auftritt, wird das Produkt am Ende als "installiert" gekennzeichnet. Evtl. loest sich das Problem mit der Beantwortung von a).
Gruss
frank
zwei Fragen zu Skriptfehleren (damit meine ich Syntaxfehler u.ae.):
a) Bei einem solchen Fehler erhalte ich - bei Default-Einstellungen - die Meldung, es sei ein Syntaxfehler aufgetreten mit den Optionen "OK" und "Exit". Leider macht es keinerlei Unterschied, welchen Knopf ich druecke: Das Skript laeuft auf jeden Fall weiter. Mache ich was falsch oder ist das ein Bug? (WInst Version 4.11.2.9, war aber "schon immer" so)
b) Wie kann ich Skriptfehler abfangen? Auch wenn ein Syntaxfehler auftritt, wird das Produkt am Ende als "installiert" gekennzeichnet. Evtl. loest sich das Problem mit der Beantwortung von a).
Gruss
frank
Re: Skriptfehler behandeln
Hi,
das ist ein wenig knifflig.
Historisch wurde davon ausgegangen, dass Scriptfehler schon während der Produktintegration vollständig vermieden werden.
Das ist auch meiner Meinung nach nicht mehr haltbar.
Der Unterschied zwischen Ok und Exit führt intern schon zu unterschiedlichen Rückgabewerten. Die Beobachtung das es keinen Unterschied macht kann ich aus der Praxis bestätigen. Im Code muss ich mir sehr detailliert anschauen was da passiert.
Mein Vorschlag zum Handling wäre:
- Jede Syntaxfehlermeldung landet auch in der Logdatei.
- Jede Syntaxfehlermeldung erhöht den Fehlercounter.
- Jede Syntaxfehlermeldung ist ein FatalError.
Soweit es hier Zustimmung (und keine massiven Proteste) zu diesem Vorgehen gibt, werde ich das in der Version 4.11.3.2 umsetzen.
gruß
d.oertel
das ist ein wenig knifflig.
Historisch wurde davon ausgegangen, dass Scriptfehler schon während der Produktintegration vollständig vermieden werden.
Das ist auch meiner Meinung nach nicht mehr haltbar.
Der Unterschied zwischen Ok und Exit führt intern schon zu unterschiedlichen Rückgabewerten. Die Beobachtung das es keinen Unterschied macht kann ich aus der Praxis bestätigen. Im Code muss ich mir sehr detailliert anschauen was da passiert.
Mein Vorschlag zum Handling wäre:
- Jede Syntaxfehlermeldung landet auch in der Logdatei.
- Jede Syntaxfehlermeldung erhöht den Fehlercounter.
- Jede Syntaxfehlermeldung ist ein FatalError.
Soweit es hier Zustimmung (und keine massiven Proteste) zu diesem Vorgehen gibt, werde ich das in der Version 4.11.3.2 umsetzen.
gruß
d.oertel
Vielen Dank für die Nutzung von opsi. Im Forum ist unser Support begrenzt.
Für den professionellen Einsatz und individuelle Beratung empfehlen wir einen Support-Vertrag und eine Schulung.
Gerne informieren wir Sie zu unserem Angebot.
uib GmbH
Telefon: +49 6131 27561 0
E-Mail: sales@uib.de
- embl-structures
- Beiträge: 327
- Registriert: 13 Jan 2010, 18:41
- Wohnort: Heidelberg
- Kontaktdaten:
Re: Skriptfehler behandeln
Es geht ja nicht nur um die fertigen produktiven Pakete sondern auch um diejenigen, die noch im Aufbau sind und dementsprechend noch Fehler haben koennen. Auch da ist es unerwuenscht, dass die Software als bereits installiert gekennzeichnet und das Skript als erfolgreich abgelaufen markiert sind, wenn sie es nicht ist.d.oertel hat geschrieben:[...] Historisch wurde davon ausgegangen, dass Scriptfehler schon während der Produktintegration vollständig vermieden werden.
Das ist auch meiner Meinung nach nicht mehr haltbar.
Ich wuerde dies sehr unterstuetzen. Vielen Dankd.oertel hat geschrieben:[...]
Mein Vorschlag zum Handling wäre:
- Jede Syntaxfehlermeldung landet auch in der Logdatei.
- Jede Syntaxfehlermeldung erhöht den Fehlercounter.
- Jede Syntaxfehlermeldung ist ein FatalError.
Soweit es hier Zustimmung (und keine massiven Proteste) zu diesem Vorgehen gibt, werde ich das in der Version 4.11.3.2 umsetzen.
Frank Thommen
- embl-structures
- Beiträge: 327
- Registriert: 13 Jan 2010, 18:41
- Wohnort: Heidelberg
- Kontaktdaten:
Re: Skriptfehler behandeln
Der - m.E. - Fehler, dass bei Klicken von "Exit" im Syntaxfehlerdialog das Skript nicht sofort abbricht sondern noch "eine Weile" weiterlaeuft besteht immer noch. Was die "eine Weile" ist, ist mir aber unklar und erschwert Debugging und die Skriptentwicklung.d.oertel hat geschrieben:[...]
Der Unterschied zwischen Ok und Exit führt intern schon zu unterschiedlichen Rückgabewerten. Die Beobachtung das es keinen Unterschied macht kann ich aus der Praxis bestätigen. Im Code muss ich mir sehr detailliert anschauen was da passiert.
[...]
Gruss
frank
Re: Skriptfehler behandeln
Auch wenn der Thread veraltet ist:d.oertel hat geschrieben:Hi,
Mein Vorschlag zum Handling wäre:
- Jede Syntaxfehlermeldung landet auch in der Logdatei.
- Jede Syntaxfehlermeldung erhöht den Fehlercounter.
- Jede Syntaxfehlermeldung ist ein FatalError.
Soweit es hier Zustimmung (und keine massiven Proteste) zu diesem Vorgehen gibt, werde ich das in der Version 4.11.3.2 umsetzen.
gruß
d.oertel
Solange sich dieses Verhalten global auch deaktivieren lässt ist das ja in Ordnung.
Wir arbeiten viel mit libs die mehrfach included werden was gewollt zu mehrfachen Definition von Variablen führt. Da das als Syntax-Error gehandelt wird würde uns das komplett lahmlegen und wir müssten alles umbauen.
Edit:
Für uns müsste das nicht Global sein da wir in jedem script eine globalvars.opsiscript includen die z.B ScriptErrorMessages=off enthält. Die Frage ist ob andere auch solche Strukturen pflegen.
Ich würde dazu raten das Verhalten per default zu lassen wie es ist mit einem zusätzlichen Scriptparameter z.B SyntaxErrorIsFatalError=true/false
- embl-structures
- Beiträge: 327
- Registriert: 13 Jan 2010, 18:41
- Wohnort: Heidelberg
- Kontaktdaten:
Re: Skriptfehler behandeln
Der Thread is insofern nicht veraltet, als das im urspruenglichen Post unter Punkt a) genannte Problem/Feature immer noch existiert resp. fuer mich nicht erklaert ist: Warum laeuft ein Skript nach einem per Dialog gemeldeten Fehler "eine Weile" weiter, trotzdem der "Exit"-Knopf gedrueckt worden ist. Das sollte m.E. nicht sein.dkoch hat geschrieben:[...]
Auch wenn der Thread veraltet ist:
frank