Autor Thema: [gelöst] DialogBox über Button in Dokument öffnen funktioniert nicht  (Gelesen 3365 mal)

Offline LordKiri

  • Senior Mitglied
  • ****
  • Beiträge: 252
  • aka Andreas
Hallo zusammen,

Notes 8.5.2 FP1

ich möchte aus einem Dokument per LS-Button eine Dialogbox öffnen und bekomme immer diese schöne Fehlermeldung:

"@Befehle und andere UI-Funktionen sind in diesem Kontext nicht erlaubt"

Der Witz dabei ist ich benutze die selbe Funktion in der Mailschablone für die Archivierung und Kategorisierung von Mails und dort funktioniert alles einwandfrei.
Kann mir jemand helfen?

Gruß

Andreas
« Letzte Änderung: 10.01.11 - 15:24:44 von LordKiri »

Offline ascabg

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.697
  • Geschlecht: Männlich
Hallo,

Was macht denn der Code?


Andreas

Offline ata

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
... vermutlich ist das doc im Lesemodus - oder? Dann gibt es die Meldung, da er dann nicht in Felder gehen kann, oder save nur im Edit-Mode geht etc - daher die berechtigte Frage nach dem code...

Toni
Grüßle Toni :)

Offline LordKiri

  • Senior Mitglied
  • ****
  • Beiträge: 252
  • aka Andreas
Das mit dem EditMode wird abgefangen, der Witz ist ich habe gerade auf den Button geklickt und es ging, danach habe ich etwas an der Maske verändert (Validierungsformel) danach gings nicht mehr... hier der Code

Code
Set uidoc = ws.CurrentDocument
stellenBeschr = uidoc.FieldGetText("StellenBez")
	
If Not uidoc.Editmode Then
	uidoc.editmode = True
End If

Set dlgDoc = New NotesDocument(db)
dlgDoc.Form = "dlgprint"
dlgDoc.Stellvertretung = doc.Getitemvalue("Test")
		
Call ws.DialogBox( "dlgprint" , True , False  , True  , False, False , False , "Testdialog", dlgDoc , True, True )

Offline ata

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
... das setzen des EditMode würde ich als erstes machen.

Zitat
stellenBeschr = uidoc.FieldGetText("StellenBez")

würde ich über das Backend machen:

Zitat
stellenBeschr = uidoc.document.StellenBez(0)

Damit sind die Frontend-Befehle nicht im Weg - ein Mischmasch sorgt da manchmal für Verwirrung...

Toni
Grüßle Toni :)

Offline LordKiri

  • Senior Mitglied
  • ****
  • Beiträge: 252
  • aka Andreas
Danke für den Hinweis, habe das soweit berichtigt, aber es funktioniert trotzdem noch nicht.

Ich habe das Ganze jetzt nochmals neu geschriben einfach zum Testen, aber auch das funktioniert nicht:

Code
Dim ws As New notesuiworkspace
Dim ses As New notessession
Dim db As notesdatabase
Dim dlgDoc As notesdocument
	
Set db = ses.CurrentDatabase
	
Set dlgDoc = New NotesDocument(db)
dlgDoc.Form = "dlgprint"

Call ws.DialogBox( "dlgprint" , True , False  , True  , False, False , False , "Test", dlgDoc , True, True )

Offline Peter Klett

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.713
  • Geschlecht: Männlich
Dann würde ich mir mal die Maske dlgprint anschauen, sind da irgendwelche Besonderheiten drin, vielleicht in den Events wie PostOpen, PostRecalc usw. oder in den Feldern?

Offline LordKiri

  • Senior Mitglied
  • ****
  • Beiträge: 252
  • aka Andreas
Ich habe das Problem gefunden, vielen Dank für alle Hinweise und Antworten.

In der Dialogmaske waren die @Befehle des OK-Buttons im Fenstertitel drin und das das nicht funktionieren kann ist auch klar... Ich weiß nur nicht wie die dahin gekommen sind, aber definitiv nicht mit Absicht....

Nochmals besten Dank für eure Antworten und auch für eure Geduld ;)

Gruß

Andreas

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz