gelöst ABAP OLE


Getting started ... Alles für einen gelungenen Start.

Moderatoren: Jan, Steff

gelöst ABAP OLE

Beitragvon Abapsocke » 09.08.2018, 11:12

Hallo, ich versuche mich über ABAP OLE zu informieren und suche nach Informationen zu dem Thema. Ich möchte unterschiedliche Tabellen als Excel-Dokumente herausgeben und wenn möglich auch den umgekehrten Weg gehen, also von Excel zu Tabelle.

Leider finde ich nicht viel darüber im Web. Gibt es eventuell Tutorials oder Bücher dazu?
Abapsocke
ForumUser
 
Beiträge: 37
Registriert: 17.04.2018, 15:34
Dank erhalten: 0 mal
Ich bin: Entwickler/in

Sponsor

Alte ABAP-Entwicklerweisheit: Weißt du weder aus noch ein, baust du einen BADI ein

Re: ABAP OLE

Beitragvon ewx » 09.08.2018, 11:21

ewx
Top Expert
 
Beiträge: 3661
Registriert: 04.08.2003, 19:55
Wohnort: Schleswig-Holstein
Dank erhalten: 273 mal

Re: ABAP OLE

Beitragvon Abapsocke » 09.08.2018, 12:34

Bei ABAP2XLSX finde ich keine Angaben darüber, wie es funktioniert. Auf der Githubseite wird eine andere Seite erwähnt, diese wiederum verlinkt auf eine ehemalige Domain die nicht mehr genutzt wird.

Die anderen Infobeispiele helfen mir nicht so weiter. Wie ich einzelne Werte übergebe weiß ich schon, aber wie ich ganze Tabellen übergebe leider nicht.
Abapsocke
ForumUser
 
Beiträge: 37
Registriert: 17.04.2018, 15:34
Dank erhalten: 0 mal
Ich bin: Entwickler/in

Re: ABAP OLE

Beitragvon SaskuAc » 09.08.2018, 14:12

Naja, die quellen die EWX genannt hat sind so ziemlich die besten... du wirst leider nicht viel finden wenn du nicht wirklich lange lange suchst.
Ich kann dir höchstens empfehlen dich mit Visual Basic auseinander zu setzen - mit der Programmiersprache lernst du die Befehle die du in ABAP teilweise nutzen kannst...

Ansonsten würde ich einfach ABAP2XLSX einspielen und mich damit rumspielen .. ist eine recht einfach zu verwendendes Framework. Einfach mal ein wenig schauen. Zu ABAP2XLSX gibt es übrigens auch ein paar tutorials. 2 Sekunden googeln und man findet das hier:
https://blogs.sap.com/2010/07/12/abap2x ... from-abap/

einfach mal ein wenig rumspielen ( so wie immer in der Entwicklung ) und dann bekommt mans schon raus



Kleiner Tipp am Rande, verwende OLE nur wenn du keine andere Wahl hast. Spiel dich lieber eine Woche mit dem Framework und lerne es, bevor du anfängst mit OLE irgendwas zu basteln, was dir nicht taugt, bzw. nicht funktioniert. Da ist die Zeit besser aufgehoben.
SaskuAc
Specialist
 
Beiträge: 159
Registriert: 01.06.2015, 10:16
Dank erhalten: 15 mal
Ich bin: Entwickler/in

Re: ABAP OLE

Beitragvon Abapsocke » 10.08.2018, 09:35

Genau den Link hatte ich ja auch schon, aber das schaut mehr nach einer kurzen Werbung für das Framework aus und nicht nach einer Anleitung wie man es installiert und nutzt. Ich habe auch diverse Links darin angeklickt, bin aber zu keinem aussagekräftigeren Text gekommen. Wenn das Framework so gut ist, wie gesagt, dann wäre das eine super alternative, aber im Augenblick fehlen mir die Informationen dazu. Zumindest wie man es installiert, müsste ich ja dann wissen und ich weiß nicht ob ich das auf meinem Arbeitssystem aufspielen kann.

ich hab keinen zugang zum sap code exchange und der link dazu funktioniert auch nicht.

Über git steht, das ich abap git installieren muss. Da muss ich auch anfragen ob ich das überhaupt in Frage kommt.
Vielleicht gibt es ja irgendwen der mit dem Framework erfahrung hat und mir das ein stück weit erklären kann.
Abapsocke
ForumUser
 
Beiträge: 37
Registriert: 17.04.2018, 15:34
Dank erhalten: 0 mal
Ich bin: Entwickler/in

Re: ABAP OLE

Beitragvon black_adept » 13.08.2018, 10:37

Hier ist das Git-Repository von ABAP2XLSX. Der einfachste Weg es zu installieren ist der Import der beiden dort gelisteten Transportfiles (...TIR ) auf euer Entwicklungssystem oder eine Sandbox falls ihr dem Braten nicht traut. Die Version ist zwar etwa ein Jahr alt - aber die wichtigsten Funktionalitäten sind schon seit Jahren vorhanden und die aktuellste Version ( beziehbar über ABAPGIT ) hat nur Erweiterungen oder kleinere Bugfixes seitdem.
Zum "normalen" Gebrauch reicht der Transport allemal - zumindest installiere ich diese Version ( oder eine noch ein klein wenig ältere ) bei meinen Kunden wenn sie die Excel-Funktionalitäten benötigen.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de
black_adept
Top Expert
 
Beiträge: 2982
Registriert: 08.01.2003, 13:33
Wohnort: Lehrte ( bei Hannover )
Dank erhalten: 495 mal
Ich bin: Freiberufler/in

Re: ABAP OLE

Beitragvon Haubi » 13.08.2018, 15:02

Abapsocke hat geschrieben:Über git steht, das ich abap git installieren muss. Da muss ich auch anfragen ob ich das überhaupt in Frage kommt.
Vielleicht gibt es ja irgendwen der mit dem Framework erfahrung hat und mir das ein stück weit erklären kann.

Moin.

Wie black_adept bereits erwähnt hatte gibt es ABAP2XLSX auch hier als Transportfiles zum Runterladen. Auf Dauer lohnt sich das, weil man so auch mal Excel-Files im Hintergrund erzeugen kann.
Es werden Reports mitgeliefert, die für ziemlich viele (wenn nicht alle) Features Beispielcode bereitstellen. Lass die Dinger einfach mal laufen und schau, was passiert.

Hier mal eine "Einfachanwendung": Export eines Tabellenausschnitts (LT_SCOPE) gemäß aktuellem ALV-Layout in ein Excel-Dokument; anschließend Excel öffnen.
Code: Alles auswählen
        DATA(lr_excel) = NEW zcl_excel( ).

        " Convert ALV field catalog to Excel field catalog
        DATA(lt_xl_fcat) = VALUE zexcel_t_fieldcatalog( ).

        LOOP AT lt_fcat INTO DATA(ls_fcat).
          APPEND INITIAL LINE TO lt_xl_fcat ASSIGNING FIELD-SYMBOL(<ls_xl_fcat>).
          MOVE-CORRESPONDING ls_fcat TO <ls_xl_fcat>.
          <ls_xl_fcat>-position = ls_fcat-col_pos.
          <ls_xl_fcat>-dynpfld  = abap_true.
        ENDLOOP.

        DATA(lr_ws) = lr_excel->get_worksheet_by_index( 1 ).

        lr_ws->set_title( 'Test' ).
        lr_ws->bind_table( EXPORTING
                              is_table_settings = VALUE #( top_left_row = 1 top_left_column = 'A' )
                              ip_table = lt_scope
                              it_field_catalog = lt_xl_fcat
                            IMPORTING
                              es_table_settings = DATA(ls_tab_set) ).

    DATA(lr_xls_writer) = NEW zcl_excel_writer_2007( ).
    DATA(lv_content) = lr_xls_writer->zif_excel_writer~write_file( ir_excel ).
    DATA(lt_rawdata) = cl_bcs_convert=>xstring_to_solix( iv_xstring  = lv_content ).
    DATA(lv_bytecount) = xstrlen( lv_content ).

    DATA:error       TYPE REF TO i_oi_error,
         t_errors    TYPE STANDARD TABLE OF REF TO i_oi_error WITH NON-UNIQUE DEFAULT KEY,
         cl_control  TYPE REF TO i_oi_container_control, "OIContainerCtrl
         cl_document TYPE REF TO i_oi_document_proxy.   "Office Dokument

    c_oi_container_control_creator=>get_container_control( IMPORTING control = cl_control
                                                                     error   = error ).
    APPEND error TO t_errors.

    cl_control->init_control( EXPORTING  inplace_enabled     = space
                                         no_flush            = 'X'
                                         r3_application_name = 'Test'
                                         parent              = cl_gui_container=>screen0
                              IMPORTING  error               = error
                              EXCEPTIONS OTHERS              = 2 ).
    IF sy-subrc <> 0.
      RETURN.
    ENDIF.

    APPEND error TO t_errors.

    cl_control->get_document_proxy( EXPORTING document_type  = 'Excel.Sheet'                " EXCEL
                                              no_flush       = ' '
                                    IMPORTING document_proxy = cl_document
                                              error          = error ).
    APPEND error TO t_errors.

    cl_document->open_document_from_table( EXPORTING document_size    = lv_bytecount
                                                     document_table   = lt_rawdata
                                                     document_title   = 'Test'
                                                     open_inplace     = space ).
 


Grüße,
Haubi
Das ABAP Kochbuch ab sofort bei Amazon...

I'd rather write code that writes code than write code...
.. ..|. |.|| ||| ..| |.|. .| |. .|. . .| |.. | .... .. ... |.|| ||| ..| |.. ||| |. | |. . . |.. ||. .|.. .| ... ... . ...
Haubi
Expert
 
Beiträge: 587
Registriert: 13.12.2002, 09:52
Wohnort: Braunschweig
Dank erhalten: 20 mal
Ich bin: Entwickler/in


Zurück zu ABAP® für Anfänger

  Aktuelle Beiträge   
HUMV4-IDENT Handling Unit Tabelle
vor 4 Stunden von ewx 1 Antw.
Transaktion für Pflege Custom. Tabelle
vor 7 Stunden von DeathAndPain 4 Antw.
Kommunikation von Klassen und Methoden
vor 8 Stunden von 4byte 5 Antw.
CL_BCS_MESSAGE Fehler
Gestern von Haubi 3 Antw.
Alte Einträge aus der Tabelle SOFFCONT1, SOOD, SOST löschen
vor 20 Stunden von Tron 11 Antw.

  Ähnliche Beiträge beta
ABAP Objects oder ABAP Referenz
27.06.2005, 07:16 von Gast 2 Antw.
ABAP Workbench und ABAP Dictionary - für Einsteiger
07.11.2016, 15:32 von black_adept 6 Antw.
klassisches abap vs. abap objects
01.11.2003, 19:33 von R2D2 2 Antw.
ABAP im BW
24.05.2004, 13:09 von Nico 3 Antw.
SAP ABAP
23.06.2015, 14:29 von Andrzej 4 Antw.

 

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder