Dienste zum Objekt: PDF Ablegen

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

Dienste zum Objekt: PDF Ablegen

Beitrag von Jumper (ForumUser / 8 / 0 / 0 ) »
Hallo,

ich habe mehrere PDF Dateien (als Tabelle "binary_content" (type solix_tab)), welche ich per Email aus SAP heraus versende.
Versand der Dateien per Mail usw... funktioniert alles.

Jetzt will ich die PDF Dateien nach Versand an eine Faktura hängen, so das diese später dann über die Objektdienste abgerufen werden können.
Dokumentart usw... ist angelegt. Ablage über den Dialog funktioniert.

Wie kann ich in ABAP das Dokument ablegen, gibt es hierfür einen Baustein?

Kann ich eventuell auch die komplette Mail mit Anlagen archivieren?
Habe das mal über CL_BCS CREATE_LINK probiert. Scheint aber nicht zu klappen.

Vielen Dank und Grüsse!

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


Re: Dienste zum Objekt: PDF Ablegen

Beitrag von Alexander D. (Expert / 682 / 30 / 84 ) »
hallo Jumper,

schau mal, ob du unter diesem Link was Brauchbares findest:
http://it.toolbox.com/wiki/index.php/GO ... n_SAP/ABAP
schöne Grüße
Alexander

ECC 6.0 EHP 7

Re: Dienste zum Objekt: PDF Ablegen

Beitrag von foessleitnerj (ForumUser / 51 / 4 / 18 ) »
Hi!

Ich verwende manchmal den Funktionsbaustein SO_OBJECT_INSERT zum Erstellen des Dokuments und dann BINARY_RELATION_CREATE zum Verknüpfen mit einem Business Objekt.

lg Fößleitner Johann
Die Performance und Ergebnisse von SELECTs und JOINs im Produktivsystem überprüfen?
=> SQL Cockpit
http://www.cadaxo.com

Re: Dienste zum Objekt: PDF Ablegen

Beitrag von Jumper (ForumUser / 8 / 0 / 0 ) »
Hi,
momentan versuche ich folgendes coding.
Läuft fehlerfrei durch aber erzeugt keinen Verknüpfungseintrag an der Faktura.

Ersetzt der BINARY_RELATION_CREATE den BDS_BUSINESSDOCUMENT_CREATEF?

Vielen Dank!

Code: Alles auswählen.

           ls_object-objkey = VBELN.
              ls_object-objtype = 'ZSDINVOICE'.


              CALL FUNCTION 'SO_FOLDER_ROOT_ID_GET'
                EXPORTING
                  region    = 'B'
                IMPORTING
                  folder_id = ls_fol_id
                EXCEPTIONS
                  OTHERS    = 1.

*            Umwandlung solix zu soli
              refresh it_content.
              loop at binary_content into wa_solix.
                clear wa_soli.
                assign wa_soli to <ptr_hex> casting.
                move wa_solix to <ptr_hex>.
                append wa_soli to it_content.
              endloop.


              ls_obj_data-objsns = 'O'.
              ls_obj_data-objla = sy-langu.
              ls_obj_data-objdes = filename1.
              ls_obj_data-file_ext = 'PDF'. "fileext1.
              ls_obj_data-objlen = LINES( it_content ) * 255.



              CALL FUNCTION 'SO_OBJECT_INSERT'
                EXPORTING
                  folder_id             = ls_fol_id
                  object_type           = 'EXT'
                  object_hd_change      = ls_obj_data
                IMPORTING
                  object_id             = ls_obj_id
                TABLES
                  objhead               = it_objhead
                  objcont               = it_content
                EXCEPTIONS
                  active_user_not_exist = 35
                  folder_not_exist      = 6
                  object_type_not_exist = 17
                  owner_not_exist       = 22
                  parameter_error       = 23
                  OTHERS                = 1000.

              IF sy-subrc = 0 AND ls_object-objkey IS NOT INITIAL.
                ls_folmem_k-foltp = ls_fol_id-objtp.
                ls_folmem_k-folyr = ls_fol_id-objyr.
                ls_folmem_k-folno = ls_fol_id-objno.
                ls_folmem_k-doctp = ls_obj_id-objtp.
                ls_folmem_k-docyr = ls_obj_id-objyr.
                ls_folmem_k-docno = ls_obj_id-objno.
                lv_ep_note = ls_folmem_k.
                ls_note-objtype = 'MESSAGE'.
                ls_note-objkey = lv_ep_note.
                CALL FUNCTION 'BINARY_RELATION_CREATE_COMMIT'
                  EXPORTING
                    obj_rolea    = ls_object
                    obj_roleb    = ls_note
                    relationtype = 'ATTA'
                  EXCEPTIONS
                    OTHERS       = 1.
              ELSE.
