일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- abap #sap #sy-datlo #sy-datum #syst #system variable # 시스템변수
- abap #sap #sy-index #sy-tabix #syst
- abap #sap #color #row #layout
- abap #sap #conversion #currency #cfield #waers
- sap #abap #화폐단위 #sap conversion #inr conversion
- abap #정규표현식 #regular expression
- grave #abap #sap #backquote
- abap #sap #se16h #data #tcode
- abap #sql #sap #query 실행 순서 #query 작성 순서
- abap #sap #conversion #currency #conversion_currency
- abap #sap #free #alv #clear #refresh
- abap #wildcard #와일드카드 #sql #select #where조건
- abap #initial #null #abap inital vs null
- #apostrophe
- open sql #sap #abap #where exists #where not exists
- abap move corresponding #abap data이동 #abap correspond mapping
- sap #abap #cl_gui_alv_grid #function code #alv
- abap #sap #search hlep #f4 #f4if_int_table_value_request #change column name
- sap #cts #abap #release #merge cts #request no
- abap #abap_move
- abap #sap #layout #layout 설정
- sap #abap #data exists #read table #xsdbool #line exists
- abap #동적 where #동적 select
- abap #se39 #srepo #sap #development #compare code
- abap #sap #hotspotclick #do_sum
- Today
- Total
목록전체 글 (29)
0v0__DEV

코딩을 하다 보면 데이터를 다른 인터널 테이블이나 스트럭쳐로 옮겨 담아야 할 때가 많다! CORRESPONDING 의 유용한 쓰임, 자주 사용하는 옵션, 주의점 등 에 대해 알아보자! 1. CORRESPONDING은 기존 데이터를 무시한다! LT_1 의 데이터를 데이터가 존재하는 LT_2에 옮기려, MOVE CORRESPONDING을 아무 옵션 없이 사용하면 LT_AA에는 2건의 데이터가, LT_UA에는 1건의 데이터가 존재한다 MOVE-CORRESPONDIG LT_UA TO LT_AA 하면 옮긴 데이터 1건만 들어온다 ( NEW SYNTAX인 CORRESPONDING #도 동일) MOVE-CORRESPONDING LT_UA TO LT_AA KEEPING TARGET LINES. 하면 옮긴 데이터 ..

ABAP에서는 모든 필드가 각자의 INITIAL VALUE를 가진다. DATA 선언 시, 테이블 생성 시 모든 필드는 초기값(Initail Value)으로 저장된다!Type C의 경우 공백(space, ' ' ) 으로, Type I의 경우 0 으로 저장되며이는 Null과는 다르다각 TYPE 별로 Initial Value 는 다음과 같다 TypeInit Value I, F , P, N0C' ' (space)D00000000T000000 Null과 Inital Value는 다음과 같은 차이점이 있다NullInitial Value 어떠한 값도 갖지 않음 ! > 메모리 공간 차지 X 값을 가짐 > 메모리 공간을 차지0, '', space와는 다름 0, '' , Space, 공백 IS NULL, IS NOT N..

오랜만에 컴백! 최근 금액을 인도에서 사용하는 화폐 단위인 '루피'로 컨버전해달라는 요청사항을 받았습니다! 인도 화폐단위의 특이한 점은 백 단위, 천단위, 십만단위, 천만단위 등각 단위마다 'Hundred, Thousand, Lakh, Crore' 등의 명칭이 있다는 것입니다! 이 때, SAP 스탠다드 펑션인 'HR_IN_CHG_INR_WRDS' 을 사용하면 쉽게 변환할 수 있습니다~ DATA lv_amt_in_num type PC207-BETRG. (Curr 15.2)DATA lv_amt_inr type C. (필요한 길이만큼, Char 설정) CALL FUNCTION 'HR_IN_CHG_INR_WRDS' EXPORTING amt_in_num = lv_amt_in..

1. CTS란?CTS (Change and Transport System): 작업 내역을 각 서버로 이관해주기 위한 tool Cts No. 또는 Request No. 라고 불리우고, 이 단위로 이관이 가능하다 이관? SAP 서버는 DEV(개발) > QAS(품질) > PRD(운영) 서버로 주로 이루어져있으며개발 : 개발 / 품질 : 테스트 / 운영 : 실제 사용 (현업) 이라고 이해하면 된다! 결론 DEV 서버에서 개발하고 > QAS로 이관해서 테스트 > PRD로 이관해서 운영! 이관할 때에는 Release(작업 완료!) 하고, 이관하며만약 추가 작업 사항이 생겼다면 새로운 작업을 생성( 새 CTS 따기 ) 하고, 이관해주면 된다 2. 병합이 필요한 경우- CTS를 하나로 합칠 때 MERGE(병합)의..

DATA : lv_carrid TYPE sflight-carrid, lv_connid TYPE sflight-connid, lv_price TYPE sflight-price. SELECT SINGLE carrid, connid, price INTO ( @lv_carrid, @lv_connid, @lv_price ) FROM sflight WHERE carrid = 'AA' AND connid = '0017'.BREAK-POINT. WRITE /: |lv_Carrid = { lv_carrid }|, |lv_connid = { lv_connid }|, |lv_price = { lv_price }|. 위와 같이 코드 ..

ALV를 생성할 때 사용하는 펑션 set_table_for_first_display EXPORTING PARAMETER 중 사용비고is_variantALV 레이아웃 제어에 사용 레이아웃, 필터, 정렬 순서 등을 사전에 설정할 수 있음 (다음 조회때에도 동일한 형식으로 조회할 수 있음) i_saveSave Layout (사용자가 출력 레이아웃을 저장할 수 있는 여부 제어)- 공백 : 레이아웃 변경O, 저장 X - X : 글로벌 레이아웃 세팅만 가능(모든 사용자들에게 레이아웃 적용)- U : 특정 사용자에 한한 레이아웃 세팅 가능 - A : 레이아웃 저장( X, U 둘다 가능) DISVARIANT : ALV그리드에 대해 레이아웃을 저장하는데 사용되는 테이블 사용자가 ALV 그리드를 원하는대로 설정하고,..

개발 중 exists와 not exists 를 사용했는데, 예상과 다르게 데이터가 출력되어 두 구문에 대해 작성해본다! 1. WHERE NOT EXSITS SELECT * FROM scarr WHERE CARRID IN ( 'AA', 'AB', 'AC', 'AD' ) INTO TABLE @DATA(lt_itab).SELECT a~* FROM scarr AS a INNER JOIN @lt_itab AS b ON a~CARRID = b~CARRID WHERE NOT EXISTS ( SELECT * FROM scarr WHERE CARRID EQ 'CO' ) INTO TABLE @DATA(lt_scarr).SCAR..

1. 사용인터널 테이블에 특정 데이터를 가진 행이 있는지 확인할 때 사용 2. 유사 Read Table with key -> Check Sy-subrc 3. 구문1) xsdbool( line_exists( ) ). 2) IF line_exists( ). 4. 예시 코드 : lt_carrid에는 SCARR에 존재하는, carrid 가 AA, AB, AC,AD,AF 인 데이터가 들어있다SELECT * FROM scarr WHERE carrid IN ( 'AA', 'AB', 'AC', 'AD' ,'AF' ) INTO TABLE @DATA(lt_carrid). DATA(lv_exists) = xsdbool( line_exists( lt_carrid[ carrid = 'SQ' ] ) ). DATA..

