Notaus-Schalter

Moderator: ModerationP

Notaus-Schalter

Beitragvon Kerstin83 » 12. Jul 2019, 20:27

Liebes Forum :P :P

Wenn in einem Formular ein Fehler auftritt, gehen die Ereignisse, die an Schaltflächen gebunden sind (zum Teil) verloren. Gibt es die Möglichkeit einen Schalter (Befehlsschaltfläche) zu machen, die das Formular (bzw. die Datenbank) schließt, und die immer funktioniert ? Auch wenn ein Fehler aufgetreten ist.

Liebe Grüße

Kerstin :P
Ich hasse Leute, die Sätze nicht zuende

Tchibo Induktions-Milchaufschäumer
Standby-Betrieb: 18 Watt.
Pro Jahr: 80 kg CO2 (und 30 Euro)

- Ohne Kommentar -
Kerstin83
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 1380
Registriert: 03. Aug 2005, 13:29
Wohnort: Zur Zeit im schönen Berlin

Re: Notaus-Schalter

Beitragvon Bitsqueezer » 13. Jul 2019, 08:20

Hallo Kerstin,

wenn Fehler ordentlich abgefangen werden, geht auch nichts verloren.

Wenn "Fehler" allerdings auf einer Ebene außerhalb von VBA bedeuet, also z.B. der berühmte Netzwerkverbindungsfehler, wenn die Verbindung zum Backend auch nur kurz verlorengeht, was Access dazu bringt, wiederholende Fehlermeldungen zu bringen und man den Taskmanager bemühen muß - dann hilft auch kein Notaus-Schalter mehr, dagegen kann man nichts machen, das ist etwas, was MS (hoffentlich irgendwann mal..) beheben muß.

Ansonsten müßtest Du schon sehr viel genauer sein, was Du Dir vorstellst.

Gruß

Christian
Bitsqueezer
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 7102
Registriert: 21. Jun 2007, 12:17

Re: Notaus-Schalter

Beitragvon mmarkus » 13. Jul 2019, 17:17

Bitsqueezer hat geschrieben: das ist etwas, was MS (hoffentlich irgendwann mal..) beheben muß.



Habs zwar schon mal erwähnt. Bald werde ich es auch mal testen.
Logik zum Wiederholen der ODBC-Verbindung

Da meine Anwendungen fast alle in Terminal Server Sitzungen laufen, aber nicht so ein Thema.
ms access what else
mmarkus
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 1575
Registriert: 16. Apr 2012, 16:07
Wohnort: Oberösterreich

Re: Notaus-Schalter

Beitragvon Bitsqueezer » 13. Jul 2019, 17:42

Hallo Markus,

und es hat auch nur 20 Jahre gedauert...:-)

Ja, hast Du schon mal erwähnt. Allerdings gibt es wohl auch noch nicht viele, die A2019 verwenden, für alle Anderen bleibt das Problem bestehen.

Gruß

Christian
Bitsqueezer
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 7102
Registriert: 21. Jun 2007, 12:17

Re: Notaus-Schalter

Beitragvon Kerstin83 » 13. Jul 2019, 23:29

Ja, hast Du schon mal erwähnt. Allerdings gibt es wohl auch noch nicht viele, die A2019 verwenden, für alle Anderen bleibt das Problem bestehen.

Gut zu wissen. In dem Falle läuft es unter Access 2019. Der Kunde hat für das Programm auf allen Arbeitsplätzen Office 2019.

Aber es geht auch um den Fall, dass ein Fehler vielleicht mal nicht abgefangen wird. Kann ja mal sein.

Kann man den Taskmanager in so einem Fall von Access aus starten ? Und vielleicht auch Access automatisch beenden ?

Liebe Grüße

Kerstin :P
Ich hasse Leute, die Sätze nicht zuende

Tchibo Induktions-Milchaufschäumer
Standby-Betrieb: 18 Watt.
Pro Jahr: 80 kg CO2 (und 30 Euro)

- Ohne Kommentar -
Kerstin83
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 1380
Registriert: 03. Aug 2005, 13:29
Wohnort: Zur Zeit im schönen Berlin

Re: Notaus-Schalter

Beitragvon Bitsqueezer » 14. Jul 2019, 00:49

Hallo Kerstin,

das wäre schon ein toller Trick, wenn Programme, die abgestürzt sind, sich selbst per Taskmanager entfernen...;-)

