메뉴 건너뛰기

SAP 한국 커뮤니티

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

띵호아빠 2008.08.24 21:51 조회 수 : 4596 추천: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

 

번호 제목 글쓴이 날짜 조회 수
6347 FOR ALL ENTRIES IN 구문 말고 다른 DB테이블과 인터널 테이블 조인하려면 어떻게 해야될까요? [3] 죠죠 2021.08.25 4898
6346 <img src=2.gif>Smartform 을 이용한 PDF 파일 변환시, 한국어/중국어 글씨가 깨져서 나옵니다. ㅠㅠ [4] 쿨쿨 2010.12.21 4889
6345 initial value 관련해서 질문 입니다. [4] file 댕댕 2007.10.25 4888
6344 <img src=1.gif>질문 >> CALL FUNCTION 'FIMA_NUMERICAL_VALUE_ROUND [2] 아밥콩` 2010.03.03 4886
6343 <img src=2.gif>유지보수 (maintenance view) 생성시 질문.... [4] SAP 사랑 2011.03.21 4836
6342 <img src=3.gif>스마트 폼에서 그래픽 출력할때 이상합니다. [3] 이소아밀 2011.03.31 4834
6341 [요청]ALV 컬럼고정에 대해 질문입니다. [4] mean 2008.05.29 4803
6340 [요청]VL31N 화면을 통한 인바운드납품 처리하는 BAPI로 GN_DELIVERY_CREATE 사용하려합니다. [2] 넷가이 2008.10.08 4799
6339 <b>[완료]</b>[질문]4개이상의 TABLE INNER JOIN 방법 [5] 아싸ㅎ 2008.04.03 4788
6338 <img src=3.gif>BOM 다중 레벨 사용처 리스트 Function [5] 소마1010 2010.05.10 4781
6337 <img src=2.gif>Loop at Itab에서의 Where 조건을 동적으로 구현가능한지요??? [4] 찬호사랑 2010.05.25 4777
6336 [요청]max(최대값)조건을 주려고 합니다. [3] 풍뎅이 2008.01.02 4768
6335 <img src=2.gif>bdc return message 질문드립니다.. [6] 무한루프 2010.08.03 4740
6334 <img src=2.gif>AT SELECTION-SCREEN OUTPUT. 질분입니다 [3] 아밥콩` 2010.06.18 4735
6333 [요청]지난 달이나 몇달 전 또는 몇달 후의 날짜를 계산하는 방법이나 시스템변수가 없을까요? [5] 대지꿀꾸링 2008.03.13 4730
6332 <img src=3.gif>매크로 연동 엑셀에서 PDF 전환 후 메일 첨부... [4] 블랙아이즈 2010.06.19 4728
6331 [요청]Sqvi 에서 생성한 Quick View 에 T-code 생성 방법 [6] copine 2009.03.21 4725
6330 <img src=3.gif>RFC를 사용하여 델파이와 연동시 한글깨짐 현상이요 [4] 지니 2010.09.10 4702
6329 <b>[완료]</b><b>[완료]</b>ALV GRID 초기화 하는 메소드? [1] SARA 2007.03.29 4695
6328 <b>[완료]</b>[re][re] 개인pc에 SAP NetWeaver 2004s 설치방법에 질문입니다. [4] sapjoy 2006.12.27 4689