Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Alirion am 01.09.03 - 16:56:36

Titel: Übergabe von Lotus Notes an MS-Word
Beitrag von: Alirion am 01.09.03 - 16:56:36
Eine vorhandene Vorlage wird mit Text und Tabellen dynamisch befüllt.
Diese Vorlage dient zum Ausdruck der Informationen, die in Lotus Notes erstellt werden.

Dazu muss Word geöffnet werden, weil technisch die Übergabe von Elementen aus der Zwischenablage notwendig ist.

Bei geöffnetem Worddokument kann es dem Benutzer möglich sein, Veränderungen im Worddokument durchzuführen. Dies führt zu verfälschtem Druckergebnis.

Anschließend wird das Dokument für den Benutzer geschlossen. Es bleibt ein leeres Word zurück, das der Benutzer manuell schließen muss.

Programmiert kann ein Schließen von Word nicht erfolgen, da Word den Druckauftrag ausführt. Der Druckauftrag kann beliebig, je nach Größe des Dokumentes, dauern.

Problematik:

1.   Der Benutzer darf keine Veränderungen im Erscheinungsbild des Wordausdruckes vornehmen, d.h. Word muß für seinen Zugriff entzogen sein.
2.   Word soll nach dem Ausdruck so geschlossen werden, das es vollständig aus dem Arbeitsbereich entfernt ist, d.h. auch im Task-Manager soll es nicht erscheinen.

Hat jemand vielleicht einen Lösungsansatz?

Bin für Euere Hilfe sehr dankbar!
Titel: Re:Übergabe von Lotus Notes an MS-Word
Beitrag von: Don Pasquale am 01.09.03 - 17:00:36
Word gar nicht erst auf visible setzen
und Word den Druckautrag geben.

Hab ich was übersehen ?

Ciao
Don Pasquale

Zeig mal den Code den Du schon hast ?

Falls nicht: Such mal nach Serienbrief
Titel: Re:Übergabe von Lotus Notes an MS-Word
Beitrag von: Alirion am 02.09.03 - 08:09:05
Ich muß Elemente aus der Zwischenablage nach Word übergeben, dafür brauche ich doch Word im Vordergrund, oder?
Titel: Re:Übergabe von Lotus Notes an MS-Word
Beitrag von: Markus Henke am 02.09.03 - 08:43:00
Hi,

Word muss dafür nicht sichtbar sein, soweit ich weiß. Aber warum muss die Übergabe zwangsläufig über die Zwischenablage erfolgen? Das verstehe ich nocht nicht.

Gruß
Markus
Titel: Re:Übergabe von Lotus Notes an MS-Word
Beitrag von: meichhorner am 02.09.03 - 08:47:20
@Markus

Weil du sonst den Richtext nicht ins Word bekommst :)

@Alirion

In Word kannst du per Programmierung auch den Druck in den Background schalten, vielleicht hilft dir das ::)

Cu
Martin
Titel: Re:Übergabe von Lotus Notes an MS-Word
Beitrag von: Don Pasquale am 02.09.03 - 08:54:48
Hi Alirion,

das mit der Zwischenablage verstehe ich auch nicht,
Du wolltest doch eine Schnittstelle aus Lotus ?
Nach der Serienbrieffunktion hast Du auch nicht geschaut und Code hast Du bisher auch keinen.
Diesen Code habe ich nur so zusammengehauen, er wird sicher nicht laufen, nur sind hier alle Befehle drin die Du brauchst.
Im Worddokument sollte ein Feld sein mit dem Namen "IDENTNUMMER", dann kannst Du darein etwas übergeben

**********************
Dim object As Variant
Dim WordObj As Variant
Dim word As Variant    
      
      
'Create the Word object:
      
On Error Resume Next
Set Word = GetObject("", "Word.Application")
If Err = 208 Then  '  Fehler 208 tritt auf wenn Word noch nicht läuft
Err = 0
Set Word = CreateObject("Word.Application")
objWord.Visible = True  'Word sichtbar machen
End If
      