*                MESSAGE 'Not OK' TYPE 'I'.
*                RETURN.
              ENDIF.

              IF sy-subrc = 0.
*                MESSAGE 'OK' TYPE 'I'.
              ELSE.
*                MESSAGE 'Not OK' TYPE 'I'.
              ENDIF.




*              try.
              move VBELN1 to LS_APPOBJECT-OBJKEY.
              move 'VBRK' to LS_APPOBJECT-OBJTYPE.

*                  call method send_request->CREATE_LINK
*                    EXPORTING
*                      I_APPL_OBJECT = LS_APPOBJECT.
*                catch CX_SEND_REQ_BCS .

*
*                  call method gos->CREATE_ATTACHMENT
*                    EXPORTING
*                      IS_OBJECT = LS_APPOBJECT.


              CALL FUNCTION 'BDS_BUSINESSDOCUMENT_CREATEF'
                EXPORTING
*                 LOGICAL_SYSTEM        =
                  CLASSNAME             = 'ZSDINVOICE'
                  CLASSTYPE             = 'VBRK'
                 CLIENT                = SY-MANDT
                 OBJECT_KEY            = VBELN1
*                 IMPORTING
*                 OBJECT_KEY            =
                TABLES
                  FILES                 = binary_content
*                 SIGNATURE             =
* EXCEPTIONS
*   NOTHING_FOUND         = 1
*   PARAMETER_ERROR       = 2
*   NOT_ALLOWED           = 3
*   ERROR_KPRO            = 4
*   INTERNAL_ERROR        = 5
*   NOT_AUTHORIZED        = 6
*   OTHERS                = 7
                        .
              IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
              ENDIF.

Re: Dienste zum Objekt: PDF Ablegen

Beitrag von a-dead-trousers (Top Expert / 4271 / 213 / 1140 ) »
Hi!

Ich bin jetzt in Bezug auf BDS nicht so sattelfest, da wir den über eine eigene API nutzen und daher nur sehr selten direkt mit den BDS Bausteinen arbeiten müssen. In Bezug auf GOS wäre es denkbar, dass ein COMMIT WORK fehlt, welches die BDS Bausteine meines Wissens benötigen. Zumindest hab ich keines in dem geposteten Coding gesehen.

lg ADT
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Seite 1 von 1

Vergleichbare Themen

3
Antw.
14605
Views
Dienste zum Objekt - Notizen zu Objekt holen
von gazzle » 26.01.2011 12:24 • Verfasst in ABAP® Core
0
Antw.
1880
Views
Dienste zum Objekt im Auftrag
von Mariana » 04.04.2005 14:05 • Verfasst in Sales and Distribution
7
Antw.
10744
Views
ArchiveLink mit Dienste zum Objekt(GOS)
von Johnny11 » 14.05.2014 13:49 • Verfasst in Basis
0
Antw.
1467
Views
3
Antw.
25903
Views
Dienste zum Objekt - Speicherort?
von tmaurer » 14.10.2005 08:07 • Verfasst in ABAP® Core

Aktuelle Forenbeiträge

Zugriff auf Daten via Webdav
vor 16 Stunden von msfox 1 / 33
Interne Tabelle
vor 17 Stunden von sap_enthusiast 3 / 163
Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 71

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

Zugriff auf Daten via Webdav
vor 16 Stunden von msfox 1 / 33
Interne Tabelle
vor 17 Stunden von sap_enthusiast 3 / 163
Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 71

Unbeantwortete Forenbeiträge

Zugriff auf Daten via Webdav
vor 16 Stunden von msfox 1 / 33
Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 71
Group Items auf einer Filterbar
vor einer Woche von Bright4.5 1 / 111