메뉴 건너뛰기

SAP 한국 커뮤니티

아래의 펑션을 사용할때.. 컬럼의 데이타가 32char 로 제한 됩니다.
일반적인 데이타는 사용 가능하나..
롱 텍스트가 존재하는 경우 문제가 걸리겠져?
그럴경우 아래 펑션을 카피해서 Add-On 으로 만들어 사용하시면 됩니다.

tables 의 intern 이란 테이블의 타입중 row, col, value
의 value에 해당하는 Structure를 생성하여 변경하면
어떠한 경우에도 사용 가능 합니다. !!!

>
>  CALL FUNCTION 'KCD_EXCEL_OLE_TO_INT_CONVERT'
>    EXPORTING
>      FILENAME                = P_FILENAME
>      I_BEGIN_COL             = LO_START_COL
>      I_BEGIN_ROW             = LO_START_ROW
>      I_END_COL               = LO_END_COL
>      I_END_ROW               = LO_END_ROW
>    TABLES
>      INTERN                  = LO_ITAB
>    EXCEPTIONS
>      INCONSISTENT_PARAMETERS = 1
>      UPLOAD_OLE              = 2.
>
 

 

 

 


*-- 업로드할 엑셀 파일을 TXT 파일(탭으로 분리된)로 내리지 않고
     컬럼 헤더 텍스트가 있는 ROW를 없애고 순수 데이타만으로된 엑셀 파일을
     그대로 올리는 프로그램
    
     기본적으로 KCDE_CELLS  타입의 INTERNAL TABLE을 생성하고 이테이블에는
     한개의 레코드가  한라인을 생성되는 것이 아니라
     엑셀파일의 ROW/COLUMN 정보와 해당 컬럼(셀)의 데이타를 가진 테이블로
     업로드되며
     이 업로드된 테이블을 LOOPing 하면서 실제 저장될 INTERNAL TABLE에
     컴포넌트로 어사인하여 값을 넣으면 만사 오케이! ^____^;

*----------------------------------------------  Created by SeungLyong Lee

^&^ 필드심볼 잘 사용하면 즐코딩 할 수 있습니당..
    
*&------------------------------------------------------------------*
*&      Form  F_EXCEL_UPLOAD
*&------------------------------------------------------------------*
FORM F_EXCEL_UPLOAD  TABLES   P_TABLE  
                     USING    P_FILENAME  LIKE RLGRAP-FILENAME.

  DATA : LO_ITAB TYPE  KCDE_CELLS OCCURS 0 WITH HEADER LINE.
  DATA : LO_INDEX like sy-tabix.
  DATA : LO_START_COL TYPE I VALUE '1',
         LO_START_ROW TYPE I VALUE '1',
         LO_END_COL   TYPE I VALUE '256',
         LO_END_ROW   TYPE I VALUE '65536'.
  FIELD-SYMBOLS : <LO_FS>.

  CALL FUNCTION 'KCD_EXCEL_OLE_TO_INT_CONVERT'
    EXPORTING
      FILENAME                = P_FILENAME
      I_BEGIN_COL             = LO_START_COL
      I_BEGIN_ROW             = LO_START_ROW
      I_END_COL               = LO_END_COL
      I_END_ROW               = LO_END_ROW
    TABLES
      INTERN                  = LO_ITAB
    EXCEPTIONS
      INCONSISTENT_PARAMETERS = 1
      UPLOAD_OLE              = 2.

  IF SY-SUBRC NE 0.
    MESSAGE E000(ZMPS) WITH 'File Upload Failed !'(E10).
    STOP.
  ENDIF.

  CHECK NOT LO_ITAB[] IS INITIAL.

  SORT LO_ITAB BY ROW COL.

  LOOP AT LO_ITAB.
    MOVE : LO_ITAB-COL TO LO_INDEX.
    ASSIGN COMPONENT LO_INDEX OF STRUCTURE P_TABLE TO <LO_FS>.
    MOVE : LO_ITAB-VALUE TO <LO_FS>.
    AT END OF ROW.
      APPEND P_TABLE.
      CLEAR P_TABLE.
    ENDAT.
  ENDLOOP.

ENDFORM.                    " F_EXCEL_UPLOAD

번호 제목 글쓴이 날짜 조회 수
167 ABAP&SAP_MEMORY 에 대해 올려봄니다. [5] file 블루보이 2013.06.26 4196
166 [re] TABLE, DEIVERY CLASS 정보 테이블 궁그미 2008.09.02 4182
165 Copy Program Variants from one to another [2] sapjoy 2006.12.12 4182
164 Step by Step guide for BADI Multiple use implementation [8] file 노름마치 2009.07.10 4171
163 SAP Best Practice 다운 받는 방법.. [7] file 울프 2007.03.19 4167
162 대문자 소문자 관련 신종철 2007.07.31 4157
161 SAT 사용법 DEMO 영상 [3] sapjoy 2015.01.21 4153
160 SY 모음 [4] 푸른밤 2007.07.31 4153
159 saplogon 할때 갑자기 윈도우 services화일 못찾을떄 요섭아부지 2008.06.12 4147
158 간단팁2 : 특정 값으로 구분된 텍스트, 한방에 분리 및 각각의 변수에 저장 [2] 윤훈태 2007.10.15 4142
157 Implementing Screen-exit for transaction MIGO [5] file 노름마치 2009.07.10 4121
156 ABAP에서 .Net connector로 .Net Function호출 시 한글이 깨질 경우 홍성현 2007.08.08 4120
155 sap에서 메일 보내고 받기 소스와 예제 설명입니다. [7] file 박.. 2007.05.19 4095
154 SAP R/3가 지원하는 제조전략 명신용 2007.04.03 4094
153 Debug program running in background [1] sapjoy 2006.12.08 4091
152 Adding custom fields to CS01, CS02 and CS03 (Bill Of Materials) [1] file 노름마치 2009.07.10 4088
151 아밥에서 다운받을시 로컬피씨에 폴더 중복 방지 소스 [3] file 양제부 2007.05.16 4086
150 DUMP : CONNE_IMPORT_WRONG_STRUCTURE INDX(KE) sapjoy 2015.03.18 4075
149 심플한 Progress 올려봅니다. [2] 김지성 2007.06.19 4074
148 테이블 데이터 엑셀 업로드 프로그램 sapjoy 2014.06.17 4059