Quantcast
Channel: SCN : All Content - All Communities
Viewing all articles
Browse latest Browse all 8800

Change image in Dynpro

$
0
0

Hi,

 

I have a dynpro screen, where I can upload images. These images are first saved in an transparent table & then displayed in the screen.

 

But when I change an image, which already exist in the table, the dynpro displays the old image, even the old image has been deleted from the table. I also used , free PHOTO_CONTAINER & free viewer, but it did not work.

 

The colde is below.

 

   SELECT * INTO TABLE IT_IMAGE FROM ZTT_RMS_IMAGES
     WHERE DRIVER_ID = ZTPM_DRIVER_MAST-DRIVER_ID.

   IF SY-SUBRC = 0.
     LOOP AT IT_IMAGE.
       XML_TAB-RAW = IT_IMAGE-DOCCONT.
       GV_IMAGE_FORMAT = IT_IMAGE-DOCTYPE.
       APPEND XML_TAB.
     ENDLOOP. "PHOTO_CONTAINER

*    CLEAR: GRAPHIC_URL, IMAGE, VIEWER, PHOTO_CONTAINER .

     CALL FUNCTION 'DP_CREATE_URL'
       EXPORTING
         TYPE                 = 'IMAGE'
         SUBTYPE              = GV_IMAGE_FORMAT "'JPG'
       TABLES
         DATA                 = XML_TAB[]
       CHANGING
         URL                  = GRAPHIC_URL
       EXCEPTIONS
         DP_INVALID_PARAMETER = 1
         DP_ERROR_PUT_TABLE   = 2
         DP_ERROR_GENERAL     = 3
         OTHERS               = 4.


     IF SY-SUBRC <> 0.
       MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
               WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
       EXIT.
     ENDIF.

   ELSE.

     MESSAGE 'File does not Exist' TYPE 'I'.
   ENDIF.


   IF PHOTO_CONTAINER IS INITIAL.

     CREATE OBJECT PHOTO_CONTAINER
       EXPORTING
         CONTAINER_NAME              = 'PHOTO_CONTAINER' "'CONT'
         REPID                       = SY-CPROG "'ZRFMS_DRIVER_MASTER_FORM'
         DYNNR                       = '0100'
       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(00) WITH 'Error while creating container'.
       LEAVE LIST-PROCESSING.
     ENDIF.


     CASE SY-SUBRC.
       WHEN 0.
       WHEN OTHERS.
         RAISE CNTL_ERROR.
     ENDCASE.

   ENDIF.

   IF GRAPHIC_URL IS NOT INITIAL AND IMAGE IS INITIAL.

     CREATE OBJECT IMAGE
       EXPORTING
         PARENT = PHOTO_CONTAINER.

     CALL METHOD IMAGE->LOAD_PICTURE_FROM_URL
       EXPORTING
         URL = GRAPHIC_URL.

     IMAGE->SET_DISPLAY_MODE( IMAGE->DISPLAY_MODE_NORMAL_CENTER ).

     CL_GUI_CFW=>FLUSH( ).

     CL_GUI_CFW=>UPDATE_VIEW( ).

*    exit.
   ENDIF.

*
*  IF VIEWER IS INITIAL.
*    FREE VIEWER.
*  ENDIF.

   IF VIEWER IS INITIAL.
     CALL METHOD C_OI_CONTAINER_CONTROL_CREATOR=>GET_DOCUMENT_VIEWER
       IMPORTING
         VIEWER               = VIEWER
       EXCEPTIONS
         UNSUPPORTED_PLATFORM = 1.

     IF SY-SUBRC NE 0.
       MESSAGE I999(ZMSG) WITH 'Unknown error'.
     ENDIF.

     CALL METHOD VIEWER->INIT_VIEWER
       EXPORTING
         PARENT             = PHOTO_CONTAINER
       EXCEPTIONS
         CNTL_ERROR         = 1
         CNTL_INSTALL_ERROR = 2
         DP_INSTALL_ERROR   = 3
         DP_ERROR           = 4.

     IF SY-SUBRC NE 0.
       MESSAGE I999(ZMSGS) WITH 'Unknown error'.
     ENDIF.
   ENDIF.


Cheers,


Viewing all articles
Browse latest Browse all 8800

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>