일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 알고리즘
- SAP 번역
- BOPF
- FPM
- 맥북
- 자바 클래스
- 자바
- java
- mac
- BTP
- 파이썬
- ui5
- udemy
- 이클립스
- S/4HANA
- 개발
- Deep Learning
- 백준 알고리즘
- Fiori
- html
- Algorithm
- module
- tm
- python
- Eclipse
- sap
- visual studio code
- 클래스
- BOBF
- ABAP
- Today
- Total
목록SAP/TM Module (10)
z2soo's Blog
Introduction to Validation Validation은 특정 상황에서 실행되는 체크 로직으로써 어떤 데이터도 수정하지 않는다. 대신, 실패한 노드 인스턴스에 대한 키 값과 메세지를 리턴한다. Validaiton은 다음 두 카테고리가 있다. Action validation action을 실행하기 위한 전제 조건이 충족되었는지 체크 Consistency validation node instance의 일관성을 체크 Determination 및 action의 configuration과 마찬가지로 validation 또한 실행 상황, 시점, 노드 설정이 가능하다. 단, 다른 것과 다르게 Failed early 라는 원칙을 가진다. 이는 만약 10개의 step이 수행되어야 하는 경우 2에서 fail ..
1. Introduction to Actions Creation of “Set Load Plan status to completed” action service consumer, 다른 business object, 다른 action/determination에 의해 실행 가능 business object node에 할당된 business logic action을 통해 node 인스턴스의 데이터 생성, 삭제, 수정 가능 2. Action configuration action이름을 정할 때, 동사 + 정확히 어디에서 해당 action이 수행되는지 의 네이밍 룰을 따르도록 하자. Node action이 할당된 노드 Action cardinality 얼마나 많은 노드 인스턴스에 해당 action이 한번에 실행 될..
1. Introduction to Determination Business object instance의 lifecycle 동안 연쇄적인 반응이 필요한 이벤트가 있을 수 있다. 예를 들어 특정 노드 정보가 생성, 저장, 수정 되었을 때, 관련된 노드에서 마찬가지로 정보의 업데이트가 필요할 수 있다. 즉, 특정 노드의 정보 변경에 대해 reaction을 제공하는 것이다. 2. Determination configuration TOR business object의 determination을 클릭하여 determination의 설정에 대해 보도록 하자. Determination category determination이 persistent 인지 혹 transient 인지 설정 Change mode Persis..
BOPF Test tool T Code BOBT 에서 생성한 business object에 대해 테스트해볼 수 있다. 마찬가지로 데이터를 보기 위해 Web UI를 열 필요 없고 T-BOBT 에서 찾아보면 된다. 작업하고 싶은 business object에 대해 데이터를 조회할 때, query, key, alternative key로 조회 가능하다. 예를 들어 키 값으로 데이터를 조회하는 경우, 다음과 같이 해당 키 값에 대한 데이터를 확인할 수 있다. 조회된 데이터에 대해서는 Lock, Action, Association 실행이 가능하다. 사용자가 UI application에 가서 열 때 마다 optimistic lock이 적용된다. Optimistic lock 이 적용되면 여러 사용자가 UI를 edit..
1. Core BOPF components BOPF에는 다음의 다양한 components가 있다. 상세한 내용은 뒤에서 개별 문서로 다루도록 한다. Node Business object의 데이터를 모델링하기 위해 사용 계층구조를 이룸 다양한 노드 타입이 있지만, persistent node 를 주로 사용 각 노드는 노드 내에 저장되는 데이터의 타입을 정의하는 1개 이상의 속성으로 구성됨 Determination 이벤트 및 이벤트 핸들러 BO 인스턴스 변경에 의해 야기되는 내부적 이벤트 (나비효과로 BO 인스턴스 변경) Action 노드에서 수행하는 일반적인 서비스 사용자에 의해 명시적으로 발생하는 BO 인스턴스 변경 Assosication 노드 간 관계 두 노드에 존재하는 인스턴스 연결 Query 데이터..
Business object TM에서 주로 사용되는 TOR business object를 가지고 보다 상세한 설명을 해보도록 하겠다. Business object는 개발을 시작하면 일반적으로 현실 업무에 사용되는 instance 별로 데이터 베이스에 객체를 만들게 된다. 좌측 트리 구조를 보면, 해당 business object에 대한 node가 어떤 것이 있는지 확인 가능하다. Node structure 노드를 트리구조로 보임 Node element 어떤 노드가 있는지 리스트로 보임 Group business object를 save, modification 하는 시점에 적용되는 validation을 모은 것 우측을 보면 해당 business object, /SCMTMS/TOR 에 대한 정보를 확인할 수..
BOPF Introduction TM의 business object는 BOPF Modeing Tool에서 볼 수 있다. 원래는 T-code BOPF (이하 T-BOPF 형태로 표기) 로 시작했지만, business 요소가 들어가면서 T-BOBF 로 변경되었다. 해당 티코드로 들어가면 BO 목록, 노드의 계층(hierarchy), configuration, 각 노드의 elements(association, action, determination etc)은 물론 TM 개발 외에도 S/4HANA와 관련된 개발 objects를 볼 수 있다. 다양한 business object(이하 BO) group을 볼 수 있다. 처음에 보이는 것이 Business Process Object 이며, ERP에 있는 transac..
BOPF란? Business Object Process Framework 다른 back-end framework와 마찬가지로 data access, buffering, modeling, locking 등에 대해 다루는 framework TM에서 중요한 이유? 선택한 이유? create, save, query 등 기본적인 기능 제공을 통한 빠른 prototype 생성 가능 재사용 가능한 코드를 통한 implementation(구현)의 재사용성 Enhancement를 통한 customizing 가능 Buffer와 DB layer의 데이터 및 코드 관리 가능 공통의 개발 규칙 적용 가능 기타 복잡하지만 그만큼 막강한 기능을 가진 프레임워크 이해하고 배우는데 객체지향 개념의 문턱이 있지만 이를 넘으면 유용하게 ..
Node 노드 기반의 모델링 과정은 객체지향 프로그래밍과 동일하다. 간단히 말해 노드를 하나의 클래스 정의로 생각하자. 노드는 상황에 따라 다른 의미를 가진다. Design time business object의 개별적인 부분의 데이터와 행위를 모델링하기 위해 사용 ex. Sales Order business object에 대한 ITEM 노드는 데이터, 행위, 다른 sales order와 관계 등 정의 Runtime runtime의 node는 컨테이너로써 internal table을 생각하면 되며 node row라고 불림 Node and Attribute Types 데이터 모델링 관점에서 노드와 노드의 속성은 두 개의 다른 카테고리로 구분된다. Persistent nodes/attributes 시스템 데..
BOPF란? Business object processing frame work, 즉 ABAP OO 기반의 프레임워크로 개발의 속도 향상, 표준화, 모듈화가 가능한 서비스와 기능을 제공한다. 이를 통해 개발자는 인프라 개발보다 로직 구현에 더 집중할 수 있게 된다. BOPF 장점? rapid prototyping reusability less implementation more stable 다양한 비즈니스 어플리케이션 구성요소를 원할하게 통합할 수 있는 프레임워크로 쉽게 구축할 수 있는 장점을 지닌다. 아래 이미지처럼 BOPF는 다양한 구성요소 사이에서의 징검다리 역할을 한다. Business object sales order, purchase order와 같은 하나의 비즈니스 단위를 의미한다. 이는 B..