'Set word = GetObject("","Word.Application")
'Set word = CreateObject("Word.Application") 'Create Word object
        'Create a new document based on the template from dlgdoc
Worddokumentpfad$ = "C:TEMP\Word.doc"
Call word.documents.add(Worddokumentpfad$)    
Set worddoc = word.activedocument 'Get a handle for the active document
      
'Assign the field values:

worddoc.FormFields("IDENTNUMMER").result = strIDENT
worddoc.saveas(Reaktionsbriefpfad$) 'save the document with the filename of "user"
      
word.ActivePrinter = "Print-2-Image"
Call worddoc.PrintOut(False, , , , , , , 1)
word.visible = True 'Comment this line if you don't want to show Word.
word.quit 'remove comment if you want to close rather than show Word.
   
Titel: Re:Übergabe von Lotus Notes an MS-Word
Beitrag von: Markus Henke am 02.09.03 - 09:44:50
@meichhorner:
Ich habe nichts von Rich-Text gelesen. Du? ;)

@Alirion:
Um sicher zu gehen, dass keiner an der Vorlage bastelt, haben wir es so geregelt, dass wir die Vorlage in die Datenbank anhängen und beim drucken dann im Temp Verzeichnis speichern. Ansonsten dürfte in dem Code alles drin gewesen sein.
Titel: Re:Übergabe von Lotus Notes an MS-Word
Beitrag von: meichhorner am 02.09.03 - 11:12:58
@Markus

Ja stimmt schon steht nicht drin, aber wenn man sich schon mal damit befasst hat weiss mann dass es keine andere Möglichkeit für Richtext gibt als die Zwischenablage zu benutzen, mit Notes Mitteln versteht sich ;)

Ob du jetzt die Notes Daten in ein Formular Feld schreibst oder in eine Bookmark dass ist ja nicht das Problem das geht easy von überall aus.

Cu
Martin
Titel: Re:Übergabe von Lotus Notes an MS-Word
Beitrag von: Alirion am 03.09.03 - 08:03:13
Vorerst einmal herzlichen Dank an Alle, die mir so schnell antworten konnten.

Das Problem ließ sich lösen, indem ich erst Word ganz am Schluß erscheinen lasse (Word.Visible = true).
Dazu mußte ich nur ein paar Funktionsbereiche ändern, die für die Übergabe nach Word nötig waren.

Jedoch habe ich ein daraus resultierendes Problem:

Word ist geöffnet. Jedoch wird das aktuelle Dokument per PrintOut zum Standarddrucker gesendet. Wenn ich jetzt schon sage, Application.Quit, dann kann es sein, je nach Seitenzahlen des Worddokumentes, das ein Hinweisfenster erscheint, das den Benutzer fragt: Word druckt gerade, möchten Sie wirklich schließen?

Diese Hinweisfenster möchte ich jedoch unterdrücken und müßte dazu wissen, ob es eine Abfrage nach Word gibt, die einem einen Wert liefert, ob der Druckjob erledigt ist, damit sofort Word geschlossen werden kann.

Nochmals Danke und hoffentlich bekomme ich wieder so gute Antworten.
Titel: Re:Übergabe von Lotus Notes an MS-Word
Beitrag von: meichhorner am 03.09.03 - 09:20:26
Hy,

wie schon gesagt probier mal das PrintBackground Argument aus.

Code
Application.ActiveDocument.PrintOut Background:=False

Cu
martin
Titel: Re:Übergabe von Lotus Notes an MS-Word
Beitrag von: Alirion am 03.09.03 - 11:03:54
Danke.

Der Parameter für Background auf False gesetzt hat die Lösung gebracht!

Titel: Re:Übergabe von Lotus Notes an MS-Word
Beitrag von: ata am 03.09.03 - 11:04:57
... bitte den Thread auf erledigt setzen - danke...

ata