Im Dynpro über einen Container ein Bild anzeigen

1. SMW0: Bild in BMP-Format hochladen

2. Programm und Dynpro erstellen

3. Screen Painter aufrufen in dem man auf den Button "Layout" klickt

4. In der linken Spalte das Icon " Custom Control" nach rechts ziehen (+ die Grösse einstellen) und beschriften (z.B. P_BILD_05). Dann nicht vergessen zu aktivieren.

5. In der Ablauflogik folgende Einträge im PBO erstellen

PROCESS BEFORE OUTPUT.
  MODULE status_9000.


  "Bilder anzeigen
  MODULE bild_9000.

  "HTML Container anzeigen
  MODULE html_9000.

PROCESS AFTER INPUT.
  MODULE user_command_9000.

 

6. Doppelklick auf "bild_9000" und legen Sie ein PBO Modul an. Folgenden Code einfügen

MODULE bild_9000 OUTPUT. 

 

TYPE-POOLScndp.
  DATAlv_objid TYPE w3objid VALUE 'Z_LOGO', "NAME BILD SMW0
        go_container TYPE REF TO cl_gui_custom_container,
        go_picture   TYPE REF TO cl_gui_picture,
        lv_url       TYPE cndp_url.

  IF go_container IS INITIAL.

    CREATE OBJECT go_container
      EXPORTING
        container_name              'P_BILD_01' "NAME CUSTOM CONTAINER
        repid                       'Z_DYNPROBILD' "PROGRAMM NAME
        dynnr                       '9000' "DYNPRONAME
      EXCEPTIONS
        cntl_error                  1
        cntl_system_error           2
        create_error                3
        lifetime_error              4
        lifetime_dynpro_dynpro_link 5
        OTHERS                      6.
    IF sy-subrc <> 0.
      MESSAGE i001(00WITH 'Fehler mit dem erstellen des containers'.
      LEAVE LIST-PROCESSING.
    ENDIF.
  ENDIF.
  IF go_picture IS INITIAL.
    CREATE OBJECT go_picture
      EXPORTING
        parent go_container
      EXCEPTIONS
        error  1
        OTHERS 2.
    IF sy-subrc <> 0.
      MESSAGE i001(00WITH 'Fehler mit dem anzeigen des Bildes'.
      LEAVE LIST-PROCESSING.
    ENDIF.
  ENDIF.
  IF go_picture IS NOT INITIAL.

    CALL FUNCTION 'DP_PUBLISH_WWW_URL'
      EXPORTING
        objid    lv_objid
        lifetime cndp_lifetime_transaction
      IMPORTING
        url      lv_url
      EXCEPTIONS
        OTHERS   1.

    IF sy-subrc 0.
      CALL METHOD go_picture->load_picture_from_url_async
        EXPORTING
          url lv_url.

      CALL METHOD go_picture->set_display_mode
        EXPORTING
          display_mode cl_gui_picture=>display_mode_fit.
    ELSE.
      MESSAGE i001(00WITH 'Fehler mit dem Laden des Bildes'.
      LEAVE LIST-PROCESSING.
    ENDIF.
  ENDIF. 

 

EDNMODULE

        search this website

Regotz Michel