2012년 11월 14일 수요일

SAP 텍스트에 특정키 넣기

[출처 : http://www.kerum.pl/ ]

It can be a bit difficult to use tabulator character (hex code 0x0009) in ABAP strings. On the other hand it is often used as separator in various interface files and you need tab character to split the lines into fields or insert it into the strings as delimiter.

If you need to fulfill the unicode check, you have to use special approach to combine hex code and string. Otherwise you will get the syntax error from compiler:
"TAB" must be a character-like data object (data type C, N, D, T, or STRING)
Here three examples, how the tab character can be used in combination with string in abap. You can use similar approach for other difficult characters, for example ENTER.
Example 1: can be used in non-unicode and unicode systems: (tabulator hex code is defined in class CL_ABAP_CHAR_UTILITIES as constants HORIZONTAL_TAB)
DATA:
  tab type c value cl_abap_char_utilities=>horizontal_tab,
  str TYPE string.

CONCATENATE 'aaa' 'bbb' INTO str SEPARATED BY tab.
Here other useful constants defined in class CL_ABAP_CHAR_UTILITIES:

Name Length Hex-Value Dec-Value
BACKSPACE 1 0x08 8
HORIZONTAL_TAB 1 0x09 9
VERTICAL_TAB 1 0x0B 11
FORM_FEED 1 0x0C 12
NEWLINE 1 0x0A 10
CR_LF 2 0x0D0A 13 10
Example 2: it also works in non-unicode and unicode systems:
DATA:
  tab TYPE x VALUE '09',
  chr TYPE c,
  str TYPE string.

FIELD-SYMBOLS:
  <fs> TYPE ANY.

ASSIGN chr TO <fs> CASTING TYPE x.
<fs> = tab.

CONCATENATE 'aaa' 'bbb' INTO str SEPARATED BY chr.
Exapmle 3: it will only work in non-unicode system:
DATA:
  tab TYPE x VALUE '09',
  str TYPE string.

CONCATENATE 'aaa' 'bbb' INTO str SEPARATED BY tab.

2012년 10월 25일 목요일

알아두면 유용한 사이트 목록~

[출처:파코즈]

1. 고화질 HDTV를 인터넷에서 무료로 보자!
집에 TV가 없는 분들에게 추천 하는 사이트 .
회원가입 필요 없이 무료로 볼수 있습니다.
KBS,SBS,MBC등 지상파는 물론 스포츠,EBS,게임,라디오 까지 볼 수 있습니다. 
뽐뿌분이 운영하고 있다고 들었습니다.  

2.  비소리 듣는 사이트
약간의 천둥소뢰와 함께 빗소리를 끊임 없이 재생해주는 사이트 .
추천음악도 들을 수 있는데 비소리와 함께 들으면 좋습니다.    

 3. 재능을 5000원에 사고 파는 ,<크몽>
부업랭킹1위, 5000원에 재능을 거래하는 사이트.
내가 가진 재능을 팔고 남이 가진 재능을 살 수 있는 곳.
캐리커쳐,일러스트,번역,연애상담등을 5000원에 할 수 있습니다.   

4. 그림 못그리는 사람도 화가로 만들어 주는 사이트
아무리 그림을 못그리는 사람이라도 있어! 보이는 그림으로 만들어 주는 사이트 입니다.
심심할때 아무거나 그려보기 좋아요.  

5. <툰툰툰>
다양한 웹툰들을 한자리에서 구독할 수 있는 사이트(링크 형식)
회원가입을 하면 원하는 웹툰만 볼 수 있습니다.     

6. 무료 음악 스트리밍 사이트
 로그인 하지 않아도 무제한으로 음악을 들을 수 있는 사이트입니다.
한국노래는 물론 해외의 많은 노래들도 무료로 들을 수 있습니다.
단 다운로드는 유료 입니다.  

7. 공연,전시 관람료 지원해주는 <사랑티켓>
공연의 경우 7000원, 전시의 경우 5000원의  관람료를 지원 받을 수 있는 사이트.
연간 총 10장의 사랑티켓이 부여  

8. yoUeFO (유에포)
독립영화를 모아 온라인에서 상영해주는 사이트
<똥파리>양익준 감독, <추격자,황해>,나홍진 감독들의 단편영화를 볼 수 있습니다.  

9. <올스타> 공모전
각종 분야의 공모전 소식들이 있는 곳입니다.
가장많은 공모전 정보가 있다해도 무방한곳.    

10. 고화질 배경화면사이트
해상도, 화면비율 별로 배경화면 선택 할 수 있는 사이트
예쁜사진이 많고 최신사진도 많은 사이트.

2012년 8월 20일 월요일

제로보드4에서 용량 큰 첨부 파일 설정

[참조 : http://duo830210.tistory.com ]

Centos 5.3
Php   5.1.6-3

용량이 큰 파일 업로드시 에러 발생


오류메세지  - zboard.php?id=게시판 이름

#vi /etc/php.ini
upload_max_filesize = 15M  <- 업로드 파일 최대 크기
post_max_size  = 15M   <-post 방식 업로드 파일 크기
max_execution_tile = 30 <-참조사이트에서는 0으로 설정:반응이 없으면 차단
memory_limit = 15M  <- 메모리 한계(참조사이트는 업로드 크기만큼)


2012년 7월 26일 목요일

Forms 에서 사용자 에러 처리 하기

declare
  condition_err     exception;  -- 에러 처리할 종류대로 변수를 선언한다.
begin

  -- 에러 처리할 조건을 확인하고 만족시 에러 발생
  if  item is null then
    raise condition_err;
  end if;

exception when condition_err then
  message ( '에러 발생');
  raise from_trigger_failure;
end;

2012년 5월 15일 화요일

[SAP] 함수들

- HRCM_AMOUNT_TO_STRING_CONVERT : ,와 .을 바꾸기



- BUX_DECIMAL_START : 문자 필드의 숫자에 콤마 찍기














● 자주 사용하는 String 조작 명령어
    ▶  문자열 길이(STRLEN)
       - LV_LEN에  문자열 LV_STRING 길이를 돌려준다.
          LV_LEN = STRLEN(LV_STRING). 






    ▶  문자열 갯수
          FIND ALL OCCURRENCES OF 'A' IN LV_STRING MATCH COUNT LV_CNT.

    ▶  문자열 내 특정 문자의 최초위치 값
          FIND 'A' IN LV_STRING MATCH OFFSET LV_OFF.
     ▶ 문자열 연결 (CONCATENATE)
       CONCATENATE F1 F2 F3 INTO G.
      
       어떤 구분자(Space, Comma ...)로 문자열을 연결하고 문자열 사이를 SPACE를 추가
       CONCATENATE F1 F2 F3 INTO G SEPARATED BY SPACE.


       문자열을 각 변수 고유성질 그대로 붙여준다.
       CONCATENATE F1 F2 F3 INTO RESULT RESPECTING BLANKS.

    ▶좌우 빈 공백 제거(CONDENSE)
       CONDENSE LV_STRING.
       
    ▶ 좌측 문자를 취한다.
        MOVE RESULT+0(10) TO LV_STRING.    <- LEFT
        MOVE RESULT+10(10) TO LV_STRING    <- MID

        LV_OFF =10.                                         <- RIGHT
        LV_CNT = STRLEN)RESULT).
        LV_INT = LV_CNT - LV_OFF.
        MOVE RESULT+LV_INT(LV_OFF) TO LV_STRING.

    ▶ 문자열 나눔 (SPLIT)       - AT 뒤의 문자열을 기준으로 String을 나눔.
       SPLIT G AT SPACE INTO F1 F2 F3.
       SPLIT f AT g INTO TABLE <Internal Table>.
    ▶ 문자열 치환 (REPLACE)      
       STRING = 'ABCDEFGHIJ'.
       STR1 = 'CDEF'.
       STR2 = 'KLMN'
       LEN  = 2

       전체 문자열 치환
       REPLACE <STR1> WITH <STR2> INTO STRING.
       STRING : ABCDEFGHIJ  --> ABKLMNGHIJ

       원하는 길이만큼 치환
       REPLACE <STR1> WITH <STR2> INTO STRING LENGTH LEN.
       STRING : ABCDEFGHIJ  --> ABKLMNEFGH

       
       문자열 내 특정 문자 전체 치환하고 치환횟수 알려줌

       REPLACE ALL COOURRENCES OF 'A' IN LV_STRING WITH 'B'
       REPLACEMENT COUNT LV_CNT.   


       문자열중 첫번째 문자만 치환
        REPLACE 'A' IN LV_STRING WITH 'B'.

    ▶ 대소문자 변환 (TRANSLATE)
       TRANSLATE <C> TO UPPER CASE. (대문자)
       TRANSLATE <C> TO LOWER CASE. (소문자)

    ▶ 문자열 이동 (SHIFT)
       SHIFT <C> LEFT DELETING LEADING <STR>. (왼쪽 <STR>을 지우고 이동)
       SHIFT <C> LEFT DELETING LEADING SAPCE. (왼쪽 Space를 지우고 이동)
       SHIFT <C> CIRCULAR / RIGHT / LEFT . 

       마이너스 부호를 앞자리로 이동하는 예제. ( NUM = '     1000-' )
       SHIFT <NUM> RIGHT CIRCULAR. ( NUM = '-     1000' )
       SHIFT <NUM>+1 LEFT DELETING LEADING SPACE. ( NUM = '-1000     ' )
       SHIFT <NUM> RIGHT DELETING TRAILING SPACE ( NUM = '     -1000' )












2012년 5월 2일 수요일

리눅스 환경에서 테스크탑 실시간 방송하기(우분투, justin.tv)

[출처: http://kldp.org/]

우분투 11.04 기준으로 작성되었습니다.
ffmpeg를 이용하여 리눅스 데스크탑 화면을 실시간으로 방송하는 방법을 정리하였다. 우분투에 포함된 ffmpeg 패키지는 libx264와 libmp3lame등이 포함되어 있지 않으므로, ffmpeg를 빌드 설치 해야 한다.
0. 기존 설치된 ffmpeg 패키지가 있으면 이를 삭제한다.
$ sudo apt-get remove ffmpeg 
1. ffmpeg 빌드 설치하기 위한 의존성 패키지를 설치한다.

$ sudo apt-get update
$ sudo apt-get install build-essential checkinstall git libfaac-dev libjack-jackd2-dev \
  libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libsdl1.2-dev libtheora-dev \
  libva-dev libvdpau-dev libvorbis-dev libx11-dev libxfixes-dev texi2html yasm zlib1g-dev \
  kx11grab libx264-dev libmp3lame-dev
2. ffmpeg 소스 코드를 받아온다.

$ git clone git://source.ffmpeg.org/ffmpeg.git 
3. ffmpeg 컴파일 및 설치한다.

$ cd ffmpeg
$ ./configure --enable-x11grab --enable-memalign-hack --enable-pthreads \
  --enable-libmp3lame--enable-libx264 --enable-gpl --disable-shared --enable-static
$ make
$ sudo make install
4. Justin.tv의 스트림 키를 얻어온다. (Link> http://www.justin.tv/broadcast/adv_other)
5. Justin.tv에 ffmpeg로 데스크탑 화면을 생방송하는 스크립트를 작성한다.
* desktop_stream.sh

#!/bin/sh
INRES="1920x1080" # input resolution
OUTRES="1280x720"
FPS="20" # target FPS
# Justin
STREAM_KEY="live_YOUR_STREAM_KEY"
URL="rtmp://live.justin.tv/app/$STREAM_KEY"
ffmpeg -f x11grab -s "$INRES" -r "$FPS" -i :0.0 \
          -f alsa -ac 2 -i pulse -vcodec libx264 -s "$OUTRES" -ar 22050 \
          -acodec libmp3lame -ab 64k -threads 0 \
          -f flv $URL 
6. 스크립트를 실행하면 데스크탑 화면과 사운드가 Justin.tv에서 생방송 된다.

$ ./desktop_stream.sh 

2012년 4월 6일 금요일

아웃룩 메일함 별도 파일로 지정하기

[참조 : http://blog.naver.com/ ]

아웃룩을 쓰다 보면 저장소의 크기가 최대치에 도달하였다는 메시지가
나올때가 있다.
아웃룩 분명히 하드디스크 용량으로 쓰는건데, 웹메일 처럼 용량이 저장소의
크기가 다 되었다고 하면서 지운편지함을 비우라고 하는 건 왜일까?
이 문제를 해결하기 위해서 하드디스크 남은 용량을 확인해봐도 아직 하드디스크
공간은 널널하다.

아웃룩을 사용하다 이런 경험이 있다면, 분명히 아웃룩을
많이 사용하고, 메일로 커뮤니케이션이나 데이타를 많이 받는 직업을 가진 사람일 거다.

이런 증상은 왜 생길까?
정답은 아웃룩 저장공간의 최대 사용량이 2기가이기 때문이다.


그럼 어떻게 아웃룩을 용량을 늘려서 사용할 수 있을까?
레지스트리 편집기를 건드리는 경우도 있고 개인폴더를 새로 만드는 경우도
있는데, 개인적으로 추천하는 방법은 개인 폴더함을 추가하는 방식이다.

개인 폴더함을 추가하는 방법은 아래와 같다.

도구—>옵션 데이타파일 선택

추가 선택

Office Outlook 개인 폴더 파일 선택 후 확인

저장 경로를 설정하고 개인폴더를 생성한다.

추가된 항목을 선택하고 기본값으로 설정을 클릭한다.

새로 설정한 편지함에 메일이 들어오고 기존 메일들은 개인 폴더함으로 보관되어
언제든지 메일을 확인 할 수 있다.