[출처:http://www.e-abap.net/]
DATA : OUTPUT_OPTIONS TYPE SSFCOMPOP,
CONTROL_PARAMETERS TYPE SSFCTRLOP.
CLEAR: CONTROL_PARAMETERS, OUTPUT_OPTIONS, TSP03.
CONTROL_PARAMETERS-NO_DIALOG = 'X'.
" "otf 전환***
CONTROL_PARAMETERS-GETOTF = 'X'.
CONTROL_PARAMETERS-LANGU = SY-LANGU.
CONTROL_PARAMETERS-DEVICE = 'PRINTER'.
OUTPUT_OPTIONS-TDSENDDATE = SY-DATLO.
OUTPUT_OPTIONS-TDSENDTIME = SY-TIMLO.
OUTPUT_OPTIONS-TDDEST = 'LP01'.
OUTPUT_OPTIONS-TDNEWID = 'X'.
CALL FUNCTION P_FUNC_MOD_NAME
EXPORTING
CONTROL_PARAMETERS = CONTROL_PARAMETERS
OUTPUT_OPTIONS = OUTPUT_OPTIONS
G_ITAB02_T = G_ITAB02_T
IMPORTING
JOB_OUTPUT_INFO = G_JOB_OUTPUT_INFO
JOB_OUTPUT_OPTIONS = G_JOB_OUTPUT_OPTIONS
TABLES
G_ITAB03_T = G_ITAB03_T
G_ITAB08_T = G_ITAB08_T
EXCEPTIONS
FORMATTING_ERROR = 1
INTERNAL_ERROR = 2
SEND_ERROR = 3
USER_CANCELED = 4
OTHERS = 5.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
LEAVE PROGRAM.
ENDIF.
*&
DATA : OTF_TAB TYPE TSFOTF.
OTF_TAB[] = G_JOB_OUTPUT_INFO-OTFDATA[].
*&
DATA: GS_HEAD LIKE SODOCCHGI1,
GT_OBJPACK LIKE SOPCKLSTI1 OCCURS 2 WITH HEADER LINE,
GT_OBJHEAD LIKE SOLISTI1 OCCURS 1 WITH HEADER LINE,
GT_OBJBIN LIKE SOLISTI1 OCCURS 10 WITH HEADER LINE,
GT_OBJCON LIKE SOLISTI1 OCCURS 10 WITH HEADER LINE,
GT_RECEIVER LIKE SOMLRECI1 OCCURS 0 WITH HEADER LINE,
GV_LINES LIKE SY-TABIX,
GV_DOC_SIZE LIKE SY-TABIX.
*&
DATA: LT_PDF TYPE STANDARD TABLE OF TLINE WITH HEADER LINE,
L_SIZE TYPE I,
L_REG_VALUE(128) TYPE C.
data: L_FILE TYPE XSTRING.
*& OTF 파일을 PDF 파일로 CONVERT.
CALL FUNCTION 'CONVERT_OTF'
EXPORTING
FORMAT = 'PDF'
TABLES
OTF = P_OTF[]
LINES = LT_PDF
EXCEPTIONS
ERR_MAX_LINEWIDTH = 1
ERR_FORMAT = 2
ERR_CONV_NOT_POSSIBLE = 3
OTHERS = 4.
DATA: I TYPE I,N TYPE I.
DATA: L_TXT(1000).
* Convert pdf(134) to binary(255) file.
LOOP AT LT_PDF.
L_TXT+I = LT_PDF.
ADD 134 TO I.
IF I >= 255.
GT_OBJBIN = L_TXT.
APPEND GT_OBJBIN.
SUBTRACT 255 FROM I.
L_TXT = L_TXT+255.
ENDIF.
ENDLOOP.
IF I <> 0.
GT_OBJBIN = L_TXT.
APPEND GT_OBJBIN.
ENDIF.
*& 메일 수신자 관련
GT_RECEIVER-RECEIVER = 'mychoi@lgcns.com'.
"수신메일주소
GT_RECEIVER-REC_TYPE = 'U'.
GT_RECEIVER-EXPRESS = 'X'.
APPEND GT_RECEIVER. CLEAR GT_RECEIVER.
*& 메일 내용
GT_OBJCON-LINE = 'Smartforms Mail 확인바랍니다.'.
APPEND GT_OBJCON. CLEAR GT_OBJCON.
*&
GT_OBJCON-LINE = '감사합니다'.
APPEND GT_OBJCON. CLEAR GT_OBJCON.
*&
*& 메일 내용 관련된 사항을 PACKING_LIST에 APPEND
DESCRIBE TABLE GT_OBJCON LINES GV_LINES.
*& 메일 HEADER
GS_HEAD-OBJ_NAME = 'MESSAGE'.
GS_HEAD-OBJ_DESCR = '>>SMART PDF MAIL 확인바랍니다.'. "메일 제목
GS_HEAD-OBJ_LANGU = 'E'.
GS_HEAD-SENSITIVTY = 'O'. "'O' : Standard 'P': Confidential
GS_HEAD-OBJ_PRIO = '1'.
GS_HEAD-NO_CHANGE = 'X'.
GS_HEAD-PRIORITY = '1'.
* gs_head-doc_size = gv_lines * 255.
GT_OBJPACK-HEAD_START = 1.
GT_OBJPACK-HEAD_NUM = 0.
GT_OBJPACK-BODY_START = 1.
GT_OBJPACK-BODY_NUM = GV_LINES.
GT_OBJPACK-DOC_TYPE = 'RAW'.
APPEND GT_OBJPACK. CLEAR GT_OBJPACK.
*& 메일 첨부파일에 관련된 사항을 PACKING LIST에 저장
DESCRIBE TABLE GT_OBJBIN LINES GV_LINES.
GT_OBJPACK-TRANSF_BIN = 'X'.
GT_OBJPACK-HEAD_START = 1.
GT_OBJPACK-HEAD_NUM = 1.
GT_OBJPACK-BODY_START = 1.
GT_OBJPACK-BODY_NUM = GV_LINES.
GT_OBJPACK-DOC_TYPE = 'PDF'.
* GT_OBJPACK-FILE_EXT = 'PDF'.
GT_OBJPACK-OBJ_NAME = 'Attachment'.
GT_OBJPACK-OBJ_DESCR = 'ATT_SMART'.
READ TABLE GT_OBJBIN INDEX GV_LINES.
GV_DOC_SIZE = GV_LINES * 255.
* GV_DOC_SIZE = ( GV_LINES - 1 ) * 255 + STRLEN( GT_OBJBIN ).
GT_OBJPACK-DOC_SIZE = GV_DOC_SIZE.
APPEND GT_OBJPACK. CLEAR GT_OBJPACK.
*& 메일을 전송하는 Function.....
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
DOCUMENT_DATA = GS_HEAD "메일TITLE
PUT_IN_OUTBOX = 'X'
COMMIT_WORK = 'X'
TABLES
PACKING_LIST = GT_OBJPACK
CONTENTS_BIN = GT_OBJBIN "첨부파일
CONTENTS_TXT = GT_OBJCON "메일내용
RECEIVERS = GT_RECEIVER "수신정보
EXCEPTIONS
TOO_MANY_RECEIVERS = 1
DOCUMENT_NOT_SENT = 2
DOCUMENT_TYPE_NOT_EXIST = 3
OPERATION_NO_AUTHORIZATION = 4
PARAMETER_ERROR = 5
X_ERROR = 6
ENQUEUE_ERROR = 7
OTHERS = 8.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ELSE.
MESSAGE S002 WITH '메일이 전송 되었습니다.'.
ENDIF.
2013년 12월 9일 월요일
2013년 11월 18일 월요일
2013년 11월 11일 월요일
중국쪽 무료 클라우드 서비스들
[출처 : http://xerror.tistory.com/57 ]
1. 바이두(baidu)
URL : http://yun.baidu.com/1t
소개 : 중국의 구글이라 불리는 중국 대표 검색 포털 업체
환경 : 윈도우, 웹, 안드로이드, 아이폰, 아이패드
용량 : 2TB
제한 : 업로드 최대 4GB
속도 : (웹기준) 다운로드 1MB/S 정도, 업로드 1MB/S 정도
특징 : 미디어 파일을 웹에서 별도 설치 없이 스트리밍 하는 것이 가능하다
한글파일을 다운받으면 파일명이 깨진다
추가 요금을 내고 15GB, 30GB, 50GB, 100GB 단위로 추가용량을 구입 할 수 있다
2. 텐센트(Tencent)
URL : http://www.weiyun.com/act/10t.html?WYTAG=weiyun.portal.index
소개 : 야후나 네이버와 비슷한 성격의 종합 포털 업체
환경 : 윈도우, 웹, 안드로이드, 아이폰, 아이패드
용량 : 10TB
제한 : 업로드 최대 4GB (IE 외 다른 웹브라우저에서는 최대 2GB / 플러그인 설치시 최대 36GB)
속도 : (웹기준) 다운로드 1MB/S 이하, 업로드 1MB/S 이하
특징 : 회사가 텐센트 이고 서비스명은 웨이윤(weiyun) 이다
텐센트 코리아도 있다 (http://www.tencent.co.kr)
일정기간 로그인을 하지 않으면 자료가 삭제 된다고 한다 (기간은 확실치 않음. 한달 또는 45일)
개발 API 가 제공된다 (http://www.weiyun.com/api.html?WYTAG=weiyun.portal.download)
3. 치후360(Qihoo360)
URL : http://yunpan.360.cn
소개 : 안랩과 같은 보안 관련 서비스가 주력이며 최근 검색 포털 및 게임 서비스 분야로 확장 중인 업체
환경 : 윈도우, 웹, 안드로이드, 아이폰, 아이패드
용량 : 무제한 (자동 확장)
제한 : 업로드 최대 웹 360MB, PC클라이언트 5GB
속도 : (웹기준) 다운로드 1MB/S 이하, 업로드 1MB/S 정도
특징 : 가입 후 최초 PC 클라이언트를 설치하면 10TB 를 주고 이후 모바일 어플을 설치하면 27TB 를 준다
초기 사용 가능한 최대 용량은 37TB 이다
사용 용량이 26TB 부터 최대 용량은 10TB 씩 증가한다 (예로 30TB 를 사용 중이면 최대 용량은 86TB 가 된다)
사용 용량이 증가함에 따라 최대 용량은 무제한으로 증가한다 (http://p1.qhimg.com/t017746ca443f25ce9e.jpg)
1. 바이두(baidu)
소개 : 중국의 구글이라 불리는 중국 대표 검색 포털 업체
환경 : 윈도우, 웹, 안드로이드, 아이폰, 아이패드
용량 : 2TB
제한 : 업로드 최대 4GB
속도 : (웹기준) 다운로드 1MB/S 정도, 업로드 1MB/S 정도
특징 : 미디어 파일을 웹에서 별도 설치 없이 스트리밍 하는 것이 가능하다
한글파일을 다운받으면 파일명이 깨진다
추가 요금을 내고 15GB, 30GB, 50GB, 100GB 단위로 추가용량을 구입 할 수 있다
2. 텐센트(Tencent)
소개 : 야후나 네이버와 비슷한 성격의 종합 포털 업체
환경 : 윈도우, 웹, 안드로이드, 아이폰, 아이패드
용량 : 10TB
제한 : 업로드 최대 4GB (IE 외 다른 웹브라우저에서는 최대 2GB / 플러그인 설치시 최대 36GB)
속도 : (웹기준) 다운로드 1MB/S 이하, 업로드 1MB/S 이하
특징 : 회사가 텐센트 이고 서비스명은 웨이윤(weiyun) 이다
텐센트 코리아도 있다 (http://www.tencent.co.kr)
일정기간 로그인을 하지 않으면 자료가 삭제 된다고 한다 (기간은 확실치 않음. 한달 또는 45일)
개발 API 가 제공된다 (http://www.weiyun.com/api.html?WYTAG=weiyun.portal.download)
3. 치후360(Qihoo360)
소개 : 안랩과 같은 보안 관련 서비스가 주력이며 최근 검색 포털 및 게임 서비스 분야로 확장 중인 업체
환경 : 윈도우, 웹, 안드로이드, 아이폰, 아이패드
용량 : 무제한 (자동 확장)
제한 : 업로드 최대 웹 360MB, PC클라이언트 5GB
속도 : (웹기준) 다운로드 1MB/S 이하, 업로드 1MB/S 정도
특징 : 가입 후 최초 PC 클라이언트를 설치하면 10TB 를 주고 이후 모바일 어플을 설치하면 27TB 를 준다
초기 사용 가능한 최대 용량은 37TB 이다
사용 용량이 26TB 부터 최대 용량은 10TB 씩 증가한다 (예로 30TB 를 사용 중이면 최대 용량은 86TB 가 된다)
사용 용량이 증가함에 따라 최대 용량은 무제한으로 증가한다 (http://p1.qhimg.com/t017746ca443f25ce9e.jpg)
2013년 10월 22일 화요일
Smartforms에서 텍스트 내용을 수정할때 Microsoft Word가 실행되면서 오류발생
Smartforms에서 텍스트 내용을 수정할때 Microsoft Word가 실행되면서 오류발생
SE38에서 RSCPSETEDITOR을 실행하여 Smartforms를 체크 해제 후 Activate 시킨다.
SE38에서 RSCPSETEDITOR을 실행하여 Smartforms를 체크 해제 후 Activate 시킨다.
[SAP] Classification의 값 가져오기
품목에 해당되는 Classification의 값들을 가져온다.
CALL FUNCTION 'CLAF_CLASSIFICATION_OF_OBJECTS'
EXPORTING
CLASSTYPE = '001'
CLINT = LV_CLINT
OBJECT = LV_OBJEK
TABLES
T_CLASS = LT_CLASS
T_OBJECTDATA = LT_OBJECT.
READ TABLE LT_OBJECT WITH KEY ATNAM = atinn.
[SAP] 날자 계산하기
- LV_DATUM 날자를 기준으로 10일 전의 날자를 계산하여 준다.
CALL FUNCTION 'RP_CALC_DATE_IN_INTERVAL'
EXPORTING
DATE = LV_DATUM
DAYS = '10'
MONTHS = '00'
SIGNUM = '-'
YEARS = '00'
IMPORTING
CALC_DATE = I_DATE .
- LV_DATUM을 기준으로 XX개월(+/-) 구간의 일자를 구한다.
CALL FUNCTION 'RE_ADD_MONTH_TO_DATE'
EXPORTING
MONTHS = 'XX'
OLDDATE = LV_DATUM
IMPORTING
NEWDATE = GV_SDATE.
- LV_DATUM일자에 해당되는 월의 마지막 일자를 구한다.
CALL FUNCTION 'RP_LAST_DAY_OF_MONTHS'
EXPORTING
DAY_IN = LV_DATUM
IMPORTING
LAST_DAY_OF_MONTH = GV_EDATE.
CALL FUNCTION 'RP_CALC_DATE_IN_INTERVAL'
EXPORTING
DATE = LV_DATUM
DAYS = '10'
MONTHS = '00'
SIGNUM = '-'
YEARS = '00'
IMPORTING
CALC_DATE = I_DATE .
- LV_DATUM을 기준으로 XX개월(+/-) 구간의 일자를 구한다.
CALL FUNCTION 'RE_ADD_MONTH_TO_DATE'
EXPORTING
MONTHS = 'XX'
OLDDATE = LV_DATUM
IMPORTING
NEWDATE = GV_SDATE.
- LV_DATUM일자에 해당되는 월의 마지막 일자를 구한다.
CALL FUNCTION 'RP_LAST_DAY_OF_MONTHS'
EXPORTING
DAY_IN = LV_DATUM
IMPORTING
LAST_DAY_OF_MONTH = GV_EDATE.
[SAP] 함수 뒤에 있는 음수 부호를 앞으로 보내는 함수
1.CH의 변수 유형은 문자 타입이어야 한다.
CALL FUNCTION 'CLOI_PUT_SIGN_IN_FRONT'
CHANGING
VALUE = CH.
CALL FUNCTION 'CLOI_PUT_SIGN_IN_FRONT'
CHANGING
VALUE = CH.
피드 구독하기:
글 (Atom)