Winword bleibt im Speicher

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
7 Beiträge • Seite 1 von 1
7 Beiträge Seite 1 von 1

Winword bleibt im Speicher

Beitrag von Kaiwalker (Specialist / 165 / 0 / 0 ) »
Hallo,

Ich habe ein Programm mit dem ich im Hintergrund per OLE2 ein Word-Dokument fülle. Das wird danach automatisch auf einen Drucker geschickt.
Mein Problem ist allerdings, dass trotz der folgenden Anweisungen der Prozess Winword.exe offen bleibt.

Code: Alles auswählen.

call method of word 'APPCLOSE'
     exporting #1 = 'X'.
free object: word.
word-handle = -1.
Irgendjemand da, der eine Idee hat, um den Prozess verschwinen zu lassen ?
Im Prinzip würde mich ja der Prozess nicht stören, abe wenn man das Programm dann zum 2. Mal ausführt kommt die Frage:
Soll das Dokument schreibgeschützt geöffnet werden ?
Danke im Voraus
Kaiwalker

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Beitrag von Kaiwalker (Specialist / 165 / 0 / 0 ) »
Kann mir denn da keiner helfen ?
Ich brauche die Antwort dringend.

Beitrag von ereglam (Top Expert / 1829 / 2 / 7 ) »
Hallo Kaiwalker,

bei Deinem Code fällt mir als Quasi-Laie auf, dass Du ein 'X' als Parameter an Dein OLE-Objekt schickst.
Ich hätte hier eher etwas wie 'TRUE' erwartet. Das 'X' erscheint mir zu ABAP-lastig, um im VB-Umfeld richtig zu sein.
Gruß
Ereglam


May the Force be with your code
|| .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .

Beitrag von Kaiwalker (Specialist / 165 / 0 / 0 ) »
Das funktioniert auch nicht.
Vielleicht hilft es den einen oder anderen, wenn ich mal den ganzen Code poste.

Code: Alles auswählen.

FUNCTION ZZ_FILL_WORD_OLE.
*"----------------------------------------------------------------------
*"*"Lokale Schnittstelle:
*"  IMPORTING
*"     REFERENCE(FILE) TYPE  LOCALFILE
*"     REFERENCE(DISPLAY) TYPE  CHAR1 OPTIONAL
*"     REFERENCE(PRINT) TYPE  CHAR1 OPTIONAL
*"     REFERENCE(SAVE) TYPE  CHAR1 OPTIONAL
*"     REFERENCE(SAVE_AS) TYPE  LOCALFILE OPTIONAL
*"  TABLES
*"      BOOKMARKS TYPE  ZTWORD_BOOKMARK
*"  EXCEPTIONS
*"      FILE_NOT_FOUND
*"      MSWORD_NOT_FOUND
*"      SAVE_ERROR
*"----------------------------------------------------------------------
include ole2incl.
data: word type ole2_object.

* Word öffnen
create object word 'WORD.BASIC'.
if sy-subrc ne 0.
  raise msword_not_found.
  exit.
endif.
* Datei öffnen
call method of word 'FILEOPEN'
     exporting #1 = file.
if sy-subrc ne 0.
  call method of word 'APPCLOSE'.
  free object word.
  raise file_not_found.
  exit.
endif.

* Über die Bookmark-Tabelle loopen und Text in Datei schreiben
loop at bookmarks.
  call method of word 'EDITBOOKMARK'
       exporting #1 = bookmarks-bookmark
                 #2 = 0
                 #3 = 0
                 #4 = 0
                 #5 = 1.
  call method of word 'INSERT'
       exporting #1 = bookmarks-text.
endloop.

* Speichern ?
if save = 'X'.
  if save_as is initial.
    call method of word 'FileSave'.
  else.
    call method of word 'FileSaveAs'
         exporting #1 = SAVE_AS.
    if sy-subrc ne 0.
      raise save_error.
    endif.
  endif.
endif.

* Drucken ?
if print = 'X'.
  call method of word 'FILEPRINT'.
endif.

* Word anzeigen ?
if display = 'X'.
  call method of word 'APPSHOW'.
else.
  call method of word 'APPCLOSE'
       exporting #1 = 'X'.
