Das Notes Forum

Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: martin72 am 17.12.09 - 09:13:19

Titel: einziges Dokument einer Ansicht automatisch öffnen
Beitrag von: martin72 am 17.12.09 - 09:13:19
Lässt es sich einrichten, dass beim Aufruf einer best. Ansicht automatisch das einzige Dokument dieser Ansicht bzw. das erste Dokument falls mehrere vorhanden sind, geöffnet wird?
Titel: Re: einziges Dokument einer Ansicht automatisch öffnen
Beitrag von: eknori am 17.12.09 - 09:26:09
Postopen Event der Ansicht:

Sub Postopen(Source As Notesuiview)
   Dim session As New NotesSession
   Dim db As NotesDatabase
   Dim workspace As New NotesUIWorkspace
   Dim collection As NotesDocumentCollection
   Dim doc As NotesDocument
   Dim uiview As NotesUIView
   Set db = session.CurrentDatabase
   Set uiview = workspace.CurrentView
   Set collection = db.AllDocuments
   Set doc = collection.GetFirstDocument
   Call uiview.SelectDocument(doc)
   Call workspace.EditDocument(False, doc)
End Sub

(ist übrigens aus der Designer Hilfe kopiert )
Titel: Re: einziges Dokument einer Ansicht automatisch öffnen
Beitrag von: martin72 am 17.12.09 - 09:39:34
Erstmal, guten Morgen und Danke.

Aber, sorry:

"Postopen Event der Ansicht" ist mir noch nicht so geläufig. Wo ist diese Anweisung zu platzieren in der Ansichtsdefinition?

Titel: Re: einziges Dokument einer Ansicht automatisch öffnen
Beitrag von: eknori am 17.12.09 - 09:43:54
im PostOpen event der Ansicht
Titel: Re: einziges Dokument einer Ansicht automatisch öffnen
Beitrag von: martin72 am 17.12.09 - 11:04:59
habs gefunden.

Die Anweisung führt allerdings dazu, dass nicht das erste Dokument dieser Ansicht sondern irgendein Dokument geöffnet wird, das in dieser Ansicht gar nicht enthalten ist.
Titel: Re: einziges Dokument einer Ansicht automatisch öffnen
Beitrag von: ascabg am 17.12.09 - 11:12:56
Hallo,

Dann aender den Code mal folgendermassen ab.

ab
Code
Set uiview = WorkSpace.CurrentView
Set view = uiview.View
Set doc = view.GetFirstDocument
Call Workspace.EditDocument(False, doc)

oder
Code
Set uiview = WorkSpace.CurrentView
Set doc = db.GetDocumentByID(uiview.CaretNoteID)
Call Workspace.EditDocument(False, doc)



Andreas
Titel: Re: einziges Dokument einer Ansicht automatisch öffnen
Beitrag von: BigWim am 17.12.09 - 11:13:21
Und so?

Sub Postopen(Source As Notesuiview)
   Dim session As New NotesSession
   Dim db As NotesDatabase
   Dim workspace As New NotesUIWorkspace
   Dim collection As NotesDocumentCollection
   Dim doc As NotesDocument
   Dim uiview As NotesUIView
   Dim view as NotesView
   Set db = session.CurrentDatabase
   Set uiview = workspace.CurrentView
   Set view = uiview.view
   Set doc = view.GetFirstDocument

   Call uiview.SelectDocument(doc)
   Call workspace.EditDocument(False, doc)
End Sub

Markus
Titel: Re: einziges Dokument einer Ansicht automatisch öffnen
Beitrag von: martin72 am 17.12.09 - 11:20:57
Danke Andreas, hat mit deiner Variante leider nicht geklappt, (Script-Fehler-Meldung)

Danke Markus, hat geklappt.


 :)

Titel: Re: einziges Dokument einer Ansicht automatisch öffnen
Beitrag von: eknori am 17.12.09 - 11:25:14
Und jetzt haben wir wieder den typischen Fall: Fremden Code kopiert, ohne zu verstehen, was der genau macht. Nix gelernt.
Bei mir hat mein Code übrigens funktioniert. Und mit etwas Nachdenken kommt man auch dahinter, warum.

Sorry für den Spruch, ist nicht bös' gemeint; habe nur schlechte Laune im Moment.
Titel: Re: einziges Dokument einer Ansicht automatisch öffnen
Beitrag von: ascabg am 17.12.09 - 11:27:59
Mit welcher von beiden?
Und welche Meldung?


Andreas
Titel: Re: einziges Dokument einer Ansicht automatisch öffnen
Beitrag von: martin72 am 17.12.09 - 11:41:40
@ Andreas

die erste Variante hat nicht geklappt. Hab die zweite jetzt auch noch versucht. Klappt.

Bei der ersten Variante wird beim Speichern der Ansicht ein Script-Fehler in Zeile 10 angemeckert.


@eknori
Mir ist der Hintergrund der Bemerkung "nichts dazugelernt" wohl bewußt. Völlig blöd bin ich aber auch nicht. Selbst wenn ich die ganze Script-Anweisung nicht seziere und problemlos in einer anderen Problemstellung anwenden kann, so ist mir doch zumindest jetzt bewußt, dass das PostOpenEvent eine ganz nützliche Einrichtung ist.

Ja, wirklich. Es gibt Notes-Administratoren, die auch nach 13 Jahren noch nichts von PostOpenEvents gehört haben, weil sie sich auch noch mit anderen Dingen am Arbeitsplatz beschäftigen müssen.

Allein für die PostOpen-Events schon mal ganz herzlichen Dank für die geopferte Zeit an alle hilfsbereiten Forums-Teilnehmer.
Titel: Re: einziges Dokument einer Ansicht automatisch öffnen
Beitrag von: ascabg am 17.12.09 - 11:44:10
Kannst Du mal Deine erste Variante, den Code, posten?
Dann kann ich dir eventuell auch sagen, wo der Hund begraben liegt.


Andreas
Titel: Re: einziges Dokument einer Ansicht automatisch öffnen
Beitrag von: BigWim am 17.12.09 - 11:51:12
Und mit etwas Nachdenken kommt man auch dahinter, warum.

Ich will's versuchen!

Meine Vermutung: Diese Version funktioniert "nur" dann, wenn in der Ansicht alle Dokumente dargestellt werden.

Markus
Titel: Re: einziges Dokument einer Ansicht automatisch öffnen
Beitrag von: martin72 am 17.12.09 - 11:52:49
@ Andreas

Sorry, war ein einfacher Tipp-Fehler von mir. Jetzt klappen alle mir angebotenen Lösungs-Varianten.

danke nochmal dafür.