Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: MrMagoo am 28.07.03 - 14:50:42

Titel: Dokument anhängen
Beitrag von: MrMagoo am 28.07.03 - 14:50:42
Hallo versuche gerade eine Word Datei automatisch, per Script im PostOpen der Maske, an das aktuelle Dokument anzuhängen. MIr fehlt aber die entscheidende Zeile Script. habe bereits tausend Bsp. für ein eingebettetes Objcet gefunden, aber nicht für einen Anhang. Hilfe
Danke
Titel: Re:Dokument anhängen
Beitrag von: koehlerbv am 28.07.03 - 14:55:15
NotesRichTextItem.EmbedObject method mit dem richtigen Type ? Oder was fehlt Dir ?
Titel: Re:Dokument anhängen
Beitrag von: MrMagoo am 28.07.03 - 15:33:33
Ja, aber ich bekome es einfach nicht richtig hin, kannst Du mir vielleicht mal ein Scriptbeispiel geben?

Danke
Titel: Re:Dokument anhängen
Beitrag von: koehlerbv am 28.07.03 - 15:55:10
Was klappt denn konkret nicht ?
Titel: Re:Dokument anhängen
Beitrag von: Axel am 28.07.03 - 15:58:05
Hi,

so sollte das im PostOpenEvent gehen:
Das RTF-Feld heißt hier im Beispiel Bestellformular und die Datei dokument.doc.

...
Dim rtitem As NotesRichtextItem
Dim doc As NotesDocument

Set doc = Source.Document

Set rtitem = New NotesRichTextItem(doc, "Bestellformular")   
Set Object = rtitem.EmbedObject( EMBED_ATTACHMENT, "", "dokument.doc")

...

Axel
Titel: Re:Dokument anhängen
Beitrag von: koehlerbv am 28.07.03 - 16:16:19
Im PostOpen hat das natürlich den verwirrenden Nachteil, daß der Anwender das Attachment erstmal nicht sieht, weil ja Änderungen im Frontend in RTF erst nach dem Speichern, Schliessen und erneuten Öffnen des Dokuments sichtbar sind.
Dazu gab' es ja in diesem Forum gerade in den letzten Tagen etliche Threads.
Titel: Re:Dokument anhängen
Beitrag von: Glombi am 28.07.03 - 16:19:24
Hi,
es stellt sich die Frage, ob das Attachment nach dem Speichern und Schließen des UI Dokuments überhaupt noch da ist. Denn Notes speichert das UI Dokument im Backend, so wie es sich dem Anwender präsentiert, also ohne Attachment.
Hab's aber nicht getestet, nur so eine Vorahnung....

Andreas
Titel: Re:Dokument anhängen
Beitrag von: harkpabst_meliantrop am 28.07.03 - 16:32:28
Und es wäre vermutlich aus eher Zufall, wenn das Word-Dokument tatsächlich gerade im aktuellen Pfad für das Script liegen würde. Aber vielleicht hast du das ja auch nur beispielhaft gemeint.
Titel: Re:Dokument anhängen
Beitrag von: MrMagoo am 28.07.03 - 16:34:23
Das Dok ist zwar noch da, aber wie schon erwähnt erst nach dem speichern, gibt es da eine andere Methode??
Titel: Re:Dokument anhängen
Beitrag von: MrMagoo am 28.07.03 - 17:02:38
Soooooooooo, bin der Sache ein ganzes Stück näher gerückt.

ich habe da auch noch etwas auf der Homepage von ATA gefunden, danke dafür, also so funktioniert es

Im PostOpen
   
Dim rtitem As NotesRichtextItem
Dim doc As NotesDocument
Set doc = Source.Document
Set rtitem = New NotesRichTextItem(doc, "Body")  
Set Object = rtitem.EmbedObject(EMBED_ATTACHMENT, "", "c:\temp\temp.doc")
Call doc.Save( True, True )
Call ReOpen( doc )

und die Funktion  (von Atas Homepage thx)


    REM Das aktuelle Dokument schließen und wieder öffnen......
Function ReOpen(docThis As NotesDocument) As Integer
   Dim ws As New NotesUIWorkspace
   Dim uidoc As NotesUIDocument
   Dim dbThis As NotesDatabase
   Dim unid As String
   
   ReOpen = 0
   Set dbThis = docThis.ParentDatabase
   Call docThis.Save(True , True)
   unid = docThis.UniversalID
   docThis.SaveOptions = "0" ' # ... Speicherabfrage vermeiden
   Set uidoc = ws.CurrentDocument
   Call uidoc.Close
   Set docThis = dbThis.GetDocumentByUNID(unid)
   Set uidoc = ws.EditDocument(True , docThis)
   Set docThis = uidoc.Document
   If docThis.HasItem("SaveOptions") Then  
            ' # ... das Feld SaveOptions wieder entfernen...
      docThis.RemoveItem("SaveOptions")
      Call docThis.Save( True , True )
   End If
ReOpen = 1
Print "Das Dokument wurde erneut geöffnet"
End Function
Titel: Re:Dokument anhängen
Beitrag von: koehlerbv am 28.07.03 - 17:11:19
Du nimmst doch das Attachment sicher nur bei neuen Doks auf, oder ?
Wie läßt Du dann neue Doks erstellen ? Nur über einen Button? Dann gäbe es nämlich auch noch eine andere Möglichkeit ...
Titel: Re:Dokument anhängen
Beitrag von: MrMagoo am 28.07.03 - 17:13:13
ja über einen Button, ganz normal mit Formel, aber es gibt mittlerweile ein weiteres Problem:
wenn ich das eingebettet Dok öffnen und ändere, werden die Änderungen nicht übernommen  ???
Titel: Re:Dokument anhängen
Beitrag von: koehlerbv am 28.07.03 - 17:26:03
Nö, loggisch. Das geht erst ab R6.

Mir kam das schon spanisch vor, was Du da machst - in jedem neuen Dok das gleiche Attachment ...

Schau' doch mal in den Threads der letzten max. sieben Tage - wir haben da schon mal beschrieben, wie man Inhalte von RTFs auch direkt über das FrontEnd von einem Dok ins andere übernehmen kann - ohne weitere Tricks. Und was dabei im RTF steht, ist egal - Attachment, Bild, Object ...
Titel: Re:Dokument anhängen
Beitrag von: ata am 28.07.03 - 19:50:27
... wenn du das mit der Aktualisierung in R5 benötigst, dann nimm mal Kontakt mit Eknori auf, der hat ein Tool namens ReAttach - die Lizenz ist allemal billiger als selber schreiben...

ata
Titel: Re:Dokument anhängen
Beitrag von: koehlerbv am 28.07.03 - 20:11:50
Da kann ich ata nur zustimmen. Wenn eknori sowas hat - und das traue ich ihm mehr als zu ;-)   - dann sollte man sowas - gegen Kasse - übernehmen. Beim - nennen wir praktischerweise einmal so - ist es extrem aufwändig, alle Nebenbedingungen und Nebenwirkungen (Zielapplikation läuft schon, Zielapplikation wird ohne Speicherung abgebrochen, Attachment wird parallel erneut in der Zielapplikation aufgerufen usw. usf.) zu berücksichtigen - und mit der Windows-API sollte man sich da schon mehr als gut auskennen.

Selber machen - ohne wirklich sehr fundierte Kenntnisse von Windows und Notes - wird richtig teuer. Die Fähigkeiten hinsichtlich der Fehlertoleranz von R6 gehören auch erstmal abgeklärt (da kann ich leider momentan nix beitragen).
Wir haben 2001 eine offensichtlich idiotensichere "Reattachment-Routine" selber geschrieben - und das war unterm Strich richtig aufwändig, also teuer.

Ergo: ata folgen und eknori fragen - und mit ihm die "Risiken und Nebenwirkungen" abklären.

HTH,
Bernhard
Titel: Re:Dokument anhängen
Beitrag von: MrMagoo am 29.07.03 - 08:34:38
Danke für Eure Beiträge, habe mich jetzt allerdings für eine anderen Weg entschieden. Mal sehen ob der funktioniert.
danke