Wie soll das gehen? Wenn ein Fehler nicht abgefangen wird, dann gibt es ja auch nichts, was reagieren kann. Du könntest natürlich ein Überwachungsprogramm für Access außerhalb der Access-Umgebung programmieren, das den Job übernimmt, aber das wäre schon eine komische Vorgehensweise.

Gruß

Christian
Bitsqueezer
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 7102
Registriert: 21. Jun 2007, 12:17

Re: Notaus-Schalter

Beitragvon Kerstin83 » 14. Jul 2019, 10:11

ok, kann man sich vielleicht eine Verknüpfung auf den Desktop legen, mit der Access beendet wird ?

Ich möchte dem Kunden nicht zumuten, den Taskmanager zu bemühen...
Ich hasse Leute, die Sätze nicht zuende

Tchibo Induktions-Milchaufschäumer
Standby-Betrieb: 18 Watt.
Pro Jahr: 80 kg CO2 (und 30 Euro)

- Ohne Kommentar -
Kerstin83
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 1380
Registriert: 03. Aug 2005, 13:29
Wohnort: Zur Zeit im schönen Berlin

Re: Notaus-Schalter

Beitragvon Bitsqueezer » 14. Jul 2019, 15:40

Hallo Kerstin,

sicher, Du kannst eine Batchdatei entsprechend schreiben, daß sie den Access-Task killt.

https://itler.net/batchbefehl-prozesse-killen-beenden/

Du kannst allerdings nur den Anwendungsnamen oder die PID verwenden, aber nicht genau Deine Datenbankinstanz, wenn da mehr als ein Access läuft. Da braucht es dann schon mehr Programmierung.

Aber ich glaube nicht, daß es noch jemanden gibt, der nicht weiß, wie er den Taskmanager bemühen muß...

Gruß

Christian
Bitsqueezer
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 7102
Registriert: 21. Jun 2007, 12:17

Re: Notaus-Schalter

Beitragvon SGast » 14. Jul 2019, 17:17

Hallo,
ich kann es mir praktisch nicht so recht vorstellen, dass Access ohne direkte Ursache (Fehler in Programmierung) einfach "hängen" bleibt.
Ist mir praktisch so noch nicht (regelmäßig) begegnet.
Was passiert denn in diesem Fall, wenn die Datenbank neu aufgerufen/gestartet wird?

Gruß Steffen
SGast
 

Re: Notaus-Schalter

Beitragvon Kerstin83 » 15. Jul 2019, 00:34

ich kann es mir praktisch nicht so recht vorstellen, dass Access ohne direkte Ursache (Fehler in Programmierung) einfach "hängen" bleibt.

Hat hier irgend jemand etwas anderes behauptet ?

Ja, Fehler in der Programmierung. Darum geht es. Aber offensichtlich bin ich die einzige, der auch mal ein Fehler unterläuft. :P
Ich hasse Leute, die Sätze nicht zuende

Tchibo Induktions-Milchaufschäumer
Standby-Betrieb: 18 Watt.
Pro Jahr: 80 kg CO2 (und 30 Euro)

- Ohne Kommentar -
Kerstin83
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 1380
Registriert: 03. Aug 2005, 13:29
Wohnort: Zur Zeit im schönen Berlin

Re: Notaus-Schalter

Beitragvon Bitsqueezer » 15. Jul 2019, 08:31

Hallo Kerstin,

bist Du nicht. Aber ein Programm mitzuliefern, das Access im Fall eines Absturzes aus dem Speicher entfernt, stärkt nicht wirklich das Vertrauen eines Kunden in Dein Programm. Das zeigt nur, daß Du selbst mit häufigen Abstürzen rechnest (selbst wenn das nicht der Fall ist).

Wenn Du konsequent mind. alle fehlerträchtigen Prozeduren mit einer Fehlerbehandlungsprozedur versiehst, sollte ein Access-Absturz kaum je passieren können (mal von Beispielen, die von Access selbst herrühren, abgesehen).

Wenn Du einen Code in einer Prozedur hast, der mit einer MsgBox einen Text ausgibt und nicht mehr macht, braucht es keine Fehlerbehandlung, hier wird nie ein Fehler auftreten. Wenn Du schon mit Recordsets oder DLookup arbeitest, sind schon viele Fehler möglich, also gehört hier immer eine Fehlerbehandlung rein.

