본문 바로가기

SAP/BSP

BSP - BSP에서의 일반적인 팝업 띄우는 소스

사용자 삽입 이미지


버튼클릭이나 이미지클릭처럼 바로 다음 창을 열때 말고 이벤트를 태우고

특정값을 가지고 다음페이지에 팝업을 부를때 사용되는 소스

*--------------------------------------------------------------------*
*  Layout
*--------------------------------------------------------------------*

<script language="JavaScript">
var mywindow;

function zcall_page(pgmid, para) {
  mywindow = window.open(pgmid+"?sap-params="+para, "", "left=100,top=50,scrollbars=1,resizable=1,width=800,height=600");
  mywindow.creator=self;
}

</script>

  <%
  DATA : url_input TYPE STRING,
         url_output TYPE STRING.
  IF MESSAGE_FLAG EQ 'POPUP'.
    CLEAR : URL_INPUT, URL_OUTPUT.

    CONCATENATE 'ipf_para=' IPF_RFQNO  " ''이 안에 문자는 반드시 소문자
           INTO URL_INPUT.
    CALL FUNCTION 'ZVIW_URL_ENCODE'    "  파라메타 암호화(넘기는값을 주소창에 보여주지 않음)
      EXPORTING                        "  하지만 주소창은 자동 decode가 됨
        UNENCODE       = URL_INPUT
      IMPORTING
        ENCODE         = URL_OUTPUT .
  %>
    <SCRIPT LANGUAGE="JAVASCRIPT">
      zcall_page('aa.htm', '<%=URL_OUTPUT%>');
    </SCRIPT>
  <%
    CLEAR : MESSAGE_FLAG.
  ENDIF.
  %>

*--------------------------------------------------------------------*
FUNCTION ZVIW_URL_ENCODE.
*--------------------------------------------------------------------*
*"----------------------------------------------------------------------
*"*"Local interface:
*"  IMPORTING
*"     REFERENCE(UNENCODE) TYPE  STRING
*"  EXPORTING
*"     REFERENCE(ENCODE) TYPE  STRING
*"----------------------------------------------------------------------
  DATA : TEMP_STRING TYPE STRING,
         TEMP_VALUE  TYPE STRING,
         TEMP_NAME   TYPE STRING,
         ESCAPED_VALUE TYPE STRING.

  TYPES: BEGIN OF UNENCODED_ITAB_TYPE,
          UNENCODED(1024) TYPE C,
         END   OF UNENCODED_ITAB_TYPE.

  DATA: UNENCODED_ITAB TYPE STANDARD TABLE OF UNENCODED_ITAB_TYPE
                       WITH NON-UNIQUE DEFAULT KEY INITIAL SIZE 10
                       WITH HEADER LINE.

  SPLIT UNENCODE AT '&' INTO TABLE UNENCODED_ITAB.

  LOOP AT UNENCODED_ITAB.
    CLEAR : TEMP_VALUE, TEMP_NAME, ESCAPED_VALUE.
    SPLIT UNENCODED_ITAB AT '=' INTO TEMP_NAME TEMP_VALUE.

    CALL METHOD CL_HTTP_UTILITY=>IF_HTTP_UTILITY~ESCAPE_URL
      EXPORTING
        UNESCAPED = TEMP_VALUE
        OPTIONS   = '1'
      RECEIVING
        ESCAPED   = ESCAPED_VALUE.

    IF TEMP_STRING IS NOT INITIAL.
      CONCATENATE TEMP_STRING '&' INTO TEMP_STRING.
    ENDIF.

   CONCATENATE TEMP_STRING TEMP_NAME '=' ESCAPED_VALUE INTO TEMP_STRING.
  ENDLOOP.

  CALL METHOD CL_HTTP_UTILITY=>IF_HTTP_UTILITY~ENCODE_BASE64
    EXPORTING
      UNENCODED = TEMP_STRING
    RECEIVING
      ENCODED   = ENCODE.

ENDFUNCTION.

'SAP > BSP' 카테고리의 다른 글

BSP - 화면 접기와 펼치기  (0) 2008.02.25
BSP - 파일 업로드와 다운로드2  (0) 2008.02.25
BSP - 띄워지는 화면 최대화  (0) 2008.02.25
BSP - BSP에서의 LONG TEXT 입출력..  (0) 2008.02.25
BSP - OnManipulation  (0) 2008.02.25