데이터를 추출할 때 동일 필드에 대해서 조건이 여러가지일 때 .하나의 SELECT문 안에서 해당 필드에 대한 Where 조건을 여러 번 사용할 수 있다! 말로 설명하려니 굉장히 이상한데간단하다! 예를 들어 SFIGHT의 데이터를 추출하는데CARRID는 AA, AZ, DL, JL 중에 있어야 하며, Selection Screen에서 사용자가 입력한 CARRID와 일치해야 한다. TABLES : sflight.SELECT-OPTIONS : s_carrid FOR sflight-carrid.DATA lt_r_carrid TYPE RANGE OF sflight-carrid.lt_r_carrid = VALUE #( sign = 'I' option = 'EQ' ( low ..

그동안 데이터를 조회할 때, SE11과 SE16N만 주로 사용했는데SE16H는 데이터를 추출하고, 소규모 쿼리 결과까지 확인할 수 있다! * SE16H 화면 * BSEG(전표 아이템)를 출력하는데, BKPF(전표 헤더) 테이블과 조인하여 출력하려 함Data Base에 출력할 테이블 명 입력, 우측 join definition을 클릭하면 아래와 같은 화면이 나옴Join Definition은 저장해놓고, 재사용 가능함Name of join Definition은 재사용할 조인 조건 세팅 Secondary Tables에 조인조건을 줄 테이블 명을 입력하고, Output 클릭하면 이 화면이 나타남!어떤 필드를 출력할 것인지, Aggregation 기능을 사용하여 출력할 것인지 세팅할 수 있음 하단 Select..