endif.

free object: word.
word-handle = -1.
free word.
ENDFUNCTION.
Wenn ich den Parameter #1 von 'APPCLOSE' nicht mit angebe, kommt die Abfrage ob ich speichern möchte.
Vielleicht ist der Wert falsch, aber ich habe schon alles ausprobiert ' ', 'X', 0, 1, 'TRUE', 'FALSE'.

MfG
Kaiwalker

Beitrag von olli-x (Specialist / 166 / 0 / 1 ) »
Hallo Kaiwalker,

wie sieht´s denn mit einem weiteren internen Modus aus? Ich hatte das gleiche Problem mit Excel. Aufruf erfolgte aus der Konfiguration des Vertriebsbeleges... Solange man in der Belegverarbeitung stand blieb der EXCEL-Prozess stehen... Nachdem ich die Funktionaltät in einen separaten Report gepackt habe und diesem mit "submit" aufrief funktionierte das Ganze...
Ich bin allerdings nicht fit bei diesen OLE-Anbindungen. Vielleicht gehts auch schöner... Soll halt einfach ein Denkansatz sein.

Viele Grüße,
Oliver

Beitrag von Arno Simon (ForumUser / 84 / 0 / 1 ) »
Hallo Kai,
Vielleicht ist der Wert falsch, aber ich habe schon alles ausprobiert ' ', 'X', 0, 1, 'TRUE', 'FALSE'.
Und damit leider etwas daneben gelegen.... Der Integerwert für das boolsche True in VBA ist :arrow: -1 ;)

vG

Arno

Beitrag von Kaiwalker (Specialist / 165 / 0 / 0 ) »
@olli-x
Da ich das ganze ja als FuBau konzipiert habe, den ich dann aus einem anderen Programm aufrufe kann es ja schon Mal nicht am internen Modus liegen. Außerdem ist Word auch noch im Speicher, wenn ich SAP verlasse.

@Arno Simon
Der Wert -1 hilft mir auch nicht weiter.
Das Dokument bleibt immernoch offen.

Was ist denn in VB der boolische Wert für "FALSE" ?
Das ist doch 0 oder liege ich da falsch ?

Oder ist der Parameter falsch ? Ich will Word ja nur mitgeben, dass Änderungen am Dokument nicht gespeichert werden sollen, wenn Word geschlossen wird.

Seite 1 von 1

Vergleichbare Themen

5
Antw.
3123
Views
Excel-Prozess bleibt bestehen
von s_arnold » 31.08.2006 10:37 • Verfasst in ABAP® Core
0
Antw.
1257
Views
Einspielen von SP bleibt beim Modifikationsabgleich hängen
von vhoffe » 12.02.2007 10:19 • Verfasst in Basis
0
Antw.
1609
Views
4
Antw.
5671
Views
2
Antw.
4176
Views

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Aktuelle Forenbeiträge

FOR mit CORRESPONDING
vor 17 Stunden von sap_enthusiast 11 / 1643
Netzplan drucken
vor 17 Stunden von sap_enthusiast 2 / 160
SALV: Titel zu lang
vor 3 Tagen von ralf.wenzel 3 / 431
Web Feature Services (WFS) im SAP
vor 6 Tagen von msfox 1 / 954
WM: Transportauftrag quittieren - drucken
vor einer Woche von JHM 4 / 2845

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Aktuelle Forenbeiträge

FOR mit CORRESPONDING
vor 17 Stunden von sap_enthusiast 11 / 1643
Netzplan drucken
vor 17 Stunden von sap_enthusiast 2 / 160
SALV: Titel zu lang
vor 3 Tagen von ralf.wenzel 3 / 431
Web Feature Services (WFS) im SAP
vor 6 Tagen von msfox 1 / 954
WM: Transportauftrag quittieren - drucken
vor einer Woche von JHM 4 / 2845

Unbeantwortete Forenbeiträge

Web Feature Services (WFS) im SAP
vor 6 Tagen von msfox 1 / 954
Erweiterung in ME51N/ME52N:
vor 3 Wochen von ABAPlerv 1 / 3270
Erweiterung in ME51N/ME52N:
vor 3 Wochen von ABAPlerv 1 / 3157