Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Silent_Bob am 19.05.05 - 14:47:54
-
Guten Tag zusammen,
ich muss eine Menge Word Dokumente in eine selbst erstelle DB importieren.
Ich hatte nun vor, dies über eine Schaltfläche zu regeln.
@Command([FileImport]) heisst ja der Befehl.
Soweit so gut.
Nun wird aber beim IMPORT Dialog immer als Datentyp ASCII Text vorbelegt. Ich müsste das nun bei jedem Word Dokument manuell auf Datentyp "Microsoft Word" abändern.
Ich habe nun versucht, bei @Command([FileImport] den Parameter "Microsoft Word" mit anzugeben, aber leider geht das nicht.
@Command([FileImport]; "Microsoft Word";"")
Hat jemand eine Idee wie ich das machen kann, dass ich nicht vor jedem Importvorgang den Datentyp neu auswählen muss??
Danke im voraus
-
willst Du die Dokumente als Anhang oder den Inhalt in ein RichText-Feld kopieren?
Den Inhalt würde ich mit OLE über die Zwischenablage holen.
Anhängen kannst Du die Datei mit
Call rtitem.embedObject(EMBED_ATTACHMENT,"","Pfad + Dateiname", "")
-
Hi,
nein, die sollen nicht angehangen werden, sondern der Inhalt des Word Dokuments soll in das RTF Feld eingefügt werden.
Mit OLE könnte ich das machen, aaber da müsste ich doch jedes mal extra das Dokument in Word erstmal öfnen. Ist auch sehr viel Arbeit.
Aber ehe ich das mache, bin ich schneller, wenn ich dann doch vor jedem Import Vorgang den Dateityp neu auswähle.
-
Gibst Du bei @Command([FileImport]) den Parameter "Microsoft Word" ohne Datei mit, bekommst Du einen Fehler. Ohne die Parameter steht in der Dialogbox immer der erste Eintrag in der Liste.
Du könntest alle Word-Dokumente, die Du importieren willst in ein bestimmtes Verz. kopieren und dann einem Script das Importieren überlassen. Macht natürlich nur Sinn, wenn Du mehrere Dateien importieren willst.
Das Dokument im Word öffnen kannst Du auch mit OLE öffnen - nix mit Handarbeit.
-
Es sind wohl etwas über 100 Dokumente, die ich importieren möchte.
Schade, ich dachte man könnte einfach den Datentyp irgendwie doch als Parameter mitgeben.
Aber ich glaub, ehe ich jetzt ein Script bastel, wo ich noch gar keine Ahnung von hab, bin ich schneller, wenn ich dann halt jedesmal den Datentyp manuell angebe.
Naja. Trotzdem besten Dank
-
Ich würde es mit Script machen:
Zuerst die Auswahl der Word-Datei mit Filter:
stringArray = notesUIWorkspace.OpenFileDialog( false , [title$] , "Microsoft Word|*.doc", [initialDirectory$] , [initialFile$] )
fileName = stringArray(0)
und dann ein
Call notesUIDocument.Import( "Microsoft Word", fileName )
Andreas
-
Hier der Code (das Rich Text Feld heisst bei mir "Body"):
Dim ws As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim stringArray As Variant
Dim fileName As String
Set uidoc = ws.CurrentDocument
stringArray = ws.OpenFileDialog( False , "Word-Datei wählen" , "Microsoft Word|*.doc" )
fileName = stringArray(0)
Call uidoc.GotoField( "Body" )
Call uidoc.Import( "Microsoft Word", fileName )
-
vielleicht schau ich mir das mit dem Script mal an. Aber was mich etwas irritiert ist:
Call uidoc.Import( "Microsoft Word", fileName )
FileName... muss ich da den Dokumentennamen angeben? Wenn ja, ist das ja auch blöd, da ich dann für jeden Importvorgang das Script neu anpassen müsste. Und da könnte ich ja dann eher über Menü gehen
-
???
Die Datei wählst Du doch vorher aus:
...
stringArray = ws.OpenFileDialog( False , "Word-Datei wählen" , "Microsoft Word|*.doc" )
fileName = stringArray(0)
...
Du musst nix am Code ändern.
Andreas
-
Ah so, das hatte ich überlesen...