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

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..

와일드카드란 ?특정 패턴이나 시퀀스를 나타내는데 사용되는 문자 또는 기호 와일드카드는 Where 조건에서 Like, CP( Contain Pattern : 특정 문자열 패턴이 일치하는 경우 True 리턴 / 일치하지 않는 경우 False 리턴),NP( Not Pattern : 특정 문자열 패턴이 일치하는 경우 False 리턴 / 일치하지 않는 경우 True 리턴) 와 함께 사용할 수 있음!SE11에서 데이터를 찾을 때에도 유용하게 사용할 수 있음 기호의미 +한개의 문자와 일치 SE11에서 데이터를 찾을 때 해당 패턴으로 찾을 수 있음! _한개의 문자와 일치( _개수만큼 자리수 정할 수 있음) %일치하는 문자열(0~문자 수 제한 없음) 1. _A319-10으로 시작하는 데이터 출력 DATA lv_..

1. BREAK POINT AT 1) Breakpoint at Statement - 소스 코드 중 원하는 ABAP 키워드?로 검색이 가능 (코드 작성 시 '파란색' 키워드로 생각하며 될 것 같다)원하는 내용을 빈 칸에 적은 뒤 실행하면 되는데, 아무 내용을 적는다고 모두 찾을 수 있는 것은 아니다! 어떤 키워드가 있는지 잘 모르겠다면F4가 있으니 클릭하여 확인할 수 있다 2) Breakpoint at Subroutine - se80 Work bench에서 'Subroutines' 폴더 내부에 존재하는 서브루틴의 이름으로 디버깅을 걸 수 있다 - 현재 디버깅을 타고 있는 프로그램 뿐만 아니라, 다른 프로그램의 다른 폼도 검색할 수 있나보다! - Free condition에는 특정 조건을 걸어 특정 조..