Autor Thema: RichtTextItem -> WordPerfect  (Gelesen 1725 mal)

Offline TheHessian

  • Frischling
  • *
  • Beiträge: 13
  • Geschlecht: Männlich
RichtTextItem -> WordPerfect
« am: 14.12.05 - 17:07:46 »
Hi!

Ich suche nach einer Möglichkeit ein RichText-Feld eines NotesDocuments via LotusScript in ein WordPerfect-Dokument zu übertragen, ohne dass dabei die Formtierungsinformationen (Schriftart, Fett, kursiv ...) verlohren gehen.

Szenario:

Ich erzeuge zunächst ein WP Object und erzeuge ein neues WP-Dokument.

' Create WordPerfect Object
Set wps = CreateObject("WordPerfect.PerfectScript")
   
wps.WPActivate
wps.AppMaximize
wps.TemplateSelect (strBuffer)

:

' In diesem WP springe ich an eine Marke und will dort den RichText einfügen
wps.PosPage( 1 )
wps.BookmarkBlock("[KasseAbsendeKennung]")
Set rtItem = docKP.GetFirstItem("KasseAbsendeKennung")
wps.type( rtItem.GetFormattedText(True, 0) ) ' Im Moment ohne Formatierung

:

Ich habe bis jetzt leider keine Lösung gefunden.
Vielleicht kennt sich ja hier jemand mit diesem Problem aus!?

Vielen Dank für Tipps!

Gruß
Marcus

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: RichtTextItem -> WordPerfect
« Antwort #1 am: 14.12.05 - 17:12:22 »
NotesRichText ist ein proprietäres Format. Einige (!) Auszeichnungen kannst Du mit den ab R6 verfügbaren NotesRichText classes auslesen, aber bei weitem nicht alle.
Mit auf der NotesAPI aufsetzenden Erweiterungen wie Midas von Ben Langhinrichs oder RTLib von Normunds Kalnberzins kannst Du tiefer analysieren,  bekommst aber auch noch alle Attribute.

Der einfachste Weg wäre - wenn machbar (FrontEnd !) - das NotesRTI ins Clipboard zu übernehmen und dann in das WordPerfect-Dokument plumpsen zu lassen.

Bernhard

Offline TheHessian

  • Frischling
  • *
  • Beiträge: 13
  • Geschlecht: Männlich
Re: RichtTextItem -> WordPerfect
« Antwort #2 am: 14.12.05 - 17:22:17 »
Tja ... das mit dem FrontEnd ist halt die Sache ...

Ich habe zwar im Verareitungszeitpunkt ein UIDoc offen (allerdings auch nicht unbedingt im Editmode), aber das ist nicht das Dokument, in dem das Richtext Feld enthalten ist, dieses stammt aus einer zweiten Notes-Datenbank - einer Kundenparameter-DB.

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: RichtTextItem -> WordPerfect
« Antwort #3 am: 14.12.05 - 17:37:10 »
Kann Deine WP-Version mit XML umgehen ? Über diesen Weg bestünde ja auch noch eine womöglich reale Chance.

Ebenso könntest Du das betreffende Dokument aus der anderen DB immer noch im FrontEnd kurz öffnen (EditMode ist aber zwingend für die Übernahme ins Clipboard).

Bernhard

Offline flaite

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.966
    • mein del.icio.us
Re: RichtTextItem -> WordPerfect
« Antwort #4 am: 16.12.05 - 14:56:17 »
WP kann seit Version 9.0 xml. Nur ist es verdammt viel Arbeit das Stylesheet zu erstellen.
Das könnte eigentlich zum gemeinsamen Hobby der Notes Community werden, solche Stylesheets zu erstellen. Nathan Freeman (von openNtf.org) hat sich mal diesbezüglich zu OpenOffice geäußert. Ich selbst zu MS-Word 2003-XML (auch auf openNTF.org).
Das ganze ist für einen einzelnen einfach zu viel Arbeit.
Solche Konvertierungsstylesheets wären - gerade angesichts der Überladenheit von NotesRichText- sinnvolle Notes-Komponenten, die von verschiedenen Anwendungen/Projekten genutzt werden könnten.
Ich stimm nicht mit allen überein, aber mit vielen und sowieso unterhaltsam -> https://www.youtube.com/channel/UCr9qCdqXLm2SU0BIs6d_68Q

---

Aquí no se respeta ni la ley de la selva.
(Hier respektiert man nicht einmal das Gesetz des Dschungels)

Nicanor Parra, San Fabian, Región del Bio Bio, República de Chile

Offline TheHessian

  • Frischling
  • *
  • Beiträge: 13
  • Geschlecht: Männlich
Re: RichtTextItem -> WordPerfect
« Antwort #5 am: 27.12.05 - 15:52:58 »
Hab mal die Lösung mit CopyAndPaste ausgetestet:

   ' Über die Zwischenablage soll der Text in das WP-Dokument gelangen
   Set rtItem = docKP.GetFirstItem("KasseAbsendeKennung")
   Set docTmp = db.CreateDocument()
   docTmp.Form = "mskRT"
   Set rtTmp = docTmp.CreateRichTextItem("tmp")
   Call rtTmp.AppendText(" ")
   Call rtTmp.AppendRTItem( rtItem )
   Set uidocTmp = ws.EditDocument( 1, docTmp )
   Call uidocTmp.SelectAll
   Call uidocTmp.Copy
   
   wps.PosPage( 1 )
   wps.BookmarkBlock("[KasseAbsendeKennung]")
   ' wps.type( rtItem.GetFormattedText(True, 0) )
   wps.Paste   
   
   Call uidocTmp.Close(True)
   Set uidocTmp = Nothing
   Set docTmp = Nothing

Im Lotus Debugger funktioniert das auch wunderbar. Der Text wird formatiert über die Zwischenablage ins WP-Dokument eingefügt.

Schalte ich den Debugger in LotusNotes ab, klappts nicht  >:( Dann wird der Inhalt der ersten RT-Items nicht übernommen und es wird nur das Leerzeichen in RT-Item 2 kopiert und eingefügt ...

Hat jemand ne Idee, warum?

Offline TheHessian

  • Frischling
  • *
  • Beiträge: 13
  • Geschlecht: Männlich
Re: RichtTextItem -> WordPerfect
« Antwort #6 am: 28.12.05 - 13:47:19 »
Problem gelöst:

Nach dem Erzeugen des docTmp und dem AppendRTITem noch ein Save bevor es in den Vordergrund kommt und dann im Anschluß das Doc wieder aus der DB gelöscht.

Fertig! Geht!

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz