Lotus Notes / Domino Sonstiges > Help-Desk Applikation !!Help!!
Red Screen Problem
eknori:
ich glaube, ich habe das Problem mit dem RSOD beim Wechsel von einem Frameset in einen anderen gelöst.
Durch zahlreiche Versuche kristallisierte sich heraus, daß offensichtlich die Funktion @SetTargetFrame in Verbindung mit der Option _top der Übeltäter ist.
Ich habe jetzt den Code in den Aktionen derart geändert, daß ich @SetTargetFram("_top") durch
ein simples @Command( [CloseWindow] ) ; ersetzt habe.
Der Code in den Actions der Navigation sieht nun folgendermaßen aus:
_defaultNewFrame := @UpperCase(@DbLookup( "" : "NoCache" ; "":"" ; "($LUConfig)" ; "AlwaysOpenNewNavigationFrame" ; 2;[FailSilent] ));
@If(_defaultnewFrame!="YES";
@Do(
@Command( [CloseWindow] ) ;
@Command([OpenFrameset]; "FS-CLOSEDTICKETS"));
@Command([OpenFrameset]; "FS-CLOSEDTICKETS"))
Die Aktionen, mit denen ich den Fehler reproduzieren konnte, funktionieren jetzt sauber. Ich habe es jetzt gut und gerne 100 mal durchgespielt, ohne einen einzigen RSOD.
koehlerbv:
Hut ab, Ulrich - das ist eine wahre Detektivarbeit. Ich habe gerade selber sowas durch: Unter bestimmten Umständen führt NotesView.AllEntries (was für eine simple Methode - eigentlich) unter R6 zu einer RBOD. Der bestimmte Umstand war ... der Zugriff auf einen Server R5.0.8 (in einer fremden Domäne, also nicht vermeidbar).
Teilst Du Deinen "Fund" IBM mit ?
Bernhard
eknori:
es gibt da leider noch eine kleine Einschränkung:
Die Datenbank muss die letzte im Datenbankswitcher sein. Duch das CloseWindows erhält sonst eine andere Datenbank den Focus und da sind die Framesetzt logischerweise nicht vorhanden, die im Anschluss geöffnet werden sollen.
Also ist die "Lösung" auch nur wieder ein Würgaround mit Haken und Ösen.
Allen Leidgeplagten kann ich daher nur empfehlen den Parameter "AlwaysOpenNewNavigationFrame" auf "YES" zu setzen. Da taucht der RSOD nicht auf und die Datenbank kann an beliebiger Stelle stehen.
möglicherweise gibt es aber noch eine andere Lösung um @SetTargetFrame zu vermeiden; werde mir jetzt mal ansehen, welche Möglichkeiten LS dafür bietet ...
--- Zitat ---Teilst Du Deinen "Fund" IBM mit ?
--- Ende Zitat ---
erst mal sehen, mit welcher Lösung die rüberkommen ;D
eknori:
ich krieg' die Motten.
Irgendwie lässt mich dieser @SetTargetFrame nicht los.
Komischerweise funktioniert das switchen zwischen den Framesets mit folgender Formel ohne Red Box
_defaultNewFrame := @UpperCase(@DbLookup( "" : "NoCache" ; "":"" ; "($LUConfig)" ; "AlwaysOpenNewNavigationFrame" ; 2;[FailSilent] ));
@If(_defaultnewFrame!="YES";
@Do(
@SetTargetFrame("_top");
@Command([CloseWindow]);
@Command([OpenFrameset]; "FS-CLOSEDTICKETS"));
@Command([OpenFrameset]; "FS-CLOSEDTICKETS"))
während
_defaultNewFrame := @UpperCase(@DbLookup( "" : "NoCache" ; "":"" ; "($LUConfig)" ; "AlwaysOpenNewNavigationFrame" ; 2;[FailSilent] ));
@If(_defaultnewFrame!="YES";
@Do(
@SetTargetFrame("_top");
@Command([OpenFrameset]; "FS-CLOSEDTICKETS"));
@Command([OpenFrameset]; "FS-CLOSEDTICKETS"))
die Box zuverlässig auf das Display zaubert.
Obiger Code löst auch das Problem der Positionierung der Datenbank im Datenbank Switcher ...
To be continued
eknori:
was auch immer da Notes intern abgeht, aber es scheint wirklich die Lösung des Problems zu sein. Meine Tochter und ein Nachbar ( User ) klicken jetzt seit gut einer halben Stunde wie wild in der Navigation rum ohne eine einzige RBOD zu erhalten.
erklären kann ich mir das nur damit, daß @SetTargetFrame in Version 5 eingeführt wurde und CloseWindows erst in Version 6. Möglicherweise wird durch das Hintereinanderschalten der Befehle ein Problem im SetTargetFrame gefixt.
( allocated memory, irgendwelche handles oder sonstiger fetziger stuff )
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln