AtNotes Übersicht Willkommen Gast. Bitte einloggen oder registrieren.
23.07.14 - 15:57:08
Übersicht Hilfe Regeln Glossar Suche Einloggen Registrieren
News:
Schnellsuche:
+  Das Notes Forum
|-+  Lotus Notes / Domino 7
| |-+  ND7: Entwicklung (Moderatoren: eknori, Glombi, koehlerbv)
| | |-+  Datei aus einem RTF Feld in eine anderes Dokument / RTF kopieren
« vorheriges nächstes »
Seiten: [1] Nach unten Drucken
Autor Thema: Datei aus einem RTF Feld in eine anderes Dokument / RTF kopieren  (Gelesen 1319 mal)
masterste2000
Aktives Mitglied
***
Offline Offline

Beiträge: 128



« am: 08.02.12 - 14:44:20 »

Hallo Zusammen,

ich hoffe Ihr könnt mit helfen.

Alles bezieht sich auf eine und die selbe Datenbank.

Ich habe ein Dokument und in diesem ist ein RTF mit einem PDF-Dokument.

Dieses PDF-Dokument möchte ich jetzt beim öffnen eines neuen Dokuments in ein RTF in dem neuen Dokument kopieren.

Wenn ich mit dem Debugger das Script kontrolliere kann ich das PDF-Dokument im Item greifen, aber ich bekomme es nicht in das neue Dokument / RTF kopiert!

Hier mal der Code:

        Dim session As New NotesSession
   Dim db As NotesDatabase
   Set db = session.CurrentDatabase
   Dim view As NotesView
   Dim doc As NotesDocument
   Set view = db.GetView( "(PDF_Dokumente)" )
   Set doc = view.GetFirstDocument
   'Bis jetzt hat es das Dokument mit dem PDF-Dokument an doc übergeben.
      
   Dim rtitem As Variant
   Set rtitem = doc.GetFirstItem( "Dienstreisepdf" )
   'Hier wird rtitem das Item vom RTF übergeben
   
   ---> Und hier hänge ich wie bekomme ich das Item mit dem PDF in das des RTF Feld des neuen Dokuments kopiert?Huh??
Gespeichert
m3
Moderatoren
Gold Platin u.s.w. member:)
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 7957


Non ex transverso sed deorsum!


WWW
« Antworten #1 am: 08.02.12 - 15:00:12 »

Deja vu?
http://atnotes.de/index.php/topic,53672.msg346352.html
Gespeichert

HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai
Tode
Gold Platin u.s.w. member:)
*****
Online Online

Geschlecht: Männlich
Beiträge: 4196


Geht nicht, gibt's (fast) nicht... *g*


« Antworten #2 am: 08.02.12 - 15:15:13 »

Nee, Martin, das ist ein bisschen was anderes, obwohl die Antwort (NotesUIDocument.ImportItem) die selbe sein KANN.

Wenn man das nicht über die Zwischenablage machen will, dann MUSS man
- über rtitem.EmbeddedObjects iterieren
- prüfen, ob es sich um ein Object vom Type ATTACHMENT handelt
- wenn ja: Extrahieren in einen Temp- Pfad (am besten über Environ( "Temp" ) ermitteln)
- Attachment wieder attachen
Gespeichert

Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen...

Mit jedem Tag meines Lebens erhöht sich zwangsweise die Zahl derer...
... denen ich am AdminCamp ein Bier schulde... Wenn ich hier jemanden angehe: Das ist nie persönlich, sondern immer gegen die "Sparwut" der Firmen gedacht, die ungeschultes Personal in die Administration unternehmenskritischer Systeme werfen... Sprecht mich einfach am AdminCamp an, ich zahle gerne zur "Wiedergutmachung" das ein oder andere Bierchen an der Bar
masterste2000
Aktives Mitglied
***
Offline Offline

Beiträge: 128



« Antworten #3 am: 08.02.12 - 15:42:19 »

Hallo danke für die schnellen Antworten, aber
NotesUIDocument.ImportItem
gibt es noch nicht in LoNo 7 oder doch?


Hi Martin wie bzw. mit welcher Klasse kann ich in das UIDOC das Attachment anhängen.


Gespeichert
Axel
Moderatoren
Gold Platin u.s.w. member:)
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 8641


It's not a bug, it's Notes


« Antworten #4 am: 08.02.12 - 16:20:59 »

