Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: TomLudwig am 01.12.03 - 09:22:59

Titel: LS Dialogbox Werteübergabe
Beitrag von: TomLudwig am 01.12.03 - 09:22:59
Hi,
ich habe 2 Masken die beide das gleiche Feld (Optionsschaltfläche mit 3 Werten) beinhalten (wurde per Copy/Paste eingefügt). Nun soll in per DialogBox das Feld geändert werden. Funktioniert aber nicht.

Hier der eingesetzte Quellcode:

Sub Click(Source As Button)
   Dim doc As NotesDocument
   Dim uiwork As New NotesUIWorkspace
   Dim uidoc As NotesUIDocument
   Dim flag As Variant
   
   Set uidoc = uiwork.CurrentDocument   
   Set doc = uidoc.Document
   flag = uiwork.DialogBox( "Groesse", True, True, True, True, True, False, "Auswahl Größe", doc, True, False)   
End Sub
Titel: Re:LS Dialogbox Werteübergabe
Beitrag von: meichhorner am 01.12.03 - 09:29:44
Hy,

wie wärs am Schluss noch mit uidoc.save  ;)

Cu
Martin
Titel: Re:LS Dialogbox Werteübergabe
Beitrag von: TomLudwig am 01.12.03 - 10:19:43
Ich möchte das Document noch nicht speichern.
Ich möchte dass, das Feld zur "Laufzeit" schon geändert wird um dann es für weitere Berechnungen abzufragen.

Dann kann der Benutzer immernoch entscheiden ob er es speichern will oder nicht.
Titel: Re:LS Dialogbox Werteübergabe
Beitrag von: meichhorner am 01.12.03 - 10:32:54
So funktionierts  ;)

Code
Dim doc As NotesDocument
   Dim uiwork As New NotesUIWorkspace
   Dim flag As Variant
   
flag = uiwork.DialogBox( "Grösse", True, True, True, True, False, False, "Auswahl Grösse")   

Wenn du das CurrentDocument nimmst brauchst du das doc nicht anzugeben.

Cu
Martin
Titel: Re:LS Dialogbox Werteübergabe
Beitrag von: TomLudwig am 01.12.03 - 10:41:35
Ich wähle eine Optionsschaltfläche in der Dialogbox aus und es wird leider noch nicht übernommen ins Hauptdokument. Auch wenn ich die Dialobox ohne "doc" öffne... Was mache ich falsch?

flag = uiwork.DialogBox( "Groesse", True, True, True, True, True, False, "Auswahl Größe", , True, False)
Titel: Re:LS Dialogbox Werteübergabe
Beitrag von: Axel am 01.12.03 - 10:49:05
Hi,

meines Erachtens kann das nicht gehen, da anscheinend die eigentliche Maske und die Dialogbox 2 verschiedene Masken sind.

Versuch's mal so:

Sub Click(Source As Button)
   dim session As New NotesSession
   Dim db As NotesDatabase
   Dim doc As NotesDocument
   Dim docdlg As NotesDocument
   Dim uiwork As New NotesUIWorkspace
   Dim uidoc As NotesUIDocument
   
   Set db = session.CurrentDatabase
   Set uidoc = uiwork.CurrentDocument  
   Set doc = uidoc.Document

   Set docdlg = New NotesDocument(db)
   If uiwork.DialogBox( "Groesse", True, True, True, True, True, False, "Auswahl Größe", docdlg, True, False) Then
      doc.Feldname = docdlg.Feldname
   Else
       'Es wurde im Dialog auf Abbrechen geklickt
   End If
     
End Sub

Die Feldnamen mußt du natürlich anpassen.

Axel
 
Titel: Re:LS Dialogbox Werteübergabe
Beitrag von: TomLudwig am 01.12.03 - 11:02:00
War wieder nix.

Ich habs mir im Debugger angeschaut und in "docdlg" sind gar keine Items vorhanden. Normalerweise müsste doch das Feld Größe wenigstens angezeigt werden.

Hat jemand noch einen anderen Vorschlag?
Titel: Re:LS Dialogbox Werteübergabe
Beitrag von: meichhorner am 01.12.03 - 11:05:45
 ??? ??? ::)

Also das geöffnet Dokument und die Dialogbox verwenden unterschiedliche Masken ???

Also bei mir funktioniert das einwandfrei auch wenn ich zwei verschiedene Masken verwende.

Cu
Martin
Titel: Re:LS Dialogbox Werteübergabe
Beitrag von: TomLudwig am 01.12.03 - 11:08:14
Ja, es sind zwei unterschiedliche Masken in den beiden das selbe Feld vorhanden ist.

Die Felder sind Optionsschaltflächen. Kann dass, das Problem sein?
Titel: Re:LS Dialogbox Werteübergabe
Beitrag von: meichhorner am 01.12.03 - 11:13:51
Nein, nein, nein  :o

Das muss funktionieren.

1.Du hast dein Dokument mit der Optionsschaltfläche "XY" im Bearbeitungsmodus mit der Maske "A" geöffnet.
2. Du klickst in diesem Dokument auf deinen Button mit meinem Script und das Dokument wird mit der Maske "B" geöffnet.
(Diese Maske muss natürlich eine Optionsschaltfläche haben die genau gleich ist wie in Maske "A")
3.Dort wählst du einen Wert der Optionsschaltfläche aus und bestätigst mit ok und der Wert wird in das Dokument übernommen.

Cu
martin
Titel: Re:LS Dialogbox Werteübergabe
Beitrag von: TomLudwig am 01.12.03 - 11:24:05
Ich füg jetzt mal die nsf ein. Dann kannst dus dir selber mal kurz anschauen. Wäre echt dankbar. Es funktioniert nicht....

Titel: Re:LS Dialogbox Werteübergabe
Beitrag von: meichhorner am 01.12.03 - 11:32:25
Schick mir deine e-Mail mit einer PM dann sende ich die die überarbeitete Version zu :)

Cu
Martin
Titel: Re:LS Dialogbox Werteübergabe
Beitrag von: Axel am 01.12.03 - 12:06:06
Hi,

kannst du die Lösung auch mal posten. Würde mich auch interessieren.


Axel
Titel: Re:LS Dialogbox Werteübergabe
Beitrag von: TomLudwig am 01.12.03 - 12:22:10
Ich war so intelligent und habe beim Parameter NoFieldUpdate True übergeben....

Danke Danke Danke......  :-[
Titel: Re:LS Dialogbox Werteübergabe
Beitrag von: meichhorner am 01.12.03 - 12:39:54
Ja genau  ;D und wie gesagt das doc brauchst du in dieser Situation nicht mitgeben ;)

Cu
Martin