본문 바로가기

SAP ABAP

SAP ABAP - HTML(URL) Viewer 예제

반응형

ABAP 프로그램으로 HTML(URL)을 보여줄 수 있는 방법에 대해 알아보자


⛏️ 목차

  • 데이터 선언
  • Screen PBO Module
  • 전체 코드

1. 데이터 선언

DATA : go_cont TYPE REF TO cl_gui_custom_container, " Container "
       go_view TYPE REF TO cl_gui_html_viewer.      " HTML Viewer "

 

 

스크린에 Container 위에 Html Viewer 를 사용하여 웹화면 보여주는것이다.


2. Screen PBO Module

  DATA : abs_url TYPE sbdst_url.

  abs_url = 'https://babyhistory.tistory.com/'. " 보여질 웹 주소,,"

  IF go_cont IS INITIAL.
    CREATE OBJECT go_cont
      EXPORTING
        container_name = 'CONT'.
  ENDIF.

  CREATE OBJECT go_view
    EXPORTING
      parent = go_cont.

  CALL METHOD go_view->show_url
    EXPORTING
      url = abs_url.

 

Screen 생성후 PBO에 모듈로 생성한다.

 

Screen Layout 에서 그린 Container의 크기 만큼 웹사이트가 보여질 것이다. 

 

Screen의 Container 의 이름은 'CONT'로 지정하였다.

 

DATA 변수를 선언 후 TYPE으로 'sdvst_url'을 사용하며, 해당 변수에 보여질 웹사이트의 주소를 저장한다.

 

이후 go_view 변수에서 'CALL METHOD go_view->show_url'을 활용하여 웹사이트를 불러와준다.

 


3. 전체 코드

*&---------------------------------------------------------------------*
*& Report ZHTML_VIEWER
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT zhtml_viewer.

DATA: ok_code TYPE sy-ucomm.

DATA : go_cont TYPE REF TO cl_gui_custom_container, " Contatiner"
       go_view TYPE REF TO cl_gui_html_viewer.      " HTML Viewer"

INITIALIZATION.

AT SELECTION-SCREEN OUTPUT.

AT SELECTION-SCREEN.

START-OF-SELECTION.

  CALL SCREEN 0100.
*&---------------------------------------------------------------------*
*& Module STATUS_0100 OUTPUT
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
MODULE status_0100 OUTPUT.
  SET PF-STATUS 'S0100'.
* SET TITLEBAR 'xxx'.
ENDMODULE.
*&---------------------------------------------------------------------*
*&      Module  USER_COMMAND_0100  INPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE user_command_0100 INPUT.
  CASE ok_code.
    WHEN 'EXIT'.
      LEAVE PROGRAM.
  ENDCASE.
ENDMODULE.
*&---------------------------------------------------------------------*
*& Module SET_HTML_VIEWER OUTPUT
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
MODULE set_html_viewer OUTPUT.

  DATA : abs_url TYPE sbdst_url.

  abs_url = 'https://babyhistory.tistory.com/'. " 보여질 웹 주소,,"

  IF go_cont IS INITIAL.
    CREATE OBJECT go_cont
      EXPORTING
        container_name = 'CONT'.
  ENDIF.

  CREATE OBJECT go_view
    EXPORTING
      parent = go_cont.

  CALL METHOD go_view->show_url
    EXPORTING
      url = abs_url.

ENDMODULE.

 

 

- 끝 -

반응형