" Radical esse código heim, hahaii !!
" Foi como disse o meu amigo que passou este esqueminha pra mim,
" o Nicholas procurou muito na internet e naum achou porisso estou postando
" espero que ajude algum junior, vamos por passos :
" Passo 1 - Criar uma 'Custom Control no Layout da tela
" Passo 2 - Dentro do 'Before OutPut (PBO) tem o Modulo de Status da tela,
" Passo 3 - Dentro deste modulo (por Bouas praticas) crie um 'Perform para
" chamar a imagem
" Passo 4 - Agora coloque o codigo abaixo não esquecendo de relacionar o
" o 'Custom Control com o container e colocar o nome do figurinha no 'Method
" É Voala (é Assim que escreve?) agora seu 'Module Pool vai ter uma imagem a
" maioria da vezes serve pra coloca o logo do cliente (por favor não erre a
" imagem )
*&---------------------------------------------------------------------*
*& Include MZ_NCPROGRAMAF01
*&---------------------------------------------------------------------*
*&---------------------------------------------------------------------*
*& Form Z_FIGURA_1
*&---------------------------------------------------------------------*
FORM z_figura_1 .
DATA: w_lines TYPE i.
TYPES pict_line(256) TYPE c.
DATA : container TYPE REF TO cl_gui_custom_container,
editor TYPE REF TO cl_gui_textedit,
picture TYPE REF TO cl_gui_picture,
pict_tab TYPE TABLE OF pict_line,
url(255) TYPE c.
DATA: graphic_url(255).
DATA: BEGIN OF graphic_table OCCURS 0,
line(255) TYPE x,
END OF graphic_table.
DATA: l_graphic_conv TYPE i.
DATA: l_graphic_offs TYPE i.
DATA: graphic_size TYPE i.
DATA: l_graphic_xstr TYPE xstring.
CALL METHOD cl_gui_cfw=>flush.
* Aqui é declarado o container onde a imagem vai aparecer.
CREATE OBJECT: container EXPORTING container_name = 'CUSTOM_CONTROL_1', picture EXPORTING parent = container.
* Metodo que carrega a imagem do SAP.
CALL METHOD cl_ssf_xsf_utilities=>get_bds_graphic_as_bmp
EXPORTING
p_object = 'GRAPHICS'
p_name = 'SUA_IMAGEM_AKI'
p_id = 'BMAP'
p_btype = 'BCOL'
RECEIVING
p_bmp = l_graphic_xstr
EXCEPTIONS
not_found = 1
internal_error = 2
OTHERS = 3.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
graphic_size = XSTRLEN( l_graphic_xstr ).
l_graphic_conv = graphic_size.
l_graphic_offs = 0.
WHILE l_graphic_conv > 255.
graphic_table-line = l_graphic_xstr+l_graphic_offs(255).
APPEND graphic_table.
l_graphic_offs = l_graphic_offs + 255.
l_graphic_conv = l_graphic_conv - 255.
ENDWHILE.
graphic_table-line = l_graphic_xstr+l_graphic_offs(l_graphic_conv).
APPEND graphic_table.
CALL FUNCTION 'DP_CREATE_URL'
EXPORTING
type = 'IMAGE'
subtype = 'X-UNKNOWN'
size = graphic_size
lifetime = 'T'
TABLES
data = graphic_table
CHANGING
url = url.
CALL METHOD picture->load_picture_from_url
EXPORTING
url = url.
CALL METHOD picture->set_display_mode
EXPORTING
display_mode = picture->display_mode_fit_center.
ENDFORM. " Z_FIGURA_1