메뉴 건너뛰기

SAP 한국 커뮤니티

<b>[완료]</b>[re] gui_upload로 엑셀 upload 질문입니다.

띵호아빠 2008.08.24 21:51 조회 수 : 4502 추천:1

GUI Upload 실 사용 로직입니다.


도움이 됐으면 합니다.


- 구성은 선언부


- Upload form문


- 실 GUI Upload Function 실행해서 읽어 들이기 입니다.


 


1. data 선언







* UPLOAD FORMAT INTERNAL TABLE
DATA: BEGIN OF GT_UP OCCURS 0,
        .
        .
        .
        .
        .
        .
      END   OF GT_UP.
DATA: GV_ERROR .

PARAMETERS: P_FILE  LIKE RLGRAP-FILENAME    OBLIGATORY
                                            DEFAULT 'C:*.XLS'.

 

 


 


 


2. Upload Form문







FORM FILE_UPLOAD .

  DATA : LV_PATH(255),
         LV_PATH2(255),
         LV_FILE(255),
         LV_FILE2(255).

  CLEAR: LV_PATH, LV_PATH2, LV_FILE, LV_FILE2, GV_ERROR,
         GT_UP,  GT_UP[].

*. 엑셀파일인지 확인작업
  MOVE  P_FILE           TO  LV_FILE  .
  DO.
    SPLIT  LV_FILE AT '.' INTO LV_PATH LV_FILE .
    TRANSLATE  LV_FILE  TO UPPER CASE.

    IF   LV_FILE = 'XLS' OR LV_FILE = SPACE.
      EXIT .
    ENDIF.
  ENDDO.

  CASE LV_FILE .
    WHEN 'XLS'  .
    WHEN OTHERS .
      MESSAGE S000 WITH 'Upload 할 수 없는 파일형태입니다' .
      GV_ERROR = 'X' .
      STOP .
  ENDCASE .


  PERFORM EXCEL_FILE_UPLOAD  TABLES  GT_UP
                             USING   P_FILE.


 


3. GUI-UPLOAD 실행







FORM EXCEL_FILE_UPLOAD    TABLES PT_UP
                          USING  PV_FNAME .
*
  DATA: LV_FILENAME       TYPE STRING,
        LV_FILENAME2      LIKE RLGRAP-FILENAME,
        LT_RAW_DATA       TYPE TRUXS_T_TEXT_DATA.
  DATA: LV_TOTAL          TYPE I.
*
  CLEAR: LV_TOTAL.
*
  LV_FILENAME = PV_FNAME.
*
  CALL FUNCTION 'GUI_UPLOAD'
    EXPORTING
      FILENAME                = LV_FILENAME
      FILETYPE                = 'ASC'
      HAS_FIELD_SEPARATOR     = '#'
    TABLES
      DATA_TAB                = LT_RAW_DATA
    EXCEPTIONS
      FILE_OPEN_ERROR         = 1
      FILE_READ_ERROR         = 2
      NO_BATCH                = 3
      GUI_REFUSE_FILETRANSFER = 4
      INVALID_TYPE            = 5
      NO_AUTHORITY            = 6
      UNKNOWN_ERROR           = 7
      BAD_DATA_FORMAT         = 8
      HEADER_NOT_ALLOWED      = 9
      SEPARATOR_NOT_ALLOWED   = 10
      HEADER_TOO_LONG         = 11
      UNKNOWN_DP_ERROR        = 12
      ACCESS_DENIED           = 13
      DP_OUT_OF_MEMORY        = 14
      DISK_FULL               = 15
      DP_TIMEOUT              = 16
      OTHERS                  = 17.
*
  IF SY-SUBRC = 0.
    LV_FILENAME2 = LV_FILENAME.
    CALL FUNCTION 'TEXT_CONVERT_XLS_TO_SAP'
      EXPORTING
        I_FIELD_SEPERATOR    = '#'
        I_TAB_RAW_DATA       = LT_RAW_DATA
        I_FILENAME           = LV_FILENAME2
      TABLES
        I_TAB_CONVERTED_DATA = PT_UP.
  ENDIF.
*
  DELETE PT_UP FROM 1     TO 1.
*
  DESCRIBE TABLE PT_UP LINES LV_TOTAL.
*
  IF LV_TOTAL = 0.
    GV_ERROR = 'X' .
    MESSAGE I000 WITH 'Upload Data가 없습니다!!'.
    STOP.
  ENDIF.
*
ENDFORM.                               "WS_UPLOAD

 

번호 제목 글쓴이 날짜 조회 수
2174 <b>[완료]</b>method 에서 -> => 의미 좀 알려주세요 [3] 삶은달걀과사이다 2008.08.25 2019
2173 [요청]at first, at last, at new, at end 정확한 개념좀 갈켜주세여.. 휴... [5] 아밥입문자 2008.08.25 9172
2172 <b>[완료]</b>ps 관련 테이블에 관한 질문입니다 [6] 아밥어렵네요 2008.08.25 1608
» <b>[완료]</b>[re] gui_upload로 엑셀 upload 질문입니다. [3] 띵호아빠 2008.08.24 4502
2170 <b>[완료]</b>함수 이용한 ALV 에서 행추가해서 데이터를 입력 저장하는 로직을 알려주세요 [2] Norton 2008.08.23 2231
2169 [요청]ALV 선택라인에 대한 상세조회 팝업창 띄우려고 합니다.. [2] 다급 2008.08.23 1845
2168 [요청]간단한 FIELD-SYMBOLS 사용하려는데요.... [7] CoolGuy 2008.08.23 1332
2167 [re] 엑셀 MUTIPLE SHEET UPLOAD SAMPLE 슝슝이 2008.08.22 3517
2166 [요청]alv 체크박스 관련 질문입니다.. [2] 무한반복 2008.08.22 1269
2165 <b>[완료]</b>현재 PC 의 해상도를 읽어올수 있는 펑션이나 메소드가 있을까요? [2] 으..2MB~떠나야하나 2008.08.22 1238
2164 [요청]SELECT-OPTIONS의 날짜입력화면에서 Auto check !? [4] file seph 2008.08.22 2328
2163 [요청]function만들때 import값을 select-options로 할려고하는데.. 문의요.. [3] 금은돌 2008.08.22 1927
2162 <b>[완료]</b>숫자 컨버전하려구하는데요...123,456 -> 123,000 [6] CoolGuy 2008.08.22 1343
2161 <b>[완료]</b>ALV 더블클릭값을 이용하여 data 처리후 화면에 결과를 찍을려는데.. [3] 보경아빠 2008.08.22 1983
2160 [요청]printer 출력 시 한글 깨짐 현상,,, [4] darkangel 2008.08.22 3778
2159 <b>[완료]</b>3개 이상 테이블 조인 관련해서 추가 질문입니다^^ [2] 아밥초보입니다 2008.08.22 2255
2158 <b>[완료]</b>웹딘 테스트 연결시 주소 에러 알려주세요 unicrn 2008.08.21 1752
2157 [요청]완전 초보인데..레포트 프로그램에서 화면에 보이는 값중 하나를 끌고와 alv 화면에 보여주기. [2] 호호 2008.08.21 1200
2156 <b>[완료]</b>스마트폼 이미지 거꾸로 출력되는 문제에 대해서 문의드립니다. [2] 야호 2008.08.21 1976
2155 [요청]테이블컨트롤에서 날짜필드 써치헬프로 달력뜨게하는법.... [1] CoolGuy 2008.08.21 2078