메뉴 건너뛰기

SAP 한국 커뮤니티



SAP ABAP에 엑셀 파일 업로드시 글자 수가 잘려서 나오네요

렌메이이이 2013.12.31 12:58 조회 수 : 1845

REPORT  ZOYM_01_EXCEL_TO_ITAB.

TYPES:   BEGIN OF T_DATATAB ,
 F1(3)   TYPE  C,
 F2(8)   TYPE  C,
 F3(8)   TYPE  C,
 F4(5)   TYPE  C,
 F5(5)   TYPE  C,
 F6(5)   TYPE  C,
 F7(15)  TYPE  C,
 F8(20)  TYPE  C,
 F9(4)   TYPE  C,
 F10(6)  TYPE  C,
 F11(5)  TYPE  C,
 F12(8)  TYPE  C,

       END OF T_DATATAB.

DATA: IT_DATATAB TYPE STANDARD TABLE OF T_DATATAB INITIAL SIZE 0,
      WA_DATATAB TYPE T_DATATAB.

DATA : GD_SCOL   TYPE I VALUE '1',
       GD_SROW   TYPE I VALUE '1',
       GD_ECOL   TYPE I VALUE '256',
       GD_EROW   TYPE I VALUE '5000'.

DATA: IT_TAB TYPE FILETABLE,
      GD_SUBRC TYPE I.

*Selection screen definition
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
PARAMETERS:  P_FILE LIKE RLGRAP-FILENAME
               DEFAULT 'c:이마트12월25일매출정보.xls' OBLIGATORY.   " File Name
SELECTION-SCREEN END OF BLOCK B1.


***********************************************************************
* AT SELECTION-SCREEN
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.
  REFRESH: IT_TAB.
  CALL METHOD CL_GUI_FRONTEND_SERVICES=>FILE_OPEN_DIALOG
    EXPORTING
      WINDOW_TITLE     = 'Select File'
      DEFAULT_FILENAME = '*.xls'
      MULTISELECTION   = ' '
    CHANGING
      FILE_TABLE       = IT_TAB
      RC               = GD_SUBRC.

  LOOP AT IT_TAB INTO P_FILE.
*    so_fpath-sign = 'I'.
*    so_fpath-option = 'EQ'.
*    append so_fpath.
  ENDLOOP.


***********************************************************************
* START-OF-SELECTION.
START-OF-SELECTION.
  PERFORM UPLOAD_EXCEL_FILE TABLES   IT_DATATAB
                             USING   P_FILE
                                     GD_SCOL
                                     GD_SROW
                                     GD_ECOL
                                     GD_EROW.


***********************************************************************
* END-OF-SELECTION.
END-OF-SELECTION.
  LOOP AT IT_DATATAB INTO WA_DATATAB.
    WRITE:/ WA_DATATAB-F1,
            WA_DATATAB-F2,
            WA_DATATAB-F3,
            WA_DATATAB-F4,
            WA_DATATAB-F5,
            WA_DATATAB-F6,
            WA_DATATAB-F7,
            WA_DATATAB-F8,
            WA_DATATAB-F9,
            WA_DATATAB-F10,
            WA_DATATAB-F11,
            WA_DATATAB-F12.

  ENDLOOP.


*&--------------------------------------------------------------------*
*&      Form  UPLOAD_EXCEL_FILE
*&--------------------------------------------------------------------*
*       upload excel spreadsheet into internal table
*---------------------------------------------------------------------*
*      -->P_TABLE    Table to return excel data into
*      -->P_FILE     file name and path
*      -->P_SCOL     start column
*      -->P_SROW     start row
*      -->P_ECOL     end column
*      -->P_EROW     end row
*---------------------------------------------------------------------*
FORM UPLOAD_EXCEL_FILE TABLES   P_TABLE
                       USING    P_FILE
                                P_SCOL
                                P_SROW
                                P_ECOL
                                P_EROW.

  DATA : LT_INTERN TYPE  KCDE_CELLS OCCURS 0 WITH HEADER LINE.
* Has the following format:
*             Row number   | Colum Number   |   Value
*             ---------------------------------------
*      i.e.     1                 1             Name1
*               2                 1             Joe

  DATA : LD_INDEX TYPE I.
  FIELD-SYMBOLS : <FS>.

