Das sieht mir nach einer Aktionsleiste aus.
Hier gibt es unter Eigenschften ein Parameter, wo du die Höhe definieren kannst.
Das sollte dein Problem beheben.
Gruß
Ralph
Das sieht mir nach einer Aktionsleiste aus.
Hier gibt es unter Eigenschften ein Parameter, wo du die Höhe definieren kannst.
Das sollte dein Problem beheben.
Gruß
Ralph
da war jemand schneller als ich.
DerOzzy
Ist auch meine Vermutung!!!
Als Tipp!!
Forall i In inputChars
pos = Instr( txt, i )
........
........
End Forall
und die Schleife sieht schon übersichtlicher aus.
Gruß
Ralph
Das war knapp. Ich stand auch schon kurz davor graue Haare zu bekommen.
Das :pint: werde ich mir heute schon genehmigen.
Gruß
Ralph
ja ja, so ist das mit den Übersetzungen.
Hierfür gibt es genug Beispiele.
Schönen Tag noch!
Gruß
Ralph
Hallo,
1.
Auswahlrand anzeigen "disabled"
Auswahlrand verbergen "disabled"
Der Auswahlrand ist definitiv nicht sichtbar. Er wird erst durch das Markieren von Dokumenten (Einträgen) dargestellt.
2.
Auswahlrand anzeigen "enabled"
Auswahlrand verbergen "disabled"
Der Auswahlrand wird dargestellt.
3.
Auswahlrand anzeigen "enabled"
Auswahlrand verbergen "enabled"
Der Auswahlrand wird dargestellt, aber die Trennlinie verschwindet.
Es scheint sich also nur um eine unglückliche Übersetzung zu handeln. Besser wär so etwas Auswahlrandlinie verbergen. ;-))
Gruß
Ralph
Ich meinte nur den Eintrag "Option Explicit".
"Option Declare" wird automatisch eingetragen. Lettzterer überprüft jedoch nicht den Code auf Unstimmigkeiten hinsichtlich der Deklarationen. Hierfür ist dann "Option Explicit" zuständig.
Jetzt aber wieder zum Thema!
Der Screenshot zeigt die Inhalte der Variablen laut Debugger.
Kannst du damit etwas anfagen?
Gruß
Ralph
aber wir kommen der Sache immer näher.
Den einzigen Unterschied zu meinem Script, die Reihenfolge der Objektzuweisungen.
<
Set body = doc.GetFirstItem("Body")
Set rtnav = body.CreateNavigator
Set rtrange = body.CreateRange
>
Noch etwas: :-?
Der nächste Fehler wist vorprogrammiert, eine Zuweisung für das Objekt "db" fehlt noch.
"Set doc = db.GetdocumentbyUNID( UNID )"
Ich habe mir angewöhnt in den Deklarationen <Option Explicit> einzutragen. Dadurch werden alle Variablen und Objekte beim Kompilieren überprüft. Ist zwar zum Teil umständlich, aber es hilft.
Gruß
Ralph
In deinem Script wird das Body-Feld gelöscht, bevor du es nach Text-Schnipseln durchsuchst.
<
Set body_Item = doc.GetFirstItem("Body")
Call body_item.Remove
Set body = doc.CreateRichTextItem("Body")
>
Danach wird ein neues, <b>leeres</b> Body-Feld erstellt.
Dann darf das Script auch die entsprechende Meldung ausgeben.
Gruß
Ralph
Hallo,
Wieso von allen MailIn-DBs?
Das Feld muss nur in MailIn Datenbank "Vertrieb". Und das auch nur in der Schablone. Somit werden alle DBs aktualisiert.
So wie ich verstanden habe, ist das Problem ja nur bei Mails, welche aus der Vertriebs-DB gesendet wurden, oder?
Wie wird denn dein Mail-Dok gesendet? Formel-Sprache, LotusScript, Masken-Einstellung?
So hättest du evtl. noch alternativen für das Erzeugen des Feldes!
Gruß
Ralph
Hallo,
eine weitere Möglichkeit ist der Ordner
xxx\notes\mui\de. Hier und im übergeordneten Ordner muß die Datei Mui.dat vorhanden sein.
Die Einstellungen dein der Notes-INI müssen natürlich auch auf "de" eingestellt sein.
Gruß
Ralph
Hallo,
was ist dann bei dir anders???
Sollen die Änderungen unbedingt im Workplace erledigt werden? Reicht nicht hierfür auch eine Ansicht mit entsprechnder Aktion auf die selektierten Dokumente?
Ich habe eine Testmaske mit zwei Feldern (Titel und Body). Body ist dabei natürlich ein RT-Feld.
Beim CopyAndPaste hat sich wohl im Script ein FATALER Fehler eingeschlichen (ENDLOS-SCHLEIFE).
Daher, bevor das Script weiter eingesetzt wird, vor dem WEND muß folgender Codes-Schnipsel eingefügt werden:
"erg = rtnav2.FindNextString(searchString)"
Ansonsten funktioniert das Script bei mir.
Habe es unter verschiedensten Möglichkeiten, wie:
<Test Achtung TEXT!> oder
<Test Achtung TEXT
Test2 Achtung und weiter im TEXT
Achtung>
ausprobiert.
Noch irgendwelche Ideen??
Gruß
Ralph
dann war meine Antwort ja noch nicht zu spät.....
Wie das Leben so spielt! Nach deiner Antwort wollte ich meine Lösung testen und es funkionierte nicht. :-o War ich wohl zu euphorisch.
Solch' eine Art der Anwendung habe ich mir gedacht. Alles andere macht hierfür keinen Sinn. Da ich etwas ähnliches benötige, teste ich noch mit den Möglichkeiten herum.
Hierbei wurde ein Fehler erzeugt, wenn der gesuchte Text am Ende der Zeile im RT stand. Daher die If-Klausel.
Aber jetzt :
Script kann wahrscheinlich noch optimiert werden, aber es klappt.
*****************************************
if rtnav.FindFirstElement(RTELEM_TYPE_TEXTPARAGRAPH) Then
Call rtrange.SetBegin(rtnav)
hitString = Instr(rtrange.TextParagraph, searchString)
If hitString <> 0 Then
Set rtnav2 = rtnav.Clone
Set rtrange2 = rtrange.Clone
erg = rtnav2.FindFirstString(searchString)
While erg = True
Call rtrange2.SetBegin( rtnav2 )
Call rtnav.SetCharOffset( Len(searchString) )
If Len( rtrange2.TextParagraph ) > erg Then
Call rtrange2.SetEnd( rtnav2 ) '#
End If
Call rtrange2.SetStyle( richStyle1 )
Wend
End If
Set rtrange2 = Nothing
Set rtnav2 = Nothing
Else
Messagebox "Kein Element im Body",, "Kein Paragraph"
End If
doc.Save True, False, False
strNoteId = doc.NoteID
uidoc.Close
Set doc = Nothing
Set doc = db.Getdocumentbyid( strNoteID )
Call ws.EditDocument( False, doc )
***********************************
Hoffe das ich dir helfen konnte
gruß
Ralph
Hallo Dirk,
ich hoffe, das dir die Haare noch nicht ausgefallen sind.
Nun zu deinem Script.
Hier ist das klassische Problem von Notes. Richtext-Änderungen im Backend durchführen, welche im dann im geöffnetem Frontend nicht sichtbar sind.
Also muss hierfür am Anfang in den Editmodus gewechselt werden.
.: If uidoc.EditMode = False Then uidoc.EditMode = True :.
Wenn ich den CharOffset richtig verstanden habe, dann ist das der Startpunkt für die Range. Somit würde in deinem Fall der Eintrag ab der 6. Stelle erzeugt.
.: Call rtnav.SetCharOffset( 5 ) :.
Und zum guten Schluß wird alles noch gespeichert.
.: doc.Save True, True, True :.
.: :.
.: Call uidoc.refresh( True ) :.
.: Call uidoc.Reload :.
.: Call uidoc.Save :.
.: :.
.: uidoc.EditMode = False :.
Bei mir hat's funktioniert.
Ich hoffe das damit ein paar Haare retten konnte.
Gruß
Ralph