Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: ln-tg am 08.02.05 - 16:54:58

Titel: Dialogbox wird unerlaubt refreshed?!
Beitrag von: ln-tg am 08.02.05 - 16:54:58
Hallo Notes Forum,

ich habe ein Phänomen/Problem mit einer Workspace.Dialogbox.

Diese wird aus einem Agenten folgendermaßen generiert:

Code
 flag=ws.DialogBox("formname", False,False , ,False,False,False,"Bezeichung",doc)      
 If flag = False Then 
        Exit Sub
End If

In dem Form welches geöffnet werden soll sind mehrere Felder vorhanden, welche
versteckt sind(über Absatz verbergen wenn Formel wahr), wenn die Formel unwahr ist. Soweit funktioniert dies auch.

Wenn ich allerdings die Felder sehen möchte und den Status auf wahr setze, dann werden diese kurz angezeigt und sofort wieder gelöscht. Es sieht so aus als wenn er einen Refresh macht. ::) Nur wo kommt dieser her?

Gibt es noch bestimmte Optionen welche ich einstellen soll?

Danke für eure Ideen und Tips.

Gruß
Thomas
Titel: Re: Dialogbox wird unerlaubt refreshed?!
Beitrag von: Glombi am 08.02.05 - 17:13:06
Auf den ersten Blick würde ich sagen, es muss so heissen:

flag=ws.DialogBox("formname", False,False , false,False,true,False,"Bezeichung",doc) 

noFieldUpdate
Boolean. Optional. Specify True if to not pass any edits from the dialog box to the underlying document (for example, if you're passing the edits somewhere else in a Queryclose script for the dialog box form). Otherwise, the edits are passed to the underlying form.

Andreas

P.S.: Willkommen im Forum  :)
Titel: Re: Dialogbox wird unerlaubt refreshed?!
Beitrag von: ln-tg am 08.02.05 - 17:19:58
Danke, dies hatte ich schon probiert. ;) Hätte ich noch dazu schreiben können/sollen. Nur funktioniert dies genauso wenig.
Titel: Re: Dialogbox wird unerlaubt refreshed?!
Beitrag von: Thomas Schulte am 08.02.05 - 17:22:47
Mit welcher 4.x Version arbeitest du denn? Da gab es mal einen Fehler der zu dem beschriebenen Effekt geführt hat.
Titel: Re: Dialogbox wird unerlaubt refreshed?!
Beitrag von: koehlerbv am 08.02.05 - 17:23:37
Wie verhält sich die Maske denn, wenn Du sie nicht als Dialogbox, sondern "normal" verwendest ?
Irgendwie sieht das danach aus, dass sich da Felder wertemässig gegenseitig beeinflussen.

Bernhard
Titel: Re: Dialogbox wird unerlaubt refreshed?!
Beitrag von: Glombi am 08.02.05 - 17:25:29
Ich verwende diese Konstellation - zeige aktuelles Backend-Dokument in Dialogbox an - nicht. Stattdessen erstelle ich ein temporäres Dokument und zeige dieses in der Dialogbox an. Anschließe "vererbe" ich programmatisch, d.h. ich weiß was passiert  ;)

Bps:.
... dim + set der üblichen Sachen...
dim dialogdoc as NotesDocument
set dialogdoc = db.CreateDocument

'Vererbe in Dialog (optional)
dialogdoc.Feld1 = doc.Feld1

'Zeige DIalog an
ret = ws.Dialogbox( ...., dialogdoc)

' "Vererbe" aus Dialog
doc.Feld2 = dialogdoc.Feld2

Andreas
Titel: Re: Dialogbox wird unerlaubt refreshed?!
Beitrag von: koehlerbv am 08.02.05 - 17:26:57
Aber ums Vererben scheint es hier ja nicht zu gehen, Andreas. Das "mit den Händen aufbauen und gleich wieder mit dem Hintern einreissen" passiert doch - wenn ich es richtig lese - alles in der Dialogbox.