... wie bzw. mit welcher Klasse kann ich in das UIDOC das Attachment anhängen.

Über Frontend-Klassen geht da garnichts. Schau dir mal die Methode NotesDocument.CopyItem an. Damit sollte es gehen.

Axel
Gespeichert

Ohne Computer wären wir noch lange nicht hinterm Mond!

Server: 8.5.1 und 8.5.2 auf Win2003 (R2) und Win2008 32/64bit
Clients: 8.5.2 dt. und engl. auf WinXP und Win7
m3
Moderatoren
Gold Platin u.s.w. member:)
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 7957


Non ex transverso sed deorsum!


WWW
« Antworten #5 am: 08.02.12 - 16:22:54 »

Wobei ImportItem ja undokumentiert ist ...
Gespeichert

HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai
koehlerbv
Moderator
Gold Platin u.s.w. member:)
*****
Online Online

Geschlecht: Männlich
Beiträge: 19931



« Antworten #6 am: 08.02.12 - 16:24:27 »

Über Frontend-Klassen geht da garnichts.

Doch - via Copy & Paste, was durchaus auch in der Praxis eingesetzt wird.

Bernhard
Gespeichert

Pilot's desaster - S-400 is faster ...
Axel
Moderatoren
Gold Platin u.s.w. member:)
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 8641


It's not a bug, it's Notes


« Antworten #7 am: 08.02.12 - 16:50:47 »

Du hast recht Bernhard.

Da ich vieles über's Backend mache, sind mir diese Methoden noch nicht untergekommen. 

Axel
Gespeichert

Ohne Computer wären wir noch lange nicht hinterm Mond!

Server: 8.5.1 und 8.5.2 auf Win2003 (R2) und Win2008 32/64bit
Clients: 8.5.2 dt. und engl. auf WinXP und Win7
koehlerbv
Moderator
Gold Platin u.s.w. member:)
*****
Online Online

Geschlecht: Männlich
Beiträge: 19931



« Antworten #8 am: 08.02.12 - 16:59:15 »

Wenn es sauberer geht, versucht man natürlich auch, einen solchen Stunt zu vermeiden. Aber wenn beispielsweise ein RTF vorbelegt werden soll, jedoch ein Speichern allein dem User überlassen bleiben soll, dann bleibt einem nichts anderes (versionsunabhängiges).

Bernhard
Gespeichert

Pilot's desaster - S-400 is faster ...
masterste2000
Aktives Mitglied
***
Offline Offline

Beiträge: 128



« Antworten #9 am: 09.02.12 - 07:37:33 »

Guten Morgen,

mit soviel Antworten hätte ich jetzt nicht gerechnet.

Bernhard @all könnt ihr mir mal ein Beispiel Skript hier einstellen.

Danke!

Gespeichert
pram
Gold Platin u.s.w. member:)
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 1022



WWW
« Antworten #10 am: 09.02.12 - 23:36:20 »

fertigen Code gibts hier selten...  Roll Eyes

wenn du aber an deinen bestehenden Code noch folgende 5 Zeilen anhängst, sollte das Feld im Backend kopiert werden und das neue Dok. aufgehen.

dim newDoc as new NotesDocument(db)
dim newRti as new NotesRichtextItem(newDoc, "body")
call newRti.appendRtItem( rtItem)
call newRti.update()
call workspace.editDocument(true, newDoc)

das Ganze musst du aber in einen "Neu"-Button/Agent auslagern und kannst nicht im QueryOpen machen, da du hier noch kein Doc zur Verfügung hast (und im postOpen ist es zu spät um den Richtext zu ändern, außer du verwendest das undokumentierte uiDoc.importItem() dann wärs sogar nur noch eine Zeile die dir in deinem Code aus dem ersten Post fehlt)
oder du machst noch einen Reopen

Gruß
Roland
« Letzte Änderung: 09.02.12 - 23:38:44 von pram » Gespeichert

Roland Praml

IBM Certified Application Developer - Lotus Notes and Domino 8
Ich verwende das Foconis Object Framework
Seiten: [1] Nach oben Drucken 
« vorheriges nächstes »
Gehe zu:  


Einloggen mit Benutzername, Passwort und Sitzungslänge

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006, Simple Machines Prüfe XHTML 1.0 Prüfe CSS
Impressum Atnotes.de - Powered by Syslords Solutions - Datenschutz | Partner: