본문 바로가기

분류 전체보기

Select CHECKBOX Create Date : 2010-07-04 Change Date : 2010-07-04 잡담 -ㅂ-; 오늘 좀 글을 많이 쓰는듯... 다~ 입에 풀칠 할라고 그런돠 간략히 소스를 보자... GUI Status를 생성해야 한다. data : box type c, lines type i, num type c. at USER-COMMAND. case sy-ucomm. when 'READ'. set pf-status 'S000' EXCLUDING 'READ'. box = space. DO lines times. read line sy-index field value box. if box = 'X'. write :/ 'selected:', num. box = space. modify line sy-index f.. 더보기
Custom Possible Entry Create Date : 2010-07-04 Change Date : 2010-07-04 잡담 -ㅂ-; 뭐... 문법이란게... 안 쓰면 잊어버리니... ALV Layout 저장한것 불러오는거랑 비스므리하다.. parameters : p_carr1 type spfli-carrid, p_carr2 type spfli-carrid. at SELECTION-SCREEN ON VALUE-REQUEST FOR p_carr2. call screen 100 starting at 10 5 ending at 50 10. at line-selection. check not p_carr2 is initial. leave to screen 0. *&-------------------------------------------.. 더보기
BDC : QUAN Field 처리 Create Date : 2010-07-04 Change Date : 2010-07-04 잡담 -ㅂ-; 금액 필드를 그냥 쓸경우 에러가 발생한다. (type error) 원래 N type으로 쓰곤 했는데, 아래와 같은 문법으로 해결가능하다. 수량과 금액 필드에 값과 함께 단위 정보를 추가하여 해결한다. write문이 변수를 저장 가능하다. (알고 있죵?) write gt_01-qty to l_qty left-justified unit 'EA'. write gt_01-price to l_price left-justified currency 'KRW'. 더보기
ALV : Select Layout (at selection-screen 이벤트에 Possible Entry) Create Date : 2010-07-04 Change Date : 2010-07-04 잡담 -ㅂ-; 명일 창원으로 출장간다... 에구구 비행기를 타고 바다로~ Overview 저장된 Layout 을 선택할 수 있도록 한다. 저장시에 i_save = '' 로 설정되면 Layout을 변경할 수는 있지만 저장이 불가능 하다. parameters : p_vari like disvariant-variant. data : g_grid type ref to cl_gui_alv_grid, gs_variant like disvariant, gs_cs_variant like disvariant. at selection-screen on VALUE-REQUEST FOR p_vari. gs_variant-report = .. 더보기
Smart Forms : PDF Create Date : 2010-06-15 Change Date : 2010-06-15 잡담 -ㅂ-; Smart Forms 결과를 PDF 파일로 변환하는 부분이다. 두 가지 문제가 있는데, 여전히 프린트 다이얼로그가 나온다는 것과 한글이 깨지는것이다. Source ** pdf data : lt_otfdata type ssfcrescl, control_parameter type ssfctrlop, lt_pdf_tab like tline occurs 0 with header line, lt_otf type itcoo occurs 0 with header line, w_filesize type i, w_bin_filesize type i. 중략... elseif p_pdf = 'X'. control_para.. 더보기
SAP TREE : Simple Tree Create Date : 2010-06-24 Change Date : 2010-06-24 잡담 -ㅂ-; 낼은 월급날~ 오르긴 한것 같은데(?), 소급이 되진 않을것 같다... Tree 는 결국 node 랑 parent node랑을 잘 역어주면 된다. web에서 javascript로 만들었던 기억이 있는데, 거기에 견주자면 ABAP에서의 Tree는 상당히 편한것 같다... (상용 Component를 쓰는 느낌?) 가장 간단한 Simple Tree를 구현해봤다. SAP TREE Simple Tree Column Tree List Tree SCREEN Custom Control 추가한다. Variants * tree types : node_table_type like standard table of mtree.. 더보기
Tip : Dynamic Internal Table (동적 인터널테이블, Use fieldcatalog) Create Date : 2010-06-21 Change Date : 2010-06-21 잡담 -ㅂ-; 옥수수가 먹고 싶다. 강원도에서 방금따서 찐 검정 찰옥수수~ 나도 주말농장을 갖고 싶다 ㅜ ㅜ 어디 밭떼기 몇평 주실분 없수? Overview 기간별로 Customer의 Open Data를 보는 Report 이다. Dynamic Table이 필요한 항목은 General Ledger Account (HKONT) 이다. Customer 별 Account 별 Open Value 가 되겠다. Source 거두 절미 하고 아래 소스를 첨부 했다. alv는 Function을 사용했다. REPORT ZEDU014. tables : bsid. types : begin of type1, kunnr type bsid-k.. 더보기
Tip : Dynamic Internal Table (동적 인터널테이블, Use 'INSERT REPORT') Create Date : 2010-06-19 Change Date : 2010-06-19 잡담 -ㅂ-; 어제 회식하기전에 모닝케어를 먹었더니 쌩쌩하구나~ 커피 잘 마셔주는 south dragon 군에게 이 글을 바칩니다. ㅋ 사례로 과일천ca 1.5L를 증정받았습니다. 캬캬 Overview 동적 internal table은 'INSERT REPORT' 구문을 사용해서 생성한다. 두 개의 Report가 필요하다. 첫 째는 데이터를 추출하고 dynamic table을 생성할 Report 둘 째는 데이터를 가공해서 dynamic table에 담는 Report INSERT REPORT Repository에 ABAP 프로그램을 생성하는 명령어이다. 생성하는 프로그램이 존재하면 덮어 써버린다. EXPORT/IMPO.. 더보기
ALV : Edit ALV (update) Create Date : 2010-06-18 Change Date : 2010-06-18 잡담 -ㅂ-; 지난밤 꿈을 꿨다... Boss랑 플젝 나가서 열심히 일하는 꿈을... ㅜ ㅜ 아이쿠 어깨 쭉지야~ Layout, Field Catalog 일단 편집 할 수 있도록 속성을 줘야한다. 두 가지 방법이 있다. 전체를 수정하거나 컬럼별로 지정하거나. 1. Layout gs_layout-edit = 'X'. "edit all alv 2. Field Catalog ls_fieldcat-edit = 'X'. "edit column EVENT 수정할 때 마다 itab에 담는다. 나중에 PAI에서 looping 하면서 하나 하나 Update 해주면 된다. 일단 EVENT 설정 부분이다. 노파심에 아래 핸들러 등록하는.. 더보기
ALV : Layout Create Date : 2010-06-17 Change Date : 2010-06-17 잡담 -ㅂ-; Layout으로 ALV layout을 변경한다. (당연한 소릴하구 있다...) 프로그램 실행시 Layout 을 선택할 수 있다. (일반 현업에겐 과분한 기능인듯 ㅎㅎ) Create Layout 뭐... 간단하다. 1. Definition data : con1 type ref to cl_gui_custom_container, grid1 type ref to cl_gui_alv_grid, gt_fieldcat type lvc_t_fcat, gs_layout type lvc_s_layo. 2. Setting FORM SET_LAYOUT . gs_layout-cwidth_opt = 'X'. "auto colu.. 더보기
ALV : Event (Refresh button event at ALV toolbar) Create Date : 2010-06-17 Change Date : 2010-06-17 잡담 -ㅂ-; Event는 윈리만 알면 쉽다. 선언하구, 메소드 정의하고, 메소드 등록해주고~ 연애도 Event같이 쉬웠음 좋겠다 ㅜ ㅜ EVENT 이벤트선언 : 다음 위치에서 조회 할수 있다. (SE24->CL_GUI_ALV_GRID->Events tab) 이벤트 핸들러 메소드 정의 : 이벤트 발생시 action을 정의 한다. 이벤트 핸들러 메소드 등록 : 이벤트가 발생할 grid에 해당 이벤트를 등록한다. Ceate Refresh Button Event 1. variables type-pools : icon. 2. event definition class lcl_event_receiver definition. p.. 더보기
Smart Forms : Basic (Hello Smart Forms!) Create Date : 2010-06-15 Change Date : 2010-06-15 잡담 -ㅂ-; TISTORY에서 처음 쓰는 posting이다~ 나름 혼자 study하면서 작성하겠지만, 내글을 읽는 분이 있다면 조금이나마 도움이 됬으면 좋겠다. Smart Forms는 생각보다 쉽지만, 항목이 많아지거나 미친(?) 고객사를 만나게되면 힘들게 느껴질 수도 있을것 같다. 그림이 복잡해져도 나중에 꽁수가 있으니, 넘 걱정은 말자~ 그건 나중에 posting 하기로 하고. (넘 기대는 말자 ㅋ) TCODE SMARTFORMS Create Form에 이름을 적고 Create 버튼을 눌러 생성한다. 생성이 되면 바로 저장한다. Overview Left : Navigation tree Center : Maint.. 더보기