Wednesday, 1 April 2026

Upload Logo on Dialog ( Module Pool ) Programming - SAP ABAP

Upload Logo on Module Pool Programming: 

Data declarations: 

DATA: lv_xstr    TYPE xstring,
      lv_len     TYPE i,
      lv_off     TYPE i.

DATA: go_cont    TYPE REF TO cl_gui_custom_container,
      go_logo    TYPE REF TO cl_gui_picture.

DATA: gv_url     TYPE LENGTH 255,
      gv_result  TYPE i.

DATAgt_graphic TYPE STANDARD TABLE OF x255,
      gv_size    TYPE i.

""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

Step 1: Upload your BMAP photo in the SE78.
Step 2: Make a custom container on the modulepool screen and name it as 'CC_LOGO'
Step 3: Write this bottom code in PBO module on the screen which you like to display logo.

""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

Program Code:

  IF go_cont IS INITIAL.
    CREATE OBJECT go_cont
      EXPORTING
        container_name 'CC_LOGO'.    "Name of Custom Container
  ENDIF.

  IF go_logo IS INITIAL.
    CREATE OBJECT go_logo
      EXPORTING
        parent go_cont.

    CALL METHOD go_logo->set_display_mode
      EXPORTING
        display_mode cl_gui_picture=>display_mode_fit_center.
  ENDIF.

  IF gv_url IS INITIAL.

    CALL METHOD cl_ssf_xsf_utilities=>get_bds_graphic_as_bmp
      EXPORTING
        p_object 'GRAPHICS'
        p_name   'ZAK_INFO'  "Name of the logo
        p_id     'BMAP'
        p_btype  'BCOL'
      RECEIVING
        p_bmp    lv_xstr
      EXCEPTIONS
        OTHERS   1.

    IF lv_xstr <> 0.
      MESSAGE 'Image not found in SE78' TYPE 'I'.
      RETURN.
    ENDIF.

    gv_size xstrlenlv_xstr ).
    lv_len  gv_size.
    lv_off  0.
    CLEAR gt_graphic.

    WHILE lv_len > 255.
      APPEND lv_xstr+lv_off(255TO gt_graphic.
      lv_off lv_off + 255.
      lv_len lv_len 255.
    ENDWHILE.

    IF lv_len > 0.
      APPEND lv_xstr+lv_off(lv_lenTO gt_graphic.
    ENDIF.

    CALL FUNCTION 'DP_CREATE_URL'
      EXPORTING
        type     'IMAGE'
        subtype  'BMP'
        size     gv_size
        lifetime 'T'
      TABLES
        data     gt_graphic
      CHANGING
        url      gv_url.

    CALL METHOD go_logo->load_picture_from_url
      EXPORTING
        url    gv_url
      IMPORTING
        result gv_result.

  ENDIF.

  cl_gui_cfw=>flush).



No comments:

Post a Comment