Insert image onto SAP screen

This is very simple to do, first create a dialog program with one screen (any number i.e. 0100) and create a custom control called 'CUST_CONTROL'. Now use the below sections of code to create a top include and a PBO module/process. And then finally create a transaction code for it. Click here to return to 4.7 version, but to be fair all the 4.7 one does is use a method to call the same function module.


CONSTANTS: CNTL_TRUE  TYPE I VALUE 1,
      CNTL_FALSE type i value 0.
data:
   h_picture       type ref to cl_gui_picture,
   h_pic_container type ref to cl_gui_custom_container.
*   h_tree          type ref to cl_gui_list_tree,
*   h_docking       type ref to cl_gui_docking_container,
*   h_application   type ref to lcl_application.
data: graphic_url(255),
      graphic_refresh(1),
      g_result                     like cntl_true.
data: begin of graphic_table occurs 0,
        line(255) type x,
      end of graphic_table.
data: graphic_size type i.
        

data: g_stxbitmaps type STXBITMAPS,
      l_bytecount  type i,
      l_content   TYPE  standard table of bapiconten initial size 0.
g_stxbitmaps-tdobject = 'GRAPHICS'.
g_stxbitmaps-tdname = 'ENJOY'.
g_stxbitmaps-tdid = 'BMAP'.
g_stxbitmaps-tdbtype = 'BMON'.  "(BMON = black&white, BCOL = colour)
call function 'SAPSCRIPT_GET_GRAPHIC_BDS'
     exporting
          i_object       = g_stxbitmaps-tdobject
          i_name         = g_stxbitmaps-tdname
          i_id           = g_stxbitmaps-tdid
          i_btype        = g_stxbitmaps-tdbtype
     importing
          e_bytecount    = l_bytecount
     tables
          content        = l_content
     exceptions
          not_found      = 1
          bds_get_failed = 2
          bds_no_content = 3
          others         = 4.
call function 'SAPSCRIPT_CONVERT_BITMAP'
     exporting
          old_format               = 'BDS'
          new_format               = 'BMP'
          bitmap_file_bytecount_in = l_bytecount
     importing
          bitmap_file_bytecount  = graphic_size
     tables
          bds_bitmap_file        = l_content
          bitmap_file            = graphic_table
     exceptions
          others                 = 1.
call function 'DP_CREATE_URL'
     exporting
        type                 = 'image'            "#EC NOTEXT
        subtype              = cndp_sap_tab_unknown
        size                 = graphic_size
        lifetime             = cndp_lifetime_transaction
     tables
        data                 = graphic_table
     changing
        url                  = graphic_url
     exceptions
        others               = 4 .
create object h_pic_container
       exporting container_name =  'CUST_CONTROL'.
create object h_picture exporting parent = h_pic_container.
call method h_picture->set_display_mode
     exporting
          display_mode = cl_gui_picture=>display_mode_normal.
call method h_picture->load_picture_from_url
     exporting url    = graphic_url
     importing result = g_result.
endmodule.                 " STATUS_0100  OUTPUT

Return to SAP Graphics home page


Related Articles

ABAP Dialog Programming Techniques - BC410
Insert image onto SAP screen
Creating your first ABAP dialog screen program in SAP
SAP ABAP dynpro programs, dialog screen programs with input fields, buttons, OO ALV grids etc..
SAP ABAP dynpro programs, dialog screen programs with input fields, buttons, OO ALV grids etc..
SAP dialog screen / dynpro Exit Command
Dialog programming, dynpro screen field validation
SAP Graphics Development - Example code and information on various areas of graphics development
Grouping SAP dynpro screen radiobuttons
Add a dropdown list to a SAP dynpro screen using the Listbox option
Implementing a subscreen to an ABAP dynpro screen with SAP
F4 help functionality for a dynpro screen field using the PROCESS ON VALUE-REQUEST statement