일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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면접
- application-properties
- abap memory
- 구글 보안 api 활용
- sap memory
- 김영한
- spring
- SAP
- springSecurityFilterChain 오류
- spring MVC
- controller
- .orelseThrow
- mapping corresponding
- optional
- n+1
- @Controller
- new syntax
- value base corresponding
- memory변수명 변경
- abap
- Testcode
- SpringMVC
- MVC
- memory 정리
- BindingResult
- 신문법 abap
- jpa
- Validation
- abap value in field Data Class error
- for all entries in
- Today
- Total
SAP공장
SAP workbench 본문
#2022-06-20#
정리
1. ABAP 딕셔너리의 특징
1. abap 은 sql 중심 개발이 아니다.
2. database interface 에서 sql 을 변환 = database independent
3. direct access =ABAP 에서 특정 DB SQL을 프로그래밍 내에서 사용할 수 있다.= db 커넥션이 필요 없다.
domain은 특정 형식 type 등의 정의된 필드나 범위를 가질수 있다.
field는 data element를 가질수 있으며 data element 는 domain을 가질수 있다. (필수는 아니다. just 값의 범위를 통제하고싶을때 "validation")
값의 범위는 필수는 아니다.
# 기본 database 이론 정리
field ++ == > recode ++ = > table ==> database
Q. 동적으로 움직일수 없는 것은?
field
table 없이 field는 단독으로 존재할수 없다.
/**ABAP Dictionary = ABAP Database**/
DATA Element = > 필드의 테이블의 길이와 사이즈를 정의
// 개인적으로 데이터 유형을 정하지 말고 DATA Element 사용하자.
Domain이 정해준다. ?
Data element 는 field를 필수로 갖지만 domain은 필수로 갖지 않는다.
domain을 할당해서 data element 값을 통제 할때 사용한다,
1개의 domain은 여러 data element를 상속가능하다.
Standard 객체=> 수정을 하지 말아야할 객체 == Entity
CBO 객체 ==dto
Z 로 시작하거나 Y로 시작하면 CBO 객체다
Z : 정식 cbo
Y : test or 임시용
/*****sap table 이론*****/
trasparent table은 db 와 1:1 관계를 갖는다.
ex) sap zc5t07001을 만들면 db에도 저장이 된다 // jpa @entity 처럼 eager loadin
db 테이블은 동일한 이름의 필드와 동일한 수를 가지고, 필드는 r/3 테이블의 정의와 동일한 이름을 갖는다.
table은 app data(record)를 저장하는데 사용된다,
app data(record)는 application에 의해 사용되는 master data or transaction data라고 한다.
CBO table은 꼭 'Z'로 시작해야 한다.
table 생성시에는 클라이언트 번호(mandt)가 존재한다. => 클라이언트별로 data가 들어간다.
domain 의 value table = java의 @enum
# @Transaction => DATA를 변경하는 모든 행위
객체는 모두다 보이지만,
DATA 는 Client Level로 존재하기 때문에
해당 Table은 관계된 DATA를 가지고 있어야한다.
3. mandt는 필수!

/** tcode 명령어**/ => Command 창에 입력
/n : end
/i : 세션 제거
/nex : 활성창을 닫고 log out (다시 로그인해야한다.)
-만드는 방법
1. Commend 창에 se11을 입력한다.

2. Check box 클릭후 A 선택 + 유지보수는 허용으로!



# @Transaction => DATA를 변경하는 모든 행위
객체는 모두다 보이지만,
DATA 는 Client Level로 존재하기 때문에
해당 Table은 관계된 DATA를 가지고 있어야한다.
3. mandt는 필수!



SAVE 누른다면

저장버튼 클릭

저 버튼 클릭





+ 저장

CASE-SENSITVIE 는 대소문자를 구분해준다.

Utilites -> table content -> create entries로 필드내 값 변경

Setting >> UserParameter 로 필드 스펙 변경

/*****sap table 이론*****/
trasparent table은 db 와 1:1 관계를 갖는다.
ex) sap zc5t07001을 만들면 db에도 저장이 된다 // jpa @entity 처럼 eager loadin
db 테이블은 동일한 이름의 필드와 동일한 수를 가지고, 필드는 r/3 테이블의 정의와 동일한 이름을 갖는다.
table은 app data(record)를 저장하는데 사용된다,
app data(record)는 application에 의해 사용되는 master data or transaction data라고 한다.
CBO table은 꼭 'Z'로 시작해야 한다.
table 생성시에는 클라이언트 번호(mandt)가 존재한다. => 클라이언트별로 data가 들어간다.
domain 의 value table = java의 @enum
'[SAP]ABAP > ABAP 강의 SYNC' 카테고리의 다른 글
sap workbench 6 (0) | 2022.06.27 |
---|---|
SAP WORKBENCH 5 (0) | 2022.06.24 |
sap work bench4 (0) | 2022.06.23 |
sap abap workbench 3 (0) | 2022.06.22 |
abap workbench 2 (0) | 2022.06.21 |