Wenn Du Klassenmodule hast, KANN man Fehlerbehandlung einfügen, ist aber nicht notwendig, wenn es darüber eine aufrufende Prozedur gibt, die eine hat. Lediglich das Finden von Fehlern ist mit Fehlerbehandlung in einem Klassenmodul natürlich viel einfacher.

Bei Verwendung einer Access-Anwendung in einer Runtime ist Fehlerbehandlung absolut wichtig, da diese im Fehlerfall meldungslos einfach "klebenbleibt", weil es keinen Code gibt, in die die Runtime dann springen und den Debugger anwerfen könnte.

Gruß

Christian
Bitsqueezer
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 7102
Registriert: 21. Jun 2007, 12:17

Re: Notaus-Schalter

Beitragvon Kerstin83 » 15. Jul 2019, 17:51

Vielen Dank.

Aber ein Programm mitzuliefern, das Access im Fall eines Absturzes aus dem Speicher entfernt, stärkt nicht wirklich das Vertrauen eines Kunden in Dein Programm. Das zeigt nur, daß Du selbst mit häufigen Abstürzen rechnest (selbst wenn das nicht der Fall ist).

Da hast du natürlich recht, war eine blöde Idee.

Ich habe jetzt systematisch, in wirklich allen Ereignissen (auch in den Klassenmodulen) eine Fehlerbehandlung eingefügt. Nach jedem Ereignis gesucht und geschaut, ob es eine ausreichende Errorbehandlung gibt. Wenn nicht, dann habe ich eine reingebastelt, zumindest On Error Resume Next. Zum Glück hatte ich meistens schon eine gemacht.

Jetzt hoffe ich mal, dass das ausreicht.

Liebe Grüße

Kerstin :P
Ich hasse Leute, die Sätze nicht zuende

Tchibo Induktions-Milchaufschäumer
Standby-Betrieb: 18 Watt.
Pro Jahr: 80 kg CO2 (und 30 Euro)

- Ohne Kommentar -
Kerstin83
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 1380
Registriert: 03. Aug 2005, 13:29
Wohnort: Zur Zeit im schönen Berlin

Re: Notaus-Schalter

Beitragvon SGast » 15. Jul 2019, 18:47

Hallo,
zumindest On Error Resume Next
NachmeinerMeinung "ganz schlecht".
Mit diesem Befehl entsteht ein völlig undefinierter Zustand.
Absturz ist Absturz. Aber ein "Augen zu weiter so" provoziert geradezu Datenmüll/Inkonsitenz.

Meine DB's sind nur innerhalb der Firma im Einsatz. Auch gibt es im Normalfall nur RT-Version.
Hier führt jeder unbehandelte LZF zum Absturz. Da weiß man/ich es ist was falsch gelaufen und ich kann/muss reparieren. Aber ein "weiter so" kann zu Datenfehlen führen, welche u.U. erst viel, viel später bemerkt werden.

Gruß Steffen
SGast
 

Re: Notaus-Schalter

Beitragvon benny66 » 15. Jul 2019, 19:13

Hallo Steffen,
...nur innerhalb der Firma im Einsatz. Auch gibt es im Normalfall nur RT-Version...

Kann ich nicht nachvollziehen.
Warum hat die Firma kein Access? Dann hättest du ein Problem weniger.

Obiges (Taskmanager/Batch-Datei ...) betrachte ich als Herumdokterei (s. Christian: "stärkt nicht wirklich das Vertrauen eines Kunden in Dein Programm").
Das müsste Access packen bzw. man muss es damit schaffen. Sonst Finger weg oder?
Gruß Benny
benny66
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 733
Registriert: 22. Nov 2015, 21:56

Re: Notaus-Schalter

Beitragvon Bitsqueezer » 15. Jul 2019, 20:51

Hallo,

kommt immer auf den Fehler an.

Wenn ich zuerst eine Datei mit Kill lösche, um sie dann neu zu erstellen und Kill bringt einen Fehler, wenn die Datei nicht existiert, dann kann ich hier bedenkenlos "On Error Resume Next" verwenden, um den erwarteten Fehler zu übergehen.

Gruß

Christian
Bitsqueezer
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 7102
Registriert: 21. Jun 2007, 12:17

Nächste

Zurück zu Access Forum (provisorisch)

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 6 Gäste

cron