Bernhard
Titel: Re: Dialogbox wird unerlaubt refreshed?!
Beitrag von: ln-tg am 08.02.05 - 17:27:21
Die Version ist 4.6.7 von April 2000. Diese ist vorläufig für die nächsten 2 Jahre auch noch Zwangsbedingung danach gibt es Version 6 oder 7.

Falls es dieser Bug sein sollte, habt ihr eine andere Idee?

Ich könnte zwar anfangen dafür andere Masken zu verwenden, nur mache ich dann aus einer Maske 5 und muss die nachfolgenden Auswertungensagenten auch anpassen, was es unnötig verkomplizieren würde.
Titel: Re: Dialogbox wird unerlaubt refreshed?!
Beitrag von: Thomas Schulte am 08.02.05 - 17:33:52
Also es gibt zwei mögliche Ansatzpunkte. Der eine ist der von Bernhard, das irgendwelche Abhängigkeiten in der Maske da sind. Dem würde ich als erstes nachgehen. Alle Hidewhens rausnehmen, sämtliche versteckten Felder anzeigen. Und wenn da alles sauber ist, dann Stück für Stück wieder einbauen.
Der zweite ist das es tatsächlich dieser "Bug" ist. Bei Statusänderungen mit HideWhen sind da Daten verloren gegangen, weil er tatsächlich neu initialisiert hat. Dann muss ich mir mal eine ganz alte Anwendung raussuchen (hoffentlich habe ich die noch) und nachschauen wie wir das damals umgangen haben.
Titel: Re: Dialogbox wird unerlaubt refreshed?!
Beitrag von: Glombi am 08.02.05 - 17:34:52
Aber ums Vererben scheint es hier ja nicht zu gehen, Andreas. Das "mit den Händen aufbauen und gleich wieder mit dem Hintern einreissen" passiert doch - wenn ich es richtig lese - alles in der Dialogbox.

Bernhard
Aha, ln-tg alias Thomas - Ist das so?

Andreas
Titel: Re: Dialogbox wird unerlaubt refreshed?!
Beitrag von: Glombi am 08.02.05 - 17:36:07
Die Version ist 4.6.7 von April 2000. Diese ist vorläufig für die nächsten 2 Jahre auch noch Zwangsbedingung danach gibt es Version 6 oder 7.

Falls es dieser Bug sein sollte, habt ihr eine andere Idee?

Ich könnte zwar anfangen dafür andere Masken zu verwenden, nur mache ich dann aus einer Maske 5 und muss die nachfolgenden Auswertungensagenten auch anpassen, was es unnötig verkomplizieren würde.
In 2 Jahren solltet Ihr dann aber auf Notes 7 oder besser Notes 8 gehen, ansonsten habt ihr wieder was angestaubtes auf dem Rechner...

Andreas
Titel: Re: Dialogbox wird unerlaubt refreshed?!
Beitrag von: ln-tg am 08.02.05 - 17:50:16
Ich habe nun eine Aktion erstellt, welche das Formular aufruft. Das Feld welches ursprünglich ein berechnetes Textfeld ist habe ich auf ein Schlüsselwortfeld mit den Werten "Ja" und "Nein" geändert. Nach dem Aufruf der Maske und dem setzen des Feldes auf "Ja" werden die versteckten Felder angezeigt.

Wenn ich dies allerdings über die Aktion mit dem Agenten aufrufe und die Werte übergebe sehe ich in der Dialogbox für x/10 Sekunden und dann sieht es aus als wenn irgendetwas einen refresh veranlasst und die Felder sind gelöscht/unsichtbar.

Ich werde jetzt evtl. mal den Tip von Thomas befolgen und die restlichen versteckten Felder anzeigen lassen. Dürften so 5 Stück sein.  ;D

Eine Vererbung ist es nicht, da die Werte als String übergeben werden.
Titel: Re: Dialogbox wird unerlaubt refreshed?!
Beitrag von: ln-tg am 08.02.05 - 19:12:49
Danke für eure Tips, ich habe das Dokument nun behandelt, also Felder hin und her verschoben. Bin somit ein ganzes Stück weiter. Grundsätzlich zeigt oder zeigt er die Felder nun nicht an.

Allerdings hab ich nun das nächste Problem mit der Option autoHorzFit