* Note: Alternative function module - 'ALSM_EXCEL_TO_INTERNAL_TABLE'
 CALL FUNCTION 'KCD_EXCEL_OLE_TO_INT_CONVERT'
    EXPORTING
      FILENAME                = P_FILE
      I_BEGIN_COL             = P_SCOL
      I_BEGIN_ROW             = P_SROW
      I_END_COL               = P_ECOL
      I_END_ROW               = P_EROW
    TABLES
      INTERN                  = LT_INTERN
    EXCEPTIONS
      INCONSISTENT_PARAMETERS = 1
      UPLOAD_OLE              = 2
      OTHERS                  = 3.
  IF SY-SUBRC <> 0.
    FORMAT COLOR COL_BACKGROUND INTENSIFIED.
    WRITE:/ 'Error Uploading file'.
    EXIT.
  ENDIF.

  IF LT_INTERN[] IS INITIAL.
    FORMAT COLOR COL_BACKGROUND INTENSIFIED.
    WRITE:/ 'No Data Uploaded'.
    EXIT.
  ELSE.
    SORT LT_INTERN BY ROW COL.
    LOOP AT LT_INTERN.
      MOVE LT_INTERN-COL TO LD_INDEX.
      ASSIGN COMPONENT LD_INDEX OF STRUCTURE P_TABLE TO <FS>.
      MOVE LT_INTERN-VALUE TO <FS>.
      AT END OF ROW.
        APPEND P_TABLE.
        CLEAR P_TABLE.
      ENDAT.
    ENDLOOP.
  ENDIF.
ENDFORM.                    "upload_excel_file

 

소스코드에 어떤 문제점이 있는지 좀 알려주세요

번호 제목 글쓴이 날짜 조회 수
» SAP ABAP에 엑셀 파일 업로드시 글자 수가 잘려서 나오네요 [2] 렌메이이이 2013.12.31 1845
6034 [초급]perform연속으로 실행하려고 합니다. [1] Elijah Paul 2013.09.09 2752
6033 [질문] possible entry 관련 문의 드립니다. [1] file oracleuser 2013.06.02 2559
6032 스크린 페인터 아이콘이 X 로 표시가 되네염..;;; file 피튀긴남 2012.07.06 3284
6031 ALV 가로 출력에 대해서 질문드립니다 엑셀로 희망 화면 그려노았습니다 [1] file 뿌이이잉 2011.12.12 4775
6030 사용자 접속 Menu Path Log 저장 관련 문의 건 일일신 2011.07.18 2878
6029 GOS_ATTACHMENT_LIST_POPUP 펑션 질문좀요..^^ 숟가락맨 2011.04.04 3843
6028 Table 생성시 나오는 Warning좀 알려주세요~^^ [1] Abap 2011.04.04 3455
6027 RFC에 대하여 질문드립니다. [1] Mike 2011.04.04 2839
6026 특정 필드에 최대값만 골라서 다른 인터널테이블에 넣을려고 합니다.. [4] 푸른물고기 2011.04.04 3121
6025 RFC만들고 sm59에서 destination생성방법 한량도깡 2011.03.31 4365
6024 PS모듈 예산 관련 function 이 있나요? [4] 한마크 2011.04.01 3266
6023 <img src=1.gif>bsp PCUI 상에서의 디버깅 질문드려요 슈릉 2011.04.01 3735
6022 URL 에서 파라메터를 받아오려고 하는데 감이 안잡힙니다.. [4] 갱즈 2011.04.01 3499
6021 <img src=2.gif>screen structure 에서 group1 ~ group4 사용방법 [5] copine 2011.03.31 4256
6020 <img src=3.gif>Include문에서 싱크체크할때 아래 오류가 나는 이유와 해결방법은 무엇일까요?^^ [3] file 노아 2011.03.31 4185
6019 <img src=2.gif>SELECTION-SCREEN의 라디오버튼 더블클릭과 엔터 그리고 SELECT-OPTIONS의 연관성 [3] 츄리닝 2011.03.31 3528
6018 <img src=1.gif>WDA Edit Or Modify Event 는 없을까요? ㅠㅠ 표군 2011.03.31 3932
6017 <img src=3.gif>스마트 폼에서 그래픽 출력할때 이상합니다. [3] 이소아밀 2011.03.31 4643
6016 <img src=2.gif>테이블 Foreign Key 와 프로그램 관련 입니다. [1] aDam 2011.03.30 3798