sapdev logo background
sapdev logo sapdev logo
Comments

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




comments powered by Disqus