cancel
Showing results for 
Search instead for 
Did you mean: 

Ler arquivos salvos no SAP (PDF,TXT, XML), Como fazer ?

neylonSilva
Participant
0 Kudos

Estou desenvolvendo um programa no qual preciso salvar arquivos PDF no SAP, ate salvar conseguir fazer ! Mas agora, como faço para ler os arquivos que salvei e poder salvar na maquina do usuario ?

Eu fiz usando as funções :

1) Método cl_gui_frontend_services=>gui_upload

2) Função: SO_CONVERT_CONTENTS_BIN

3) Função: SO_OBJECT_INSERT

4) Função: BINARY_RELATION_CREATE_COMMIT

Agora como fazer para ler o que foi salvo ? Pois eu sei como usar as funçoes de Download do Banco para o PC, mas não sei localizar o arquivo no Banco.

Alguem sabe ?

Accepted Solutions (0)

Answers (1)

Answers (1)

raymond_giuseppi
Active Contributor
0 Kudos

Not sure to understand, but did you try SO_OBJECT_DOWNLOAD and SO_OBJECT_READ.?

Regards,

Raymond

neylonSilva
Participant
0 Kudos

I tried using the SO_OBJECT_READ, but I do not know if used correctly.
Because when I send save, not save correct.

This is my code :

   Data : patch TYPE string,
       LV_FILENAME TYPE STRING,
       LV_FILE     TYPE STRING,
       LV_ACTION   TYPE I,
       pathchfull TYPE string.

          CALL METHOD cl_gui_frontend_services=>file_save_dialog
              EXPORTING
                window_title         = 'Selecione local para Salvar'
                default_extension    = 'PDF'
                default_file_name    = LV_FILE
*                with_encoding        =
                file_filter          = '*.PDF'
*                initial_directory    =
*                prompt_on_overwrite  = 'X'
              CHANGING
                filename             = filename
                path                 = patch
                fullpath             = pathchfull
                user_action          = LV_ACTION
*                file_encoding        =
                    .
            IF sy-subrc <> 0.
*             MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*                        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
            ENDIF.



Data : it_soli TYPE STANDARD TABLE OF SOLI.


CALL FUNCTION 'SO_OBJECT_READ'
  EXPORTING
*   FILTER                           =
    folder_id                        = ls_fol_id
*   FORWARDER                        =
    object_id                        = ls_obj_id
*   OWNER                            =
*   F_MAILER                         = ' '
* IMPORTING
*   OBJECT_FL_DISPLAY                =
*   OBJECT_HD_DISPLAY                =
*   OBJECT_RC_DISPLAY                =
TABLES
   OBJCONT                          = it_soli
*   OBJHEAD                          =
*   OBJPARA                          =
*   OBJPARB                          =
          .
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.







CALL METHOD cl_gui_frontend_services=>gui_download
  EXPORTING
*    bin_filesize              =
    filename                  = pathchfull
    filetype                  = 'BIN'
*    append                    = SPACE
*    write_field_separator     = SPACE
*    header                    = '00'
*    trunc_trailing_blanks     = SPACE
*    write_lf                  = 'X'
*    col_select                = SPACE
*    col_select_mask           = SPACE
*    dat_mode                  = SPACE
*    confirm_overwrite         = SPACE
*    no_auth_check             = SPACE
*    codepage                  = SPACE
*    ignore_cerr               = ABAP_TRUE
*    replacement               = '#'
*    write_bom                 = SPACE
*    trunc_trailing_blanks_eol = 'X'
*    wk1_n_format              = SPACE
*    wk1_n_size                = SPACE
*    wk1_t_format              = SPACE
*    wk1_t_size                = SPACE
*  IMPORTING
*    filelength                =
  changing
    data_tab                  = it_soli
        .
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

former_member184473
Active Contributor
0 Kudos

Oi Neylon,

As FM SO_OBJECT_READ e SO_OBJECT_INSERT não released para uso externo.

Use as FM SO_ATTACHMENT_READ_API1 e SO_ATTACHMENT_INSERT_API1 .

A seguinte wiki tem um exemplo:

http://wiki.sdn.sap.com/wiki/display/ABAP/Reading+PDF+attachment+from+sap+inbox+through+ABAP

Atenciosamente,

Eduardo Rezende