Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: jr am 17.06.05 - 13:38:51

Titel: Berechneter Abschnitt um RichText-Felder
Beitrag von: jr am 17.06.05 - 13:38:51
Hallo,

weil die andere Anfrage wohl so nicht lösbar ist, gleich eine andere Variante:

Wenn man um ein RichText-Feld einen berechneten Abschnitt macht um dieses zur Bearbeitung freizugeben, dann erkennt das RT-Feld nicht, dass sich der Status geändert hat.

Die Abschnittsformel lautet:
@If(@IsDocBeingEdited; @UserName; "Niemand")

Sieht natürlich auf den ersten Blick etwas seltsam aus, weil ja jeder im Bearbeitungsmodus bearbeiten darf, aber es geht um die Dateianhänge im RT-Feld, und die können leider auch im Lese-Modus bearbeitet werden - und genau das soll verhindert werden.

Im Bearbeitungsmodus zeigt Notes korrekt an, dass der Abschnitt vom Benutzer bearbeitet werden darf, lässt es aber trotzdem nicht zu.

Hat jemand eine Idee dazu?

Gruß,

Joachim
Titel: Re: Berechneter Abschnitt um RichText-Felder
Beitrag von: Daenu am 17.06.05 - 14:39:28
Also "Abschnittsformel" bedeuetet Hide/When Formel? Wenn ja. Das ist so ne Sache, da man Hide When im RT Feld selber setzten kann. Hatte mal das selbe Problem mit Hide When Print. Hab folgende Lösung gefunden:
1. Abschnitt also Section mit Hide/When Formel
2. For dem dem RT Feld ein Space oder Buchstabe (unsichtbar wie Hintergrund)
3. Space und RT Feld mit Hide/When wie Section

Aber noch ganz ein anderer Ansatz den ich gerne erkläre aber erst noch was wissen muss:
Ist im RTF auch noch Text den man im Read Modus lesen muss oder ist nur das Attachment drin?
Titel: Re: Berechneter Abschnitt um RichText-Felder
Beitrag von: jr am 17.06.05 - 15:13:43
Da sind definitiv nicht nur Attachments drin, sondern auch ganz normaler Text. Die Leser sollen alles sehen, aber nicht bearbeiten können.
Titel: Re: Berechneter Abschnitt um RichText-Felder
Beitrag von: jr am 17.06.05 - 15:22:00
HideWhen nützt in dem Fall nicht viel, weil das Feld ja sichtbar sein soll.

Mit zwei RT-Feldern (eins bearbeitbar und eins berechnet), die sich alternativ ein- und ausbleden, habe ich schon Versuche gemacht. Das nützt aber leider nicht viel, weil das berechnete Feld den Wert des Eingabefeldes nur einmal übernimmt und sich danach nicht mehr ändert. Ein reines "Computed for display" gibt's bei RT-Feldern leider nicht.
Titel: Re: Berechneter Abschnitt um RichText-Felder
Beitrag von: Daenu am 17.06.05 - 15:25:58
OK, dann ist Hide/When der falsche Ansatz.  ;)

Man könnte eine Scriptlein machen, dass beim Querysave Event alle Attachment in ein neues RT Feld verschiebt. Dieses Feld ist dann nur im Edit Modus sichtbar. Nachteil. Die Attachment sind im Read Modus nicht mehr verfügbar.

Code Ansatz den ich mal für etwas ähnliches brauchte, den Du aber sicherlich modifizieren müsstest.

If ( rtitem.Type = RICHTEXT And doc.HasEmbedded ) Then
   Forall o In rtitem.EmbeddedObjects
      Select Case o.Type
      Case EMBED_ATTACHMENT
      filepath = tempDirectory & "\" & o.name
      Call o.ExtractFile( filepath )
      Set newrtitem = New NotesRichTextItem( newdoc, "PDF" )
      Set object = newrtitem.EmbedObject ( EMBED_ATTACHMENT, "", filepath)
      Kill filepath
      End Select
   End Forall
End If

Kann Dir auf Wusnch auch den ganzen Code senden.
Titel: Re: Berechneter Abschnitt um RichText-Felder
Beitrag von: jr am 17.06.05 - 15:30:18
Danke, aber das wird bei mir nicht tun. Die Attachments stehen an bestimmten Stellen im Text und müssen dort auch bleiben. Wenn ich die in ein anderes RT-Feld verschiebe, wissen die Leute nicht mehr, wo sie ursprünglich waren.

Ich hoffte halt, dass es irgend eine Möglichkeit gibt, die Bearbeitung für ein RT-Feld zu sperren.
Titel: Re: Berechneter Abschnitt um RichText-Felder
Beitrag von: koehlerbv am 17.06.05 - 15:43:08
Hast Du mal darüber nachgedacht, Dein RT-Feld in zwei Teilmasken auszulagern (bearbeitbar und nicht bearbeitbar) und die Teilmasken entsprechend Deiner Bedingungen einzublenden ?

Bernhard
Titel: Re: Berechneter Abschnitt um RichText-Felder
Beitrag von: jr am 17.06.05 - 16:15:18
Soweit ich weiß, kann man Teilmasken nur beim Öffnen der Hauptmaske laden. Oder kann man die auch dynamisch nachladen?

Mit zwei Teilmasken, die mit HideWhen-Formeln ein- oder ausgeblendet werden, wird es wohl nicht gehen, weil die ja beide das gleiche Feld benutzen.

Oder habe ich Dich da falsch verstanden?

Gruß,

Joachim
Titel: Re: Berechneter Abschnitt um RichText-Felder
Beitrag von: koehlerbv am 17.06.05 - 16:30:25
Hallo Joachim,

dynamisches Laden von Teilmasken ist nicht möglich. Vermutlich habe ich dann etwas missverstanden bei den Requests.

Zwei Teilmasken gleichzeitig meine ich aber nicht, sondern berechnete Teilmasken, die entweder / oder eingebunden werden (wobei die oben erwähnte Nicht-Dynamik greift, die man nur programmatisch durchbrechen könnte, wenn durch Event-Reaktionen das Dokument ggf. geschlossen und neu geöffnet würde.

Ein schönes Wochenende wünscht
Bernhard