Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: LisaS am 29.03.06 - 11:53:33

Titel: Globales Script in Subform?
Beitrag von: LisaS am 29.03.06 - 11:53:33
Hallo,
ich habe einen Fall, bei dem ich in einer Subform in jedem feld das selbe Script im Entering ausführen muss.
Wo definiere ich so ein Script global und wie rufe ich dies im Entering-Event auf?
Aus der Hilfe bin ich nicht so recht schlau geworden.

Gruß Hitcher
Titel: Re: Globales Script in Subform?
Beitrag von: Axel am 29.03.06 - 11:59:38
Du kannst die Sub oder Function z.B. in einer Script-Bibliothek halten. Diese Bibliothek bindest du dann unter dem Options - Abschnitt unter den Masken - Globals ein. Du kannst natürlich diese Funktion auch dort ablegen.


Axel
 
Titel: Re: Globales Script in Subform?
Beitrag von: LisaS am 29.03.06 - 12:16:30
Hallo Axel,
da ich diese Script nur in dieser Subform brauche, würde ich dieses gerne direkt einbinden.
Zum Testen möchte ich folgendes Script in den Options der Subform abgelegen.
Code
Dim workspace As New NotesUIWorkspace
	Dim uidoc As NotesUIDocument
	Set uidoc = workspace.CurrentDocument
	Call uidoc.Refresh
Wie würde man das machen?
Wenn ich
Code
Sub Test
....
end sub
mache, dann wird es ja nicht in den Options abgelegt.
Gruß
Hitcher
Titel: Re: Globales Script in Subform?
Beitrag von: ascabg am 29.03.06 - 12:20:12
Hi,

Du kannst in den Options keine Variablen definieren.
(werden sofort in dei Declarations verschoben)

Ausfuehrbaren Code kannst Du ebenfalls nicht in den Options ablegen.

Andreas
Titel: Re: Globales Script in Subform?
Beitrag von: Axel am 29.03.06 - 12:36:52
Wenn du unter Globals im Options-Abschnitt Sub NamederRoutine eingibst, wird die sofort als eigenständige Routine unter Globals angelegt und mit End Sub ergänzt. dort kannst du dann deinen Code einfügen. Diese Routine steht dir dann in der gesamten Maske zur Verfügung.

Axel
Titel: Re: Globales Script in Subform?
Beitrag von: LisaS am 29.03.06 - 12:53:20
Hallo Axel
habe ich jetzt gemacht.
Erscheint auch als extra Routine unter Globals:
Code
Sub test	
	Dim workspace As New NotesUIWorkspace
	Dim uidoc As NotesUIDocument
	Set uidoc = workspace.CurrentDocument
	Call uidoc.Refresh
End Sub
Wenn ich im Entering
Code
Sub Entering(Source As Field)
	Call test
End Sub
oder
Code
Sub Entering(Source As Field)
       test
End Sub
eingebe kommt die Fehlermeldung
Not a Sub or a Funktionname: test
??
Titel: Re: Globales Script in Subform?
Beitrag von: Axel am 29.03.06 - 13:05:03
Ich hab das bei mir mal probiert, funzt einwandfrei.

Bis du in den richtigen Globals (Globals der Maske die die Felder enthält)? Gibt's evt. Teilmasken?


Axel
Titel: Re: Globales Script in Subform?
Beitrag von: LisaS am 29.03.06 - 13:11:07
@Axel:
Ich bin in einer Subform und habe die Routine unter Globals gepackt.
Titel: Re: Globales Script in Subform?
Beitrag von: Axel am 29.03.06 - 13:18:04
Dann geht das natürlich nicht. Der Code muss in der gleichen Maske eingefügt werden, in der auch die Felder enthalten sind.


Axel
Titel: Re: Globales Script in Subform?
Beitrag von: LisaS am 29.03.06 - 13:19:04
Na ja, die felder sind ja in der Subform.... :-:
Titel: Re: Globales Script in Subform?
Beitrag von: LisaS am 29.03.06 - 13:24:56
@all:
Oh mann, in den Options stand kein 'option Public'.
Jetzt funzt es.
Danke an alle, ihr seid spitze ;D
Gruß
Hitcher