Mit ABAP Eigene Eigenschaften einer Worddatei lesen

Die Objektorientierung mit ABAP®: Vererbung, Dynamische Programmierung, GUI Controls (u.a. ALV im OO).

Mit ABAP Eigene Eigenschaften einer Worddatei lesen

Postby Florian3519 » Wed Oct 22, 2014 1:36 pm

Hallo Allerseits,

ich habe folgende Anforderung: Ich soll mit ABAP Worddateien öffnen und aus diesen Benutzerdefinierte Eigenschaften lesen. In VBA werden diese Werte mit "ActiveDocument.CustomDocumentProperties("NameDerEigenenProperty").Value" gelesen.

Das Öffnen von Worddokumenten mit OO stellt kein Problem dar. Workarounds sind nicht möglich, ich kann den Worddateien also kein Makro andichten, um diese benutzerdefinierten Eigenschaften auslesen zu können. Hat jemand sowas schon mal gemacht?

Viele Grüße von nopp
Florian3519
.
.
 
Posts: 8
Joined: Thu Nov 16, 2006 10:43 pm

Re: Mit ABAP Eigene Eigenschaften einer Worddatei lesen

Postby Tron » Wed Oct 22, 2014 2:00 pm

Tron
.....
.....
 
Posts: 1112
Joined: Sat Aug 04, 2007 10:21 pm

Re: Mit ABAP Eigene Eigenschaften einer Worddatei lesen

Postby Florian3519 » Wed Oct 22, 2014 2:19 pm

Hallo Jens,

das hab ich mir bereits angschaut und leider kläglich versagt:

DATA: l_word TYPE ole2_object.
DATA: l_document TYPE ole2_object.
DATA: l_value TYPE string.

CREATE OBJECT l_word 'Word.Application'.
SET PROPERTY OF l_word 'Visible' = 1.

CALL METHOD OF l_word 'Documents' = l_document.

CALL METHOD OF l_document 'Open'
EXPORTING
#1 = 'C:\Temp\AAA\Wordtest.doc'.

CALL METHOD OF l_document 'ThisDocument.CustomDocumentProperties'
EXPORTING
#1 = 'Dokumententyp'
importing
#1 = l_value.


Den letzten Aufruf bekomme ich einfach nicht hin..

Gruß von nopp
Florian3519
.
.
 
Posts: 8
Joined: Thu Nov 16, 2006 10:43 pm

Re: Mit ABAP Eigene Eigenschaften einer Worddatei lesen

Postby Tron » Wed Oct 22, 2014 9:30 pm

Na gut..
Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1. DATA gs_word TYPE ole2_object . "OLE object handle
  2.  
  3.  create object gs_word 'Word.Basic'.
  4.  
  5. CALL METHOD OF gs_word 'AppShow'.
  6.  
  7. call method of gs_word 'FileOpen'
  8.     exporting
  9.       #1 = 'c:\temp\xxx.doc'.
  10.  
  11.   DATA i TYPE i.
  12.   DATA j(20).
  13.   DATA k TYPE i.
  14. *  DATA namestr TYPE string.
  15. *  DATA valstr TYPE string.
  16.   DATA namestr(40).
  17.   DATA valstr(40).
  18.  
  19.  
  20.   CALL METHOD OF gs_word 'CountDocumentProperties' = i.
  21.  
  22.   DO i TIMES.
  23.  
  24.     CALL METHOD OF gs_word 'DocumentPropertyName$' = namestr
  25.       EXPORTING #1 = sy-index.
  26.  
  27. * flush (sonst ist namestr LEER)
  28.     CALL METHOD OF gs_word 'DocumentPropertyExists' = k
  29.       EXPORTING #1 = namestr.
  30.  
  31.     IF k NE 0.
  32.  
  33.  
  34.       CALL METHOD OF gs_word 'GetDocumentProperty$' = valstr
  35.         EXPORTING
  36.         #01 = namestr
  37.         #02 = 0.
  38.  
  39. * flush (sonst ist valstr LEER)
  40.       CALL METHOD OF gs_word 'DocumentPropertyExists' = k
  41.         EXPORTING #1 = namestr.
  42.  
  43.  
  44.       WRITE :/ sy-index, valstr, namestr.
  45.       CLEAR:valstr, namestr.
  46.  
  47.     ENDIF.
  48.  
  49.  
  50.   call method of gs_word 'FileCloseAll'
  51.     exporting
  52.       #1 = 2.
  53.  
  54.   CALL METHOD OF gs_word 'AppClose'.
  55.  
  56.   FREE OBJECT gs_word.
  57.  
  58.  
GeSHi ©


Ergibt:
Word Test

1 Titel des Dokuments Title
2 Betreff Subject
3 Tron Author
4 wieso ich ? Manager
5 * Firma * Company
6 * Kategorie * Category
7 Keywords
8 Kommentare Kommentare Kommentare Komment Comments
9 Normal.dotm Template
10 22.10.2014 19:30 CreateTime
11 22.10.2014 22:58 LastSavedTime
12 LastPrinted
13 Tron LastSavedBy
14 4 RevisionNumber
15 TotalEditingTime
16 Pages
17 Paragraphs
18 Lines
19 Words
20 Characters
21 Bytes
22 Microsoft Office Word NameofApplication
23 Security
24 CharactersWithSpaces
25 HyperlinkBase
26 ODMADocId


.. mach was draus :wink:

lg Jens
Tron
.....
.....
 
Posts: 1112
Joined: Sat Aug 04, 2007 10:21 pm

Re: Mit ABAP Eigene Eigenschaften einer Worddatei lesen

Postby Florian3519 » Thu Oct 23, 2014 10:20 am

Hallo Jens,

ich hab was draus gemacht.. Und vielen vielen Dank.. :lol:

Gruß nopp aus Berlin
Florian3519
.
.
 
Posts: 8
Joined: Thu Nov 16, 2006 10:43 pm


Return to ABAP Objects®

Who is online

Users browsing this forum: No registered users and 8 guests