일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- algorithm
- 재귀
- lcap
- 자바
- 이분탐색
- 그래프
- domain model
- MySQL
- Bruteforce
- 가중치없는그래프
- Recursion
- microflow
- 트리
- Sort
- 자료구조
- 백트래킹
- 알고리즘
- dfs
- Mendix
- SQL
- 스택
- git
- 해시맵
- 매개변수 탐색
- 프로그래머스
- 반효경교수님
- 멘딕스
- 집합
- 정렬
- 완전탐색
- Today
- Total
mondegreen
[Mendix Rapid] Microflow에서 데이터의 범위, 그리고 Retrieve(검색) 본문
멘딕스에서 데이터는 어디에, 어떻게 존재할까
위의 이미지처럼 클라이언트에서 넘어오는 데이터를 일단 애플리케이션의 서버 메모리에 객체로 저장하고 있다가 ㄱ) 사용자가 이를 취소하면 삭제되고 ㄴ) 저장하면 데이터베이스에 새로운 기록으로 저장되며 메모리에 보관된 객체를 삭제한다. 참고.데이터베이스에는 존재하지 않고 메모리에만 존재하는 객체를 임시 객체라고 한다.
사용자가 선택한 StartDate부터 Course의 Duration을 더해 EndDate를 계산하려고 하는데 위와 같이 Duration을 찾을 수 없다는 메세지가 뜬다. 즉, 마이크로플로우의 범위에 없다고 말할 수 있는데 이러한 이유가 무엇일까?
마이크로플로우를 작성하는데 Course는 마이크로플로우 범위에 있지 않기 때문에 참조할 수 없는 것이다. 이를 해결하기 위해 범위로 가져오는 Retrieve(검색)를 활용할 수 있다. 이 기능을 통해 개체 목록에서 특정 개체를 찾아 마이크로플로우에서 찾아 활용할 수 있도록 한다.
검색에는 연관 검색(By Associatoin Retrieve)과 데이터베이스 검색(From Database Retrieve)이 있는데 연관 검색은 메모리(임시 객체)와 데이터베이스의 객체 모두를 조회하고, 데이터베이스 검색은 임시 객체를 제외하고 검색할 수 있다. 따라서 필요한 데이터에 맞는 검색을 실행해야 한다.
따라서 새로이 훈련과정의 EndDate를 계산하기 위해서는 마이크로플로우의 데이터 범위에 Course를 검색해서 포함시켜줘야 한다. 모든 마이크로플로우는 왼쪽에서 오른쪽으로 흐르기 때문에 객체 변경 activity보다 먼저 검색을 실행한다.
그 결과 아래와 같이 Value의 함수를 작성하는 과정에서 엔티티를 올바르게 인식하고 작성된 것을 확인할 수 있다.
'Mendix > Academy 및 Docs' 카테고리의 다른 글
[Mendix Rapid] Save 기능을 확장한 Microflow 사례 (0) | 2024.05.29 |
---|---|
[Mendix Rapid] Entity의 Attribute: Calculated? vs Stored? (0) | 2024.05.29 |
[Mendix Rapid] Microflow의 Action 설정 (0) | 2024.05.29 |
[Mendix Rapid] Microflow 작성 사례 (0) | 2024.05.29 |
[Mendix Rapid] Microflow가 필요한 이유 (0) | 2024.05.29 |