Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: TMC am 22.11.03 - 19:27:05

Titel: Dokument im selben Frameset via Gliederung öffnen
Beitrag von: TMC am 22.11.03 - 19:27:05
Hi,

Gegeben:
 - Eine Seite (Page) soll von Usern gepflegt werden können

Realisierung:
 - über Form gelöst, Dokument wird in einer View angezeigt
 - Aufruf der Form in der Gliederung über
    "@Command([ToolsRunMacro]; "(OpenMyForm)")"
    (Script geht ja leider nicht in einer Gliederung)
 - Im Agenten steht folgendes:
Code
On Error Resume Next 
   Dim uiws As New NotesUIWorkspace
   Dim session As New NotesSession  
   Dim db As NotesDatabase 
   Dim view As NotesView 
   Dim doc As NotesDocument 
   
   Set db = session.CurrentDatabase 
   Set view = db.GetView("DieView")
   Set doc = view.getfirstdocument
   
   Call uiws.EditDocument(False, doc)

In den Form-Eigenschaften steht: "Auto Start in Frameset fs_blabla, nimm Frame blub".
Anm.: Die DB hat ein einziges Frameset, hier "fs_blabla" genannt


Problem:
Dokument öffnet sich wunderbar im Frameset, allerdings wird durch Klick auf den Gliederungseintrag (in dem eben die Formel "@Command([ToolsRunMacro]; "(OpenMyForm)")" steht) ein neuer Frameset geöffnet.

Ziel:
Dokument soll sich im aktuellen Frameset öffnen

Ist das überhaupt möglich?

TMC
Titel: Re:Dokument im selben Frameset via Gliederung öffnen
Beitrag von: Axel am 24.11.03 - 11:17:11
Hi,

in den Maskeneigenschaften kannst du den Rahmen und die Rahmengruppe angeben, in der die Maske geöffnet werden soll.

Die beiden Optionen findest du in den Maskeneigenschaften auf dem Reiter mit der Rakete. Dort trägst du den Namen des Framsets ein. Den Agenten kannst du unverändert lassen.


Axel
Titel: Re:Dokument im selben Frameset via Gliederung öffnen
Beitrag von: TMC am 24.11.03 - 21:10:04
Hi Axel,

danke, aber das hatte ich bereits eingetragen:

Zitat
In den Form-Eigenschaften steht: "Auto Start in Frameset fs_blabla, nimm Frame blub".

Hat noch wer 'ne Idee was man da machen könnte?

TMC
Titel: Re:Dokument im selben Frameset via Gliederung öffnen
Beitrag von: TMC am 27.11.03 - 22:20:56
* mal nach oben schieb  :) *
Titel: Re:Dokument im selben Frameset via Gliederung öffnen
Beitrag von: TMC am 05.05.04 - 21:56:28
Bin gerade wieder über das gleiche Problem gestolpert.....

Wie handhabt Ihr das, wenn User nur eine Seite bearbeiten sollen? Und diese Seite per Klick im Hauptframe geöffnet werden soll (ohne dass sich ein neues Frameset öffnet ?
Titel: Re:Dokument im selben Frameset via Gliederung öffnen
Beitrag von: Glombi am 05.05.04 - 22:37:06
Folgendes wäre möglich:
Die User pflegen den Content über ein Konfigurationsdokument (Maske). Der Text, der dort eingegeben wird, wird per berechneten Text in einer Page angezeigt. Diese Page wiederum wird in dem speziellen Frame angezeigt.

Andreas
Titel: Re:Dokument im selben Frameset via Gliederung öffnen
Beitrag von: TMC am 05.05.04 - 22:44:35
Danke, Andreas.

Nach über 5 Monaten habe ich nun doch die Lösung gefunden  :)

   Dim uiws As New NotesUIWorkspace
   Dim session As New NotesSession
   Dim db As NotesDatabase
   Dim view As NotesView
   Dim doc As NotesDocument
   
   Set db = session.CurrentDatabase
   Set view = db.GetView("DieView")
   Set doc = view.getfirstdocument
   Call uiws.SetTargetFrame( "NotesView" )
   Call uiws.EditDocument(False, doc)

Erscheint mir zwar leicht unlogisch weil der Aufruf von SetTargetFrame im Agent, aber das zieht Notes voll mit  8)

Deine Alternative ist eigentlich auch nicht schlecht, allerdings geht so nur normaler Text. Aber nun habe ich ja die Lösung :-)
Titel: Re:Dokument im selben Frameset via Gliederung öffnen
Beitrag von: Glombi am 05.05.04 - 22:50:02
Stimmt, das mit @SetTargetFrame ist immer sehr hilfreich! Daran habe ich im Moment gar nicht gedacht, manchmal denkt man einfach zu kompliziert...

Meine Lösung habe ich damals beim Kunden für eine Art Mini Content System entwickelt. Es ist eine Webanwendung und der Kunde wollte den Content - sprich HTML-Code - selbst pflegen - und das ganze ohne Entwicklerrecht.
In Web-Anwendungen arbeite ich generell viel mit berechnetem Text auf Seiten. Da kann man dann leicht so Sachen wir Pfade etc. zentral verwalten und das wird dann zur Laufzeit ausgewertet.

Andreas
Titel: Re:Dokument im selben Frameset via Gliederung öffnen
Beitrag von: TMC am 05.05.04 - 23:00:59
Stimmt, das mit @SetTargetFrame ist immer sehr hilfreich! Daran habe ich im Moment gar nicht gedacht, manchmal denkt man einfach zu kompliziert...
Genau :-) Mein erster Test war @SetTargetFrame in der Gliederung vor Aufruf des Agenten, aber das klappte nicht. Dann eben nach etwas Zweifel der 2.Test direkt im Script-Agenten.

Ich habe ja schon angefangen mit "Ach was, das mache ich komplett mit Formelsprache". Also in die auszulesende Spalte die @Text(@DocumentUniqueID), und dann via @Command([OpenDocument] ....) das Dok herholen. Nur dann musste ich in der Help lesen, dass für den [OpenDocument] die jeweilige View geöffnet und im Fokus sein muss  :P
Meine Lösung habe ich damals beim Kunden für eine Art Mini Content System entwickelt.
Ich kann mir gut vorstellen, dass dazu Deine Lösung sehr gut geeignet ist. Der User darf nur Text-Input geben und soll sich keine Gedanken um Formatierung machen. Den Rest erledigst Du bzw. die DB via berechnete Texte....