2009년 10월 26일 월요일

나의 헌팅 보고서[펌]

 

정말 너무 심심해서,

전날 술을 막 먹고 잤는데, 진탕 마셨다 생각했는데, 기억은 끊겼고,

집에 와서 잔 시간은 겨우 11시!

따라서 일어나니 겨우 새벽 다섯시,

 


친구랑 아침 10시에 약속이 광화문에서 있었고, 그래서 아침 9시에 집을 나섰는데, 이 놈이 9시 40분에 파토,
교보문고에서 심심하게 있다가 오늘 내 꼴을 보니 평소보다 상태가 좋다.

 


평소 이틀에 한시간은 꼭 스누라이프를 하는 본인은, 항상 순환주제로 올라오는 "헌팅" 에 대한 심도있는 고찰과 정보를 제공하고 싶었다. (하지만 본인은 헌팅은 진짜 처음)
그래서-_-진짜로 거짓말 안치고, 헌팅을 20번 해보고! 그 통계를 내보고자 했다.(진심)
광화문에서 집까지 오는 길에, 틈날때마다, 헌팅을 했고, 집에 돌아오니 밤 9-_-

 


*. 본인 스팩:
27세, 군필, 키 178, 몸무게 68, 안경 착용, 여드름X, 탈모X,  복장, 라운디 트 두장 겹쳐입고 + 청바지 + 컨버스 찍찍이 운동화
--> 본인은 막 입고 다니지만, 그냥 혹시  궁금해하시는 분이 있을까봐
--> 본인 잘 생기지 않았음, 그냥 화장실 거울에서 보면 잘생긴거 같지만, 엘레베이터에서 보면 토할 거 같은 얼굴, 근데 샌님처럼 생겼단 소리는 꽤 들음,
--> 여자 친구 사귀어본 경험 3회정도 (1,1,3년)

 


*. 방법:
약간 주변을 서성이디가 (정확히 5분 정도)
이런 적 처음인데, 너무 예쁘셔서, 혹시 남자친구 없으시면 전화번호 주실 수 있을까요? 괜찮으시면 식사 대접하고 싶은데
라고 또박 또박 말했음 + 미리 뽑아둔 레스비(모두 레스비)를 주면서 말함 + 내 전화번호를 써서

 


*. 대상
미니스커트입고, 가방에 핸드백을 들은(백팩이 아닌, 화장품과 핸드폰만 들어갈 만한 사이즈), 힐 신은 여자만 대상 , 얼굴은 그냥 호감형으로만, 나이는 20대초반으로
딱 봐서 맘에 드는 여자한테만 대쉬했음, 아주 못생긱나 이런 여자한테는-_-;안 들이댔음
상세한 기준 없이 그냥 맘에 드는 여자가 기준임

 


*. 총 Score
전화 번호 준 여자분 18명 /20명
--> 사실 전화번호는 대개는 주는 듯 , 본인도 놀랄만큼 엄청 많은 숫자가 번호를 줌
--> 헌팅 당했는다는 사실 만으로도, 만족해하는 여자들이 많은 듯 함  
*. 후 처리

 


본인은 헌팅 다음날 까지, 하루동안 절대 다시 문자하지 않음
--> 그 다음날 먼져 연락이 온 케이스4명
"왜 연락 안하세요" "안녕하세요?" " 어제 전철에서 전화번호 드린 사람인데요^^"
라는 식으로 문자가 옴

 


--> 하루 더 기다리고 내가 문자한 나머지 14명에게,
답장이 온 케이스 10명
쌀쌀맞게 대하는 케이스 (7명) + 반갑다는 제스춰(3명)

 


--> 먼저 연락이 온 케이스 (4명) + 반갑다는 제스춰 (3명)과 삼일 정도 하루 종일 문자질을 하고, 자기전에 전화도 함 , 만날 장소와 시간에 대한 언급은 전혀 안함

 


--> 쌀쌀맞게 대하는 케이스 7명에게 삼일 정도 띄엄띄엄, "좋은 하루 보내세요" 정도만 문자를 보냄
   아예 씹기 시작하는 : 4명  --> 포기하기로 결정
   조금씩 반응을 보이는 case: 3명

 


--> 더 이상 문자로 할 얘기가 없어지자, 먼저 연락이 온 케이스 (4명) + 반갑다는 제스춰 (3명) 은 한결같이 사생활에 관한 걸 묻기 시작
(*) 다니는 학교
(*) 직장
(*) 어디 사냐?
등, 이제까지 안한 얘기들을 묻기 시작
이제 문자횟수를 하루에 3~4회로 줄임, 이틀정도

 


반응이 나타나기 시작
"ㅡㅡ 휴 이제 씹나요?"
"죽었나요?"
등등임,
등등으로 문자가 오지만, 하루 정도 문자를 씹으니 자동 정리

 


--> 조금씩 반응을 보이는 case: 3명
나중에는 훨씬 더 격렬하게 반응
문자를 씹으면 전화가 옴
아직까지 연락이 오고 있음

 

 


보고서 끝

 


결론: 헌팅할 때 쫄지말고 하자, 연락처 받을 확률이 90%이다.
        헌팅한 입장이라고 저자세로 들어가지 말자.
        헌팅하더라도 튕기는 게 훨씬 더 좋은 결과를 가져온다.

 


---------------------
*. 현재까지 연락되는 분 3명 : 조금씩 반응을 보인 분 2명 + 반갑다는 제스춰 1명
*. 만남여부:
3명 모두 만났음
본인이 간단한 식사를 쐈음
얼굴 아는 척 하느라 혼났음
놀랍게도 그 세명 모두, 그 날 입었던 복장과 거의 비슷한 복장을 하고 나옴,
*. 신상명세
: 세명 모두 서울 소재 대학생
: 나이는 20~22세
: 전공이 세명 모두 비슷함
--> 나 자신의 취향을 조금 더 알 수 있는 계기였음, 무작위로 마음에 드는 여자분을 골라서 헌팅했을 뿐인데, 동질성을 띈 여성분을 고르게되었음

 


*. 대화 내용
--> 본인은 최대한 말을 하지 않고, 무슨 말이 나오나를 지켜봄
세명 모두
1) 제 어디가 맘에 드셨어요?
--> 상당히 확인받고 싶어하는 분위기라
  눈이요^^ 라고 말한 뒤, 다리가 정말 예쁘신 것도 한 몫했어요 라고 너스레를 떰, 확신하건데, 거의 성희롱적인 발언이었지만, 상당히 기분좋아했음

 


2) 학교는 어디다니세요?
--> 서울대다닌다고 솔직히 말했음 ,

 


3) 고등학교 때 공부잘하셨나보다
--> 이 얘기도 셋이 거의 똑같이 얘기함
기타 등등, 거의 비슷한 얘기를 함

 


*. 세 명 모두에게, 첫 데이트 다음날  문자를 보냄, 한꺼번에 보낸 게 아니라, 가장 마음에 드는 여자분 순서로 보냈음, 거절 당하면 딴 순서로 보내게

 


내용은 모두 동일
"우리 연애를 전제로 해서, 몇번 더 만나요, 어때요?"

 


1번:거절 당함 이유
" 남자친구가 있어요 사실 미안해요, 그런데 요즘 거의 만나지 못해서 헤어질 것 같아요, 좀 지켜봐주시는 건 어때요?"
--> 종종 남자친구가 있어도, 헌팅남에게 전화번호를 주는구나, 여친이 있어도 긴장하지 말자, 후배, 선배님들

 


2번: 성공
"좋아요,^^ 오빠"
3번: 문자 진짜 보내보고 싶었지만,결과는 궁금하나, 이는 연구윤리에 어긋나므로 참았음,

 


-----------
결론:
연애, 깡만 있으면 존내 쉽네
괜히 소개팅 나가서 돈 버리지 말고, 정말 자기 취향으로 길거리에서 찾아서, 친해진 후 여친 만 들자.
헌팅 100번해도, 결국은 consistent하게 자기 취향대로 고를테니, 하루에 많이 헌팅할 필요없다.

 


보고서 끝 

2009년 10월 13일 화요일

한비야의 대단한(?) 여행?

나 역시 미국을 여행하면서 힘든일도, 재미난 일도 많이 있었지만.

최근 무릎팍 도사에 나온 한비야나, 그녀의 책을 보면.. 고개를 갸웃 거리게 만드는 일이 너무 많다.

마치 환상을 심어주는 듯한 그것은 여행기라기 보다는 소설이라고 해야 될지..

 

‘하늘호수로 떠난 여행’ 에서 심어놓은 인도에 대한 환상이 무참히 깨질때의 내가 느낀 그  배신감을 다른 이들은 느끼지 않길 바라며.

 

클리앙에 올라온 글을 포스팅 해본다.

 

--------------------------------------------------------------------------------------------------------------------------------

이분에 관련된 논란이 제가 작년말 블로그에 적은 글로 인해 시작되었고, 가능하면 더이상 끼어들고 싶지 않습니다만, 링크된 팬카페의 찬양글들을 보고 한숨이 멈추지 않아 여행가로 유명한 그분의 여행패턴에 대해(다른 기타 업적을 차치하고라도) 조금 부연설명드리고자 합니다.

 


그분이 책에서 직접 밝히고 있는 내용들을 토대로, 그분은 실제로 어떤 여행자였는지 한번 볼까요?
1. 여행다니면서 곤란하거나 실수할 때마다 일본인인척 하고 다님
2. 위험지구 들어가서 사진찍고, 금지구역마다 들어가서 팻말과 함께 기념사진 촬영
3. 러시아 등지에서 배를 정상적으로 탈수 없자 밀항시도
4. 30대 후반의 여성이 가는 곳마다 근거없는 스캔들 발생함
5. 책에 실린 내용중 사실이 아닌 부분들이 속속 밝혀지고 있음
6. 히치하이킹과 현지인집 투숙을 즐김
(*주)

 


1. 여행하면서 정말 많이 만나는게 일본인 여행자입니다. 단 한명이라도 일본인 친구를 정상적으로 사귀어본 사람은 저런 행동하지 못합니다.


2. 탈레반에서 사진찍다 죽을뻔 했다, 이런거 절대 자랑아닙니다. 젊은 날의 치기로 했다고 해도 나중에 반드시 경고/반성해야 되는 내용입니다. 저런 곳에서 객기부리다 사망하게 되면 심각한 경우 그 지역의 한국인이 전원 철수해야 하는 경우도 있습니다. 아프간의 경우처럼요. 여행자 한명 사망하면 배낭여행자들 사이 분위기 침울해지고 교민사회와 한국의 이미지에까지 민폐를 끼칠 수도 있습니다. 지금 그분이 가지고 계시는 지위처럼 "긴급구호" 명목으로 그런 곳을 방문하는 것과, 단순 여행자 신분일때 호기심으로 방문하고 그 내용을 책으로 적어 내는 것의 차이는 모두들 아실 거라고 믿습니다.


3. 이 부분은 기억이 가물가물해서 확인을 해봐야 합니다. 러시아 쪽에서 배를 안태워주자 몰래 탔다가 발각되고 선장에게 사정해서 해피엔딩으로 넘어갔다는 내용으로 기억합니다. 마찬가지로, 국경에서 소동을 일으키다가 추방당하는 경우 후배 한국여행자들과 한국교민사회에 민폐를 줄 수 있습니다.


4. 진위여부에 대한 논란도 있습니다만, 제가 어떤 분의 댓글에 답변한 내용의 일부를 소개합니다.

 


<<<사지가 멀쩡한 한국여성이 배낭여행 다니면서, 유럽이나 북미 등 소위 선진국 이외의 지역을 여행하면서, "청혼" 한 번 안받는 경우는 아예 없다고 봐도 과언이 아닙니다.
일부 여행자들은 그런 에피소드도 "본인의 매력 때문에" 라는 뉘앙스로 소개를 합니다. 그러나 실상은 그렇지 않습니다.
개발도상국 사람들에게 여행자는 "돈"입니다. 그리고 여자분들의 경우 "성"이 추가되겠구요. 외국인과의 로맨스가 멋진 것이기는 하지만 경계해야 하는 이유도 여기에 있습니다.
유명한 이야기입니다만, 터키/인도 등지에서는 현지인들 사이에서 이런 소문이 있습니다.
"일본여자를 잡으면 호텔을 차릴 수 있고, 한국여자를 잡으면 레스토랑을 차릴 수 있다"
만약, "한국에서" 생전 처음보는 사람이 구애를 하고 청혼을 한다면 받아들일 수 있을까요? 그 구애하는 외국남성을 "한국인"이라고 생각해보십시오. 아마 받아들이기 힘들 것입니다.
실제로 많은 한국여성여행자들이 잘못된 여행기들을 읽고 외국인과의 로맨스를 꿈꾸는데, 대부분 그분들이 상대하는 사람들이 호텔종업원, 찻집종업원, 삐끼 수준을 넘지 않는 것이 시궁창적인 현실입니다.
인도에서는 인도인과의 자유로운 로맨스와 성생활을 즐기는 한국여성들을 "빠글리"라고 부른다고 하더군요. 인도가이드북으로 유명하신 환타님의 블로그에서 본적이 있습니다. (http://indofantazy.com/428 )
"적나라하게 말해" 현지인과 로맨스 잘못하면, 몸주고/마음주고/돈주고/병옮고/임신(임신되면 현지인 입장에서 게임오버라, 피임을 안하려는 경우가 많습니다) 등등의 시나리오가 가능합니다. 절대 농담이 아닙니다.
그런데 이런 배낭여행시의 로맨스의 "어두운 부분"에 대해 누가 짚어주나요? 한비야씨 책은 오히려 재미와 환상적인 부분만 부각시켜서 이런 부분을 은연중에 "조장"하죠. 그래서 문제라는 것입니다.
성인인데 누가 그런 글 보고 영향받냐구요? 그런 분들이 꼭 여행나오시면 제일 먼저 책에 소개된 장소로 갑니다. "여기선 이런 에피소드가 있었지" 하면서 확인하러 가는거죠. (제가 아는 지인 H님도 이란의 그 테러리스트와의 에피소드가 있었다는 곳을 가보았다고 합니다. 그게 사람의 심리죠.)
그냥 현실과 다르다는 것만 알고 실망하고 나오면 다행입니다만, 그 에피소드 비슷하게 현지인과 엮이기라도 한다면 본인은 여행의 추억을 만들었다고 착각하겠지만 그 현지인 입장에서는 또 한명 낚게 되는 것이 됩니다.>>>

 


5. 일단 책에서 본인의 이름은 "부모님이 지어준 것이다"라고 적어놨지만, 실제로 본명이 따로 있으며 스스로 개명한 것으로 알려져 있습니다. 볼리비아 루레나바께, 중국 한인촌의 에피소드 등 "완전히 가공"되었거나 사실과 상당히 거리가 있는 에피소드가 속속 발견되고 있습니다. "남의 에피소드를 받아 적어 책에 실었다는 증언"도 꽤 많습니다. 책의 내용중 어느 선까지가 진실인지는 글쓴이 본인만이 알것이라고 봅니다. (언제 한국가면 그분 책 처음부터 끝까지 다시 보고 "진실되지 않은 위험한 에피소드" 추리는 작업을 한번 해야될 것 같습니다.)


6. 히치하이킹과 현지인집 투숙은 솔직히 말해 개별 여행자의 "스타일"이라 무조건 나쁘다며 직접적 비판을 가하기는 어렵습니다. 다만 이런 내용을 책에 실어 공개하기로 했다면 위험성과 도덕성(대부분 히치하이킹과 현지인집 투숙은 "경비절감"을 최우선으로 하기 때문에, 민폐와 안전에 대한 논란은 여행자들 사이에서도 끊임없이 있어왔습니다)에 대해서 충분히 알려야 했을 것이라고 생각합니다. 책으로 활자화된 이후에는 "불특정 다수"가 그 내용을 접하게 되니까요.


그분의 거짓 혹은 불확실한 내용으로 가득찬 여행기를 보고 사고위험이 더욱 높아지는 여행자들을 보노라면, 정말 같은 업계에 몸담고 있는 사람으로써 그분은 '재앙' 그 이상도 그 이하도 아닙니다.


불행하게도 그분은 현시대의 아이콘이기 때문이죠. 제가 그분을 까서 좀 떠볼려는것 아니냐고 보시는 분들이 많은 모양인데, "정말 까놓고 얘기해서" 이쪽 업계에서는 "깔 가치도 없는" 사람으로 보는게 일반적입니다. 업계 종사자 사이에서 "혐오" 레벨로 취급된다고 보시면 됩니다.


원래 제가 저분에 관한 글을 쓰게된 계기가 2008년 후반기에 저분 모방여행자가 남미여행하면서 엄청난 민폐를 끼치고 다녔기에, 다른 여행자에게 미칠 영향을 우려하여 같은 계통 "진상여행자"의 대모격인 그분을 작정하고 파헤쳐본 것이죠. (그러다 보니 조금 글이 디테일해지고 무릎팍도사가 방송되면서 제 블로그에 거의 10만명이 유입되고 팬클럽과 관련기관사람들이 출동해서 한바탕 홍역을 치뤘지요;)
그분 모방여행자가 작년에 남미에서 하고 다녔던 여행패턴은 대충 다음과 같습니다. (정말 심각한 문제는 이 분은 자기 여행이야기를 "정보" 타이틀 붙이고 올려왔고 엄청난 수의 여행초보자들이 "고맙다"고 댓글을 남기며 스크랩해갔다는 것이죠)

 


1. 남미전역에서 히치하이킹 이동. (기사가 성폭행을 시도할때마다 은장도로 "자살쇼" 벌이며 위기모면. 이 내용은 본인의 "정보"글에는 소개하지 않음)


2. 여행기간의 반이상 현지인집에서 무료 숙식제공 받음 (가난한 현지인에게 민폐가 아니냐는 지적에, 그래서 나올때마다 한국지폐 한장씩 선물해주고 나온다고 함. 본인은 10년이상 불우이웃을 위해 기부를 해왔다, 빈민을 사랑한다고 변명)


3. 남의 집 정원에서 텐트치고 잠 (퍼밋을 받았는지는 확실하지 않음)


4. 해발 7,000m의 산(아콩카구아)을 가이드 없이 등반. 6천미터에서도 고산병을 전혀 느끼지 않았다고 주장. 이 내용을 다른 사람들 따라하라고 "정보"로 올림 (중간에 길을 잃었던 사실이 있고, 조난당하여 구조되었다는 이야기가 있으나 본인은 극구 부인함)


5. 브라질에서 배를 공짜로 타려고 시도 (본인은 아니라고 하지만 밀항시도 가능성 있음)


6. 브라질 살바도르에서 밤 11시에 버스타고 "게이, 노숙자, 창녀" 등 구경거리가 많은 우범지대를 "브라질 야간밤버스 투어정보"로 올림. (버스타고 공항가다가 본 광경을 마치 정보인양 기술했다는 분석도 있음. 브라질 빈민촌은 지나가던 행인이 갱단의 총격전에 휘말려 사망하는 경우도 있는 곳임)

 


아... 정말 셀수도 없이 많은데 이쯤만 하겠습니다. 결국 저분은 6번에 이르러 그 여행동호회 사람들의 집중포화를 맞고 자진탈퇴를 하게 되었습니다.


추측이 되시겠지만, 그 "모방여행자"(본인은 아니라고 부인하지만) 분도 여행기 작가 지망생입니다. 원래 여행자체가 책 낼려고 시작한 것이었고 요즘 여행정보가 많이 노출되어 있다보니 튀기 위해 저런 무리를 하고 거짓과 허풍도 섞은 것으로 판단합니다만, 저런 내용이 책으로 출판된다면 독자들에게 어떤 영향을 미치게 될까요. 난다긴다하는 여행매니아들이 모여있는 동호회에서도 "좋은 정보 정말 고맙다", "나도 님처럼 해보고 싶다" 이런 댓글들 작렬하는데 말입니다.


제가 남미에서 히치하이킹하고 다니겠다는 식으로 "개념없는 사람들" 볼때마다 정말 목숨걸고 말리는데, 아무리 말해도 듣지를 않습니다.


"이미 xxx 여행자가 했던거 아니냐. 그 사람은 했는데 왜 나는 못하냐. 안전했으니까 했겠지. 당신이 믿을만하냐 나는 내 인생의 롤모델인 그분을 믿는다."


이런 심리죠. 유명한 "그분"의 첫 여행기가 나온지 10년이 넘었는데도 아직도 이런 사람들이 "결코 적지 않습니다".


클리앙에 이런 내용을 소개하는 것은, 주로 영향을 받는 연인/여동생/누나 들에게 클리앙 분들이 자정작용을 해주실 수 있지 않을까 하는 기대에서입니다. 긴급구호로 이어지는 그 분의 다른 업적에 대해서 언급하지 않더라도, 일단 그분이 명성을 얻게된 여행자로서의 실체를 보는데 이런 시각도 있다는 점을 알아주셨으면 합니다.


*덧: 그분이 몸담고 계시는 단체에서 "징역 5년" 살이를 시키겠다는 협박메일을 받은바 있습니다. 관련된 분들의 악플이 끊이지 않아 블로그 운영에 지장이 있어 제가 글을 스스로 내렸고, 그 단체 인도지부 회장이 청부했던 일(자세히 묻지 말아주십시오)에 대해 아시는 분들이 저의 신변에 대해 많이 걱정해주신 것으로 압니다. 감사드리고 이 자리를 빌어 잘 살아 있음을 밝힙니다.


개인적인 경험을 토대로 - 조사한 내용들과 그 단체와의 접촉을 통해 - 그 단체가 참으로 문제가 많은 것 같다고 생각합니다. 설립의도를 숨기는 것도 그러하고(실제로 그렇게 하고 있다는 증거도 상당수 확보해놓았지만 제 신변을 위해 공개하지 않고 있는 상태입니다), 호주 ABC방송에서 에티오피아 취재할때 "무려 10년간" 후원금이 후원아동에게 전달되지 않았을 뿐더러, 후원아동은 후원자의 존재자체를 몰랐다고 합니다. 제가 처음 소개했던 내용인데 위키피디아에 누가 정리해놓으셨군요.


http://ko.wikipedia.org/wiki/%EC%9B%94%EB%93%9C%EB%B9%84%EC%A0%84#.EB.B9.84.ED.8C.90

 

 

2009년 10월 4일 일요일

구글 애드센스 최적화 가이드











블로그를 시작하고 구글 애드센스(Google Adsense)를 달았지만, 영~ 수익은 안난다.

물론 좋은 컨텐츠를 많이 생산한다면 좋겠지만, 그렇다고 하더라도 그것이 수익으로 직결되지는 않는다.

 

이에 구글에서 제의하는 애드센스 최적화 가이드를 읽어 보길 권한다.

2009년 10월 1일 목요일

PP 관련 펑션

회사달력의 공휴일만 가져오는 함수.

DATA: IT_HOLI LIKE ISCAL_DAY OCCURS 0 WITH HEADER LINE.

LV_ALTIME = DATE_TO – DATE_FROM.

CALL FUNCTION 'HOLIDAY_GET'

EXPORTING

HOLIDAY_CALENDAR = 'E3' “회사달력지정

FACTORY_CALENDAR = 'E3' “회사달력지정

DATE_FROM = DATE_FROM “FROM DATE

DATE_TO = DATE_TO “TO DATE

* IMPORTING

* YEAR_OF_VALID_FROM =

* YEAR_OF_VALID_TO =

* RETURNCODE =

TABLES

HOLIDAYS = IT_HOLI. “공휴일만 저장된 ITAB.

* EXCEPTIONS

* FACTORY_CALENDAR_NOT_FOUND = 1

* HOLIDAY_CALENDAR_NOT_FOUND = 2

* DATE_HAS_INVALID_FORMAT = 3

* DATE_INCONSISTENCY = 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.

ELSE.

DESCRIBE TABLE IT_HOLI LINES LINE. “LINE = 공휴일수

IF LINE <> 0.

LV_ALTIME = LV_ALTIME - LINE. “휴무일을 뺀 순수 작업일수

ENDIF.

ENDIF.

※ FROM DATE = TO DATE 인 경우 해당일자가 휴무일인지를 체크 할 수 있다.

 

 

특정일자의 달(月)의 마지막 일자를 가져오는 함수.

DATA LAST_DATE LIKE SY-DATUM.

CALL FUNCTION 'RP_LAST_DAY_OF_MONTHS'

EXPORTING

DAY_IN = SY-DATUM “기준이 되는 임의의 일자

IMPORTING

LAST_DAY_OF_MONTH = LAST_DATE “해당월의 마지막 일자

* EXCEPTIONS

* DAY_IN_NO_DATE = 1

* OTHERS = 2

.

IF SY-SUBRC <> 0.

* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

 

 

변수값 ALPHA CONVERSION 함수.

DATA: GV_MATNR(18),

TMP_MATNR LIKE MARA-MATNR.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'

EXPORTING

INPUT = TMP_MATNR “ALPHA CONVERSION이 된 변수값

IMPORTING

OUTPUT = GV_MATNR. “ALPHA CONVERSION이 안된 변수값

AND

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

EXPORTING

INPUT = GV_MATNR “ALPHA CONVERSION이 안된 변수값

IMPORTING

OUTPUT = TMP_MATNR. “ALPHA CONVERSION이 된 변수값

OR

CALL FUNCTION 'FI_ALPHA_CONVERT'

EXPORTING

I_STRING = GV_MATNR

IMPORTING

E_STRING = TMP_MATNR.

GV_MATNR = ‘100060001’.

TMP_MATNR = ‘000000000100060001’.

 

 

INTERNAL TABLE을 TEXT FILE로 내리는 함수.

DATA ERFILE LIKE RLGRAP-FILENAME VALUE 'C:\TEMP\SPEC.TXT'.

CALL FUNCTION 'WS_DOWNLOAD'

EXPORTING

FILENAME = ERFILE “PC로 내려오는 파일 이름

FILETYPE = 'DAT' “DAT, DBF, ASC, BIN

TABLES

DATA_TAB = ITAB. “텍스트로 내릴 ITAB.

OR

CALL FUNCTION 'DOWNLOAD'

EXPORTING

FILENAME = ERFILE “PC로 내려오는 파일 이름

FILETYPE = 'DAT' “DAT, DBF, ASC, BIN

TABLES

DATA_TAB = ITAB. “텍스트로 내릴 ITAB.

 

 

PC에 있는 텍스트 파일을 INTERNAL TABLE로 가져오는 함수

DATA: ED_FNAME LIKE RLGRAP-FILENAME VALUE 'C:\TEMP\OUT.TXT',

ED_FTYPE LIKE RLGRAP-FILETYPE VALUE 'DAT'.

CALL FUNCTION 'WS_UPLOAD'

EXPORTING

FILENAME = ED_FNAME

FILETYPE = ED_FTYPE “DAT, DBF, ASC, BIN

TABLES

DATA_TAB = ITAB. “텍스트파일의 내용을 가져오는 INTERNAL TABLE

OR

CALL FUNCTION 'UPLOAD'

EXPORTING

FILENAME = ED_FNAME

FILETYPE = ED_FTYPE “DAT, DBF, ASC, BIN

TABLES

DATA_TAB = ITAB. “텍스트파일의 내용을 가져오는 INTERNAL TABLE

 

 

응용 프로그램 실행하는 함수.

CALL FUNCTION 'WS_EXECUTE'

EXPORTING

PROGRAM = 'C:\SAPPROD\PRT3000.EXE'. “실행할 응용 프로그램

 

 

특정일자의 해당월의 마지막 일을 가져오는 함수

DATA TMP_LASTDAY(2).

CALL FUNCTION 'END_OF_MONTH_DETERMINE'

EXPORTING

DATUM = SY-DATUM “기준이 되는 일자

IMPORTING

TT = TMP_LASTDAY “해당월의 마지막 일(28,29,30,31)

EXCEPTIONS

OTHERS = 1.

 

 

PC에 있는 파일을 선택할 수 있는 파일선택 창 띄우는 함수

DATA: FILENAME(128).

CALL FUNCTION 'KD_GET_FILENAME_ON_F4'

EXPORTING

PROGRAM_NAME = SYST-REPID

DYNPRO_NUMBER = SYST-DYNNR

* FIELD_NAME = ' '

* STATIC = ' '

* MASK = ' '

CHANGING

FILE_NAME = FILENAME “경로와 파일명이 들어가는 변수

* EXCEPTIONS

* MASK_TOO_LONG = 1

* OTHERS = 2

.

IF SY-SUBRC <> 0.

* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

 

 

하단의 상태바에 특정문자열을 표시해 주는 함수

CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'

EXPORTING

PERCENTAGE = SY-INDEX

TEXT = '데이터를 가져오는 중입니다…'.

LOOP문과 함께 사용하면 진행현황을 % 로 표시할 수 있다.

 

 

SAP 오피스의 메일박스에 메일 전송하는 함수

DATA : BEGIN OF MS_MAILOBJECT_CONT OCCURS 0.

INCLUDE STRUCTURE MCMAILOBJ.

DATA : END OF MS_MAILOBJECT_CONT.

CLEAR : MS_MAILOBJECT_CONT.

REFRESH : MS_MAILOBJECT_CONT.

CONCATENATE '플랜트' WERKS ' 자재코드 ' MATNR

' 원가 생성작업을 해 주세요.'

INTO MS_MAILOBJECT_CONT-OBJLINE.

MOVE : '1' TO MS_MAILOBJECT_CONT-OBJNR,

'1' TO MS_MAILOBJECT_CONT-OBJLEVEL,

'RAW' TO MS_MAILOBJECT_CONT-OBJTYPE,

'원가생성 요청' TO MS_MAILOBJECT_CONT-OBJNAM,

'원가생성 요청' TO MS_MAILOBJECT_CONT-OBJDES.

APPEND MS_MAILOBJECT_CONT.

CALL FUNCTION 'MC_SEND_MAIL'

EXPORTING

MS_MAIL_SENDMODE = 'B'

MS_MAIL_TITLE = '원가생성요청'

MS_MAIL_DESCRIPTION = '원가생성작업을 해주세요'

MS_MAIL_RECEIVER = 'ED03'

MS_MAIL_EXPRESS = '' “ X=고속(받는사람의 작업화면에 창이 뜸)

TABLES

MS_MAIL_CONT = MS_MAILOBJECT_CONT

.

IF SY-SUBRC <> 0.

* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

 

 

하나의 입력값을 받는 POPUP창 띄우는 함수

DATA ANSWER(1).

DATA VALUE1 LIKE SPOP-VARVALUE1.

CALL FUNCTION 'POPUP_TO_GET_ONE_VALUE'

EXPORTING

TEXTLINE1 = '서천 외주단가를 입력하세요.'

TEXTLINE2 = '단가 입력후 계속을 클릭하면 입력.'

TEXTLINE3 = '취소를 클릭하면 단가입력 취소.'

TITEL = '외주단가 입력'

VALUELENGTH = 10 “입력받을 길이

IMPORTING

ANSWER = ANSWER “선택버튼 종류

VALUE1 = VALUE1. “입력된 값

* EXCEPTIONS

* TITEL_TOO_LONG = 1

* OTHERS = 2

 

 

화폐단위 변경에 따른 금액을 변경된 화폐단위에 맞게 변환해 주는 함수

CALL FUNCTION 'Z_BAPI_CA_READ_EXCHANGE_RATE'

EXPORTING

DATE = T_ERDAT "레코드생성일자(가격결정일)

SOURCE_CURRENCY = T_WAERK "원시화폐

TARGET_CURRENCY = 'USD'

COMPANY_CURRENCY = 'KRW'

TYPE_OF_RATE = 'M'

SOURCE_AMOUNT = LV_ZZAMT "원시화폐금액

IMPORTING

TARGET_AMOUNT = LV_ZZUSD. "변환된USD금액

 

 

사원번호를 가지고 해당 사원명 가져오는 함수

CALL FUNCTION 'RP_CHECK_PERNR'

       EXPORTING

            BEG    = SY-DATUM              "오늘날짜

            PNR    = GV_PERNR              "사원번호

       IMPORTING

            NAME   = GV_NAME              "사원명

       EXCEPTIONS

            OTHERS = 1.

 

 

문자열에서 특정문자(열) 변경 및 삭제

DATA: T_TEXT(30) VALUE '031-370-9164',

CALL FUNCTION 'STRING_REPLACE'
       EXPORTING
            PATTERN             = '-'   " 변경할 문자열
            SUBSTITUTE          = '' " 변경될 문자열
*         MAX_REPLACES        = 0
*    importing
*         number_of_replaces  = numberofreplaces
       CHANGING
            TEXT                = T_TEXT " 문자열이 들어있는 문장
       EXCEPTIONS
            WRONG_STRING_LENGTH = 1
            OTHERS              = 2.

T_TEXT : ‘0313709164’

 

 

소수점이 있는 문자열을 DECIMAL TYPE으로 변환하는 함수

DATA: GV_TEXT(10),

GV_DECIMAL(10) TYPE P DECIMALS 3.

CALL FUNCTION 'CHAR_FLTP_CONVERSION'

EXPORTING

STRING     = GV_TEXT        "CHAR 변수

        IMPORTING

          FLSTR     = GV_DECIMAL .    "DEC 변수

GV_TEXT : ‘2345.678’

GV_DECIMAL : 2345.678

 

 

두 일자사이의 개월 수를 계산하는 함수

CALL FUNCTION 'RH_PM_CONVERT_DATE_TO_MONTH'

EXPORTING

BEGDA = GV_BEGDA “시작일자

ENDDA = GV_ENDDA “종료일자

IMPORTING

MONTHS = ACT_MONTHS “개월수

* EXCEPTIONS

* INVALID_BEGDA = 1

* OTHERS = 2

.

IF SY-SUBRC <> 0.

* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

 

 

그래픽 구현

DATA: BEGIN OF ITAB_DATA OCCURS 0,

DATANAME(15),

QUANTITY1 TYPE I,

QUANTITY2 TYPE I,

QUANTITY3 TYPE I,

END OF ITAB_DATA,

BEGIN OF ITAB_OPTIONS OCCURS 0,

OPTION(20),

END OF ITAB_OPTIONS.

ITAB_DATA-DATANAME = '국내석건'.

ITAB_DATA-QUANTITY1 = 55.

ITAB_DATA-QUANTITY2 = 62.

ITAB_DATA-QUANTITY3 = 59.

APPEND ITAB_DATA.

ITAB_DATA-DATANAME = '산공생산'.

ITAB_DATA-QUANTITY1 = 35.

ITAB_DATA-QUANTITY2 = 52.

ITAB_DATA-QUANTITY3 = 44.

APPEND ITAB_DATA.

ITAB_DATA-DATANAME = '수출생산'.

ITAB_DATA-QUANTITY1 = 68.

ITAB_DATA-QUANTITY2 = 52.

ITAB_DATA-QUANTITY3 = 79.

APPEND ITAB_DATA.

CALL FUNCTION 'GRAPH_MATRIX_3D'

EXPORTING

COL1 = '1월'

COL2 = '2월'

COL3 = '3월'

TITL = '매출금액'

TABLES

DATA = ITAB_DATA

OPTS = ITAB_OPTIONS

EXCEPTIONS

OTHERS = 1.

 

 

뒤에 붙은 ‘-‘부호를 앞으로 빼주는 함수

DATA GV_VALUE(5).

GV_VALUE = '1234-'.

CALL FUNCTION 'CLOI_PUT_SIGN_IN_FRONT'

CHANGING

VALUE = GV_VALUE.

GV_VALUE “ ‘-1234’

 

 

POPUP 관련 함수들

POPUP_TO_CONFIRM_LOSS_OF_DATA - user가 delete명령같은 것을 실행할 때 dialog box생성한다.
POPUP_TO_CONFIRM_STEP - user가 다음 단계로 실행을 원할 때 dialog box 를 생성한다.
POPUP_TO_CONFIRM_WITH_MESSAGE - user가 수행중 어떤 특정한 결정을 내리는 부분에 있을 때,
정보제공 dialog box를 생성한다.
POPUP_TO_CONFIRM_WITH_VALUE - user가 특정한 object로 작업을 수행하기를 원할 때
                             question box를 생성한다.
POPUP_TO_DECIDE - user에게 radio button을 제공하여 결정하게 한다.
POPUP_TO_DECIDE_WITH_MESSAGE -  user에게 분류된 text를 제공함으로써 결정하게 하는
                               dialog box를 생성한다.
POPUP_TO_DISPLAY_TEXT - 두 줄로 된 dialog box를 생성한다.
POPUP_TO_SELECT_MONTH - 달을 선택하게 한다.
POPUP_WITH_TABLE_DISPLAY - 유저에게 선택한 table을 table line값과 함께
보여준다.

POPUP_TO_FILL_COMMAND_LINE – 입력값을 받을 수 있는 입력 필드가 생긴다.

 

 

문자열 자를 때 자르는 위치에 2BYTE문자가 있는지를 체크하는 함수

DATA: LV_LENGTH TYPE I.

CALL FUNCTION 'TRUNCATE_MULTIPLE_BYTE_STRING'

EXPORTING

STRING = 'ABDC가1234'

TARGET_LENGTH = '5'

IMPORTING

USE_LENGTH = LV_LENGTH

.

LV_LENGTH 와 TARGET_LENGTH 에서 입력한 값이 일치하면 문제가 없고,

1이 작은 경우 2BYTE 문자가 걸림.

자르는 위치를 LV_LENGTH로 하면 문자가 깨지는 문제가 발생하지 않음.

OR

DATA: LV_O_STR(10).

CALL FUNCTION 'CUT_2BYTES_STRINGS'

EXPORTING

I_STR = 'AB가나1234'

I_LEN = '5'

IMPORTING

O_STR = LV_O_STR

.

LV_O_STR : ‘AB가’

 

 

반올림, 올림, 버림을 쉽게 할 수 있는 함수

DATA: INPUT TYPE F,

OUTPUT TYPE F,

OUTPUT_N(5) TYPE N.

INPUT = '1276.65'.

CALL FUNCTION 'FIMA_NUMERICAL_VALUE_ROUND'

EXPORTING

I_RTYPE = ' ' "반올림

* I_RTYPE = '+' "올림

* I_RTYPE = '-' "버림

I_RUNIT = '1' “기준자리 수

I_VALUE = INPUT

IMPORTING

E_VALUE_RND = OUTPUT.

OUTPUT_N = OUTPUT.

OUTPUT_N : ‘01277’

 

 

문자열에 있는 값이 숫자만으로 되어있는지 문자가 포함됐는지 체크하는 함수

DATA: STRING_1(20) TYPE C, STRING_1_TYPE(4) TYPE C,

STRING_2(20) TYPE C, STRING_2_TYPE(4) TYPE C,

STRING_3(20) TYPE C, STRING_3_TYPE(4) TYPE C.

STRING_1 = '12345678901234567890'.

STRING_2 = 'abcdefg우리나라만세z'.

STRING_3 = 'abcdAAA34557azzidfll'.

CALL FUNCTION 'NUMERIC_CHECK'

EXPORTING

STRING_IN = STRING_1

IMPORTING

HTYPE = STRING_1_TYPE.

CALL FUNCTION 'NUMERIC_CHECK'

EXPORTING

STRING_IN = STRING_2

IMPORTING

HTYPE = STRING_2_TYPE.

CALL FUNCTION 'NUMERIC_CHECK'

EXPORTING

STRING_IN = STRING_3

IMPORTING

HTYPE = STRING_3_TYPE.

STRING_1_TYPE : NUMC

STRING_2_TYPE : CHAR

STRING_3_TYPE : CHAR

 

 

클립보드에 들어있는 내용을 가져오는 함수

DATA: BEGIN OF TAB OCCURS 1,

TEXT(20) TYPE C,

END OF TAB.

DATA EMPTY(1).

CLEAR EMPTY.

REFRESH TAB.

FREE TAB.

CALL FUNCTION 'CLPB_IMPORT'

IMPORTING

EMPTY = EMPTY

TABLES

DATA_TAB = TAB

EXCEPTIONS

CLPB_ERROR = 01.

 

 

문자열로된 계산식의 계산값을 RETURN 하는 함수

DATA: AAA TYPE P.

CALL FUNCTION 'EVAL_FORMULA'

EXPORTING

FORMULA = '(10+10)*10/10-7*(5+3)/7'

IMPORTING

VALUE = AAA

.

WRITE AAA. => ‘12’

 

 

Naver 태그: ,

텍스트엘리먼트 번역

image

글로벌 프로젝트를 하다 보면 텍스트엘 리먼트(Text Element)를 그 나라 말로 바꿔야 되는 경우가 있다.

이때 SE80에서 이동->번역을 누르면 대상언어를 선택하는 메뉴가 나오고, 그 뒤에 변경할 수 있는 화면이 나온다.

 

가끔 개발서버에서 번역을 한뒤 CTS를 넘겨도 운영에 반영되지 않는 경우가 있는데, 이때는 운영에서 직접 해주는 센스~

 

스트리트파이터4 최초로 나오는 한국인 캐릭터 주리

스트리트파이터4 최초로 나오는 한국인 캐릭터 주리

왼쪽 눈이 기계로 된 의안이란다.

그래서 번쩍 거리는 건지도 모르겠다.

첨에 손예진을 모델로 했다가.. 여러 사정으로 안하게 됐다는데 좀 아쉽긴하다..