Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: rar am 22.08.05 - 11:09:03

Titel: Dokumente in anderen Rahmen ändern
Beitrag von: rar am 22.08.05 - 11:09:03
Tag....

Ich habe wieder mal ein Problem.
Meine Datenbank wird mit einer Rahmengruppe geöffnet. In einem Rahmen ist eine Maske angegeben. Jetzt möchte ich ein Feld in dieser einen Maske über ein Button befüllen, der außerhalb dieser Maske liegt. (In einem anderen Rahmen oder in einer Mail)

Ich dachte es sollte so gehen:
   Call ws.SetTargetFrame("Rahmen")
   Set uidoc = ws.CurrentDocument
   Set doc = uidoc.Document
   doc.Feld = "Werte"
   Call uidoc.Refresh()
Tut es aber nicht.
Kann mir jemand sagen, wie ich das Feld befüllen kann?

-daniel
Titel: Re: Dokumente in anderen Rahmen ändern
Beitrag von: robertpp am 22.08.05 - 11:19:15
Gehts auch mit JavaScript:

window.parent.left.document.forms[0].feld1.value = "hallo";

left ist die Rahmenbezeichnung und feld1 natürlich das Feld.

Da ersparst du dir auch das Refresh.

Robert
Titel: Re: Dokumente in anderen Rahmen ändern
Beitrag von: rar am 22.08.05 - 13:47:21
Danke für den Tipp Robert. Das ist mal ein Anfang. Nur habe ich folgendes Problem...
Der User bekommt ein Mail mit einem Button. Aus diesem Button wird eine DB geöffnet und ein bestimmtes Dokument gesucht. Aus diesem Dokument soll ein Wert in die Makse geschrieben werden. Ich bin da mitten im Script und kann das JavaScript nicht einbauen. Ein Agenten kann ich auch nicht schreiben und dann aufrufen, da JS in Agenten nicht geht. (Ist mir bis jetzt noch gar nicht aufgefallen.)
Das refresh bräuchte ich aber, da aufgrund dieses Feldes, andere Dinge in der Maske angezeigt werden.
lG
-daniel
Titel: Re: Dokumente in anderen Rahmen ändern
Beitrag von: rar am 29.08.05 - 14:55:36
Sorry fürs wieder hochschieben...
Mach ich sonst nicht. Leider suche ich noch immer eine Lösung für dieses Problem.
Hat keiner eine Idee wie das noch hinkriege? Oder wie man (für Roberts Tipp) JavaScript in LotusScript einbaut.
lG
-daniel
Titel: Re: Dokumente in anderen Rahmen ändern
Beitrag von: rar am 29.08.05 - 16:49:27
Hat sich erledigt   :) :D ;D
Habe endlich einen Workaround gefunden.

-happyrar
Titel: Re: Dokumente in anderen Rahmen ändern
Beitrag von: koehlerbv am 29.08.05 - 16:51:52
Hallo, Daniel,

und welchen workaround ? Da sich auf den ersten Blick ja wegen der wechselnden Fokusse (Foki ? Foken ?) die Katze immer in den Schwanz beisst, wäre Deine Lösung sicherlich für die Allgemeinheit interessant.

Bernhard
Titel: Re: Dokumente in anderen Rahmen ändern
Beitrag von: rar am 29.08.05 - 17:09:40
Ich verschicke mit ein Mail, in dem in Feldern der Server bzw. Pfad der ZielDb + Konto- und Kundennummer gespeichert sind.
Dann befindet sich ein Button im Body, der die ZielDB holt und in ein Profilddokument in der zu öffnenden DB (nur für den Benutzer) die Konto- und Kundennummer reinschreibt und abspeichert. Mit ws.OpenDatabase öffne ich die dann.
In der Ziel DB, die ja dann offen ist habe ich ein weiteren Button (verborgen wenn das Profildokument leer ist). Dieser Button geht dann mit folgendenm Code alle Rahmen durch und setzt die Werte.
Code
Call ws.SetTargetFrame("Kunde")
Set uidoc = ws.CurrentDocument
Set doc = uidoc.Document
doc.KuNr = strKuNr
Call uidoc.Refresh()
Call ws.SetTargetFrame("Konto")
....
Am Ende wird dann das Profildocument gelöscht und weg ist der Button (wegen dem HideWhen)

Ist nicht ganz so schön, wie ich es wollte, aber jetzt funktioniert es. Der User muss halt auf zwei Buttons klicken.

Die Mehrzahl von Fokus ist übrigens Foküsse. Glaub ich.  ;)

-daniel
Titel: Re: Dokumente in anderen Rahmen ändern
Beitrag von: koehlerbv am 29.08.05 - 17:15:05
Danke, Daniel.

Ich habe eben mal im Duden nachgeschaut (das hätte ich Faultier ja auch eher machen können): Die Mehrzahl heisst "Brennpunkte"  ;D

Bernhard
Titel: Re: Dokumente in anderen Rahmen ändern
Beitrag von: robertpp am 29.08.05 - 17:27:16
Hallo Daniel,

Das mit dem Javascript im LotusSrcipt wäre sicher nie gegangen.
Wenigsten hast du jetzt eine passende Lösung gefunde.


gruss robert