일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- SAP ERP
- SAP
- 머신러닝
- docker
- ABAP
- Java
- db
- JavaScript
- 비지니스영어
- nodejs
- Python
- Mac
- 오라클
- 자바
- Spring Framework
- 오라클 디비
- sap mm
- 파이썬
- 유럽여행
- Programming
- oracle
- 딥러닝
- SAP ABAP
- node.js
- 도커
- 노드
- IT
- 영어
- 자바스크립트
- Oracle DB
- Today
- Total
JIHYUN JEONG
SAP 웹 저장소 ( T-CODE : SMW0 ) 본문
SAP 웹 저장소
( T-CODE : SMW0 )
□ 사용목적
- 파일 업로드 양식을 올려두기 위해 (BDC, Excel Upload할 때)
□ 방법
1. SMW0에 문서저장하기.
2. 패키지를 입력 > 확인
3. 생성을 누른다
4. Obj.name과 내역을 입력 > Import 클릭
5. Import한 파일 선택 > 열기
6. 개발클래스에 저장합니다.
7. 아래와 같이 SAP 웹 저장소에 사용할 파일이 업로드 되었습니다.
※ ‘지정된 MIME유형이 없다’ 는 에러가 뜨는 경우
→ 세팅 -> mime유형 유지보수에서 word 파일에 대해 *.doc확장자로 등록
□ 소스코드
1. 매크로 없이 그냥 단순히 양식만 다운받을 때
DATA : LV_RC TYPE I.
DATA : LV_FILENAME TYPE LOCALFILE.
DATA : LS_WWWDATA_ITEM TYPE WWWDATATAB.
SELECT SINGLE * FROM WWWDATA
INTO CORRESPONDING FIELDS OF LS_WWWDATA_ITEM
WHERE OBJID = 'ZSMW0_TEST'.
"<-- SMW0 Object 명입니다.
IF SY-SUBRC NE 0.
MESSAGE S398(00) DISPLAY LIKE 'E' WITH TEXT-E02.
EXIT.
ENDIF.
CALL FUNCTION 'DOWNLOAD_WEB_OBJECT'
EXPORTING
KEY = LS_WWWDATA_ITEM.
2. 위 보다 조금 더 상세설정을 하고 싶을때 사용하는
- 예를 들면 파일저장창에 ‘확장자’를 주고 싶거나 할때 아래의 로직을 사용
DATA : LS_WWWDATA_ITEM TYPE WWWDATATAB.
DATA : LT_MIME LIKE W3MIME OCCURS 100 WITH HEADER LINE.
SELECT SINGLE * FROM WWWDATA
INTO CORRESPONDING FIELDS OF LS_WWWDATA_ITEM
WHERE OBJID = 'ZSMW0_TEST'. "<-- SMW0 Object 명입니다.
IF SY-SUBRC NE 0.
MESSAGE S398(00) DISPLAY LIKE 'E' WITH TEXT-E02.
EXIT.
ENDIF.
CALL FUNCTION 'WWWDATA_IMPORT'
EXPORTING
KEY = LS_WWWDATA_ITEM
TABLES
MIME = LT_MIME
EXCEPTIONS
WRONG_OBJECT_TYPE = 1
IMPORT_ERROR = 2
OTHERS = 3.
DATA : L_FILENAME TYPE STRING,
L_PATH TYPE STRING,
L_FULLPATH TYPE STRING,
L_FILESIZE(10),
L_SIZE TYPE I.
CALL FUNCTION 'WWWPARAMS_READ'
EXPORTING
RELID = LS_WWWDATA_ITEM-RELID
OBJID = LS_WWWDATA_ITEM-OBJID
NAME = 'filesize'
IMPORTING
VALUE = L_FILESIZE.
CALL METHOD CL_GUI_FRONTEND_SERVICES=>FILE_SAVE_DIALOG
EXPORTING
DEFAULT_EXTENSION = 'XLS'
CHANGING
FILENAME = L_FILENAME
PATH = L_PATH
FULLPATH = L_FULLPATH.
L_SIZE = L_FILESIZE.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
FILENAME = L_FULLPATH
FILETYPE = 'BIN'
BIN_FILESIZE = L_SIZE
TABLES
DATA_TAB = LT_MIME.
3. AMIGOS > ZPPMR_RPT14 에서 사용한 방법
CALL FUNCTION 'SAP_OI_LOAD_MIME_DATA'
EXPORTING
object_id = c_object_id
"<-- SMW0 Object 명입니다.
IMPORTING
data_size = doc_size
document_format = doc_format
document_type = doc_type
TABLES
data_table = doc_table
EXCEPTIONS
object_not_found = 1
internal_error = 2
OTHERS = 3.
'SAP ERP System > ABAP TIP' 카테고리의 다른 글
[SAP] 트랜잭션 코드 테이블&Authority (0) | 2013.07.29 |
---|---|
[SAP/ABAP TIP] 자주 사용하는 시스템변수 (0) | 2013.06.17 |
[SAP/ABAP TIP] 달력창을 띄우는 Function (0) | 2013.06.17 |
[SAP ABAP] selection screen -> Selection Texts가 바뀌지 않는 경우 (0) | 2013.05.24 |
[SAP/ERP] SAP Message Maintenance (MM모둘) 개발노트 #1 (0) | 2013.04.26 |