SlideShare a Scribd company logo
2021.09.06
한국오라클
김은희 상무
APEX 입문 워크샵(Beginner Workshop)
- 실습가이드: Part 2
2
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
3
[참고] Expenses 테이블 설명
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
4
[참고] 법인카드 영수증 등록 Form – PK 자동 설정
PK 설정 방법
1. PK 직접 입력 : 직원정보 관리 Form
2. PK 자동 설정 : 법인카드 영수증 등록
Form
(1) 법인카드 영수증 등록 Form에서
Insert문 수행 전에 Trigger 작동
(2) Trigger는 Sequence 객체를
시작시켜 일련 번호를 생성하는
프로세스 수행
(3) 생성된 일련번호가 PK로 자동 입력
** Sequence, Trigger 생성 필요 **
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
5
M03.1-1. Interactive Report with Form 생성과 데이터 소스 연결(1/11)
1
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
6
M03.1-1. Interactive Report with Form 생성과 데이터 소스 연결(2/11)
2
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
7
M03.1-1. Interactive Report with Form 생성과 데이터 소스 연결(3/11)
3
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
8
M03.1-1. Interactive Report with Form 생성과 데이터 소스 연결(4/11)
4
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
9
M03.1-1. Interactive Report with Form 생성과 데이터 소스 연결(5/11)
5
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
10
M03.1-1. Interactive Report with Form 생성과 데이터 소스 연결(6/11)
6
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
11
M03.1-1. Interactive Report with Form 생성과 데이터 소스 연결(7/11)
7
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
12
M03.1-1. Interactive Report with Form 생성과 데이터 소스 연결(8/11)
8
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
13
M03.1-1. Interactive Report with Form 생성과 데이터 소스 연결(9/11)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
14
M03.1-1. Interactive Report with Form 생성과 데이터 소스 연결(10/11)
9
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
15
M03.1-1. Interactive Report with Form 생성과 데이터 소스 연결(11/11)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
16
M03.1-2. PK 자동 설정 : Sequence 생성 (1/5)
1
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
17
M03.1-2. PK 자동 설정 : Sequence 생성 (2/5)
2
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
18
M03.1-2. PK 자동 설정 : Sequence 생성 (3/5)
3
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
19
M03.1-2. PK 자동 설정 : Sequence 생성 (4/5)
4
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
20
M03.1-2. PK 자동 설정 : Sequence 생성 (5/5)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
21
M03.1-2. PK 자동 설정 : Trigger 생성 (1/3)
1
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
22
M03.1-2. PK 자동 설정 : Trigger 생성 (2/3)
트리거 생성
§ APEX Workspace > SQL workshop >
SQL command
§ Expense 테이블의 Insert 문 수행
전에 작동하는 트리거
!"#$%#&'"&"#()$!#&%"*++#"&,-./-01-1234,&
5-678-&
*9:#"%&'9&,-./-01-1,&
;'"&#$!<&"'=&
>#+*9&
*;&?0-@A,-./-01-2BC,&*:&9D))&%<#9&
:#)#!%&,-./-01-21-E,A9#F%G$)&*9%'&
?0-@A,-./-01-2BC,&;"'H&:I:AJD$)K&
#9J&*;K&
#9JK
3
SQL command 입력
2
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
23
M03.1-2. PK 자동 설정 : Trigger 생성 (3/3)
4
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
24
M03.1-2. PK 자동 설정 : 확인 (1/6)
1
2
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
25
M03.1-2. PK 자동 설정 : 확인 (2/6)
3
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
26
M03.1-2. PK 자동 설정 : 확인 (3/6)
4
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
27
M03.1-2. PK 자동 설정 : 확인 (4/6)
5
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
28
M03.1-2. PK 자동 설정 : 확인 (5/6)
Form에 입력하면
Expense_ID (PK)가 자동
생성되고
Form 생성 가능
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
29
M03.1-2. PK 자동 설정 : 확인 (6/6)
Form에 입력하면
Expense_ID (PK)가 자동
생성되고 à Form 생성
à Report 생성 성공!
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
30
M03.1-3. 새로운 APEX 사용자 등록 (1/4)
1
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
31
M03.1-3. 새로운 APEX 사용자 등록 (2/4)
2
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
32
M03.1-3. 새로운 APEX 사용자 등록 (3/4)
ID MAIL PW Type
flower demo@gmail.com Welcome123456! Admin
chuchu demo@gmail.com Welcome123456! Admin
새로운 사용자(admin)
2명을 생성함.
M02. 직원 정보 관리
report에서 ‘ID: chuchu’
로 정보 입력 진행
3
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
33
M03.1-3. 새로운 APEX 사용자 등록 (4/4)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
34
M03.1-4. 대체 문자열 설정 (1/2)
로그인한 사용자가 p32
Form을 create클릭 후
생성할 때,
Employee_ID 칸에
default로 사용자 대체
문자열이 소문자가
들어가도록 설정
lower(:APP_USER)
1
2
modal dialog는 32p :
save à p31 : run 실행!
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
35
M03.1-4. 대체 문자열 설정 (2/2)
3
default로 사용자의
대체 문자열(소문자) 입력됨
lower(:APP_USER)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
36
M03.1-5. 직원 정보 관리 Form 수정 - Hidden
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
37
M03.1-6. LOV 컴포넌트 생성, List of Values (1/18)
1
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
38
M03.1-6. LOV 컴포넌트 생성, List of Values (2/18)
2
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
39
M03.1-6. LOV 컴포넌트 생성, List of Values (3/18)
3
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
40
M03.1-6. LOV 컴포넌트 생성, List of Values (4/18)
§ EMPLOYEES
§ Expense Types
§ Card Types
§ Receipt Status
!"#"$%&"'(#)*""+,- ./&&"'(+01'" 22&3&43&22&%5%"1'+01'"223/&322%5%"1'+67##+01'" 22383&-&
6.)'&"'(#)*""!&"/&%"1'!&%&
9:"."&"5%"1'+,- ;&%5%"1'+,-
!"#"$%&%*("+,- 1!&./&%*("+01'" 1!&-&6.)'&<=><?@<+AB><@&
).-".&C*&D
Display Return
개인 카드 Pc
법인 카드 Cc
Display Return
분실 M
보관 K
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
41
M03.1-6. LOV 컴포넌트 생성, List of Values (5/18)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
42
M03.1-6. LOV 컴포넌트 생성, List of Values (6/18)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
43
M03.1-6. LOV 컴포넌트 생성, List of Values (7/18)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
44
M03.1-6. LOV 컴포넌트 생성, List of Values (8/18)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
45
M03.1-6. LOV 컴포넌트 생성, List of Values (9/18)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
46
M03.1-6. LOV 컴포넌트 생성, List of Values (10/18)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
47
M03.1-6. LOV 컴포넌트 생성, List of Values (11/18)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
48
M03.1-6. LOV 컴포넌트 생성, List of Values (12/18)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
49
M03.1-6. LOV 컴포넌트 생성, List of Values (13/18)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
50
M03.1-6. LOV 컴포넌트 생성, List of Values (14/18)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
51
M03.1-6. LOV 컴포넌트 생성, List of Values (15/18)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
52
M03.1-6. LOV 컴포넌트 생성, List of Values (16/18)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
53
M03.1-6. LOV 컴포넌트 생성, List of Values (17/18)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
54
M03.1-6. LOV 컴포넌트 생성, List of Values (18/18)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
55
M03.1-7. Expense 영수증 관리 Form 수정 – LOV 적용 (1/6)
Page Item Identification Type List of Values
P32_Employee_ID Select List Shared component / Employees
P32_Type_ID Select List Shared component / Expense Types
P32_Card_Type Radio Group Shared component / Card types
P32_Receipt_status Radio Group Shared component / Receipt status
§ Page Item : List of Values 설정
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
56
M03.1-7. Expense 영수증 관리 Form 수정 – LOV 적용 (2/6)
1
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
57
M03.1-7. Expense 영수증 관리 Form 수정 – LOV 적용 (3/6)
2
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
58
M03.1-7. Expense 영수증 관리 Form 수정 – LOV 적용 (4/6)
3
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
59
M03.1-7. Expense 영수증 관리 Form 수정 – LOV 적용 (5/6)
4
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
60
중간 결과물 – LOV 적용 (6/6)
§ Employee_ID § Type_ID § Card_Type, Receipt_status
Select list
Radio group
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
61
M03.1-7. Expense 영수증 관리 Form 수정 - 한글화
Page Item Label
P32_Employee_ID 사용자
P32_Type_ID 비용 유형
P32_Payment_Amount 결재금액
P32_Title 제목
P32_Description 설명
P32_Receipt_status 영수증 상태
P32_card_type 카드 유형
P32_receipt_pic 영수증 등록
P32_receipt_pic2 영수증 사진
P32_use_date 사용일
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
62
M03.1-7. Expense 영수증 관리 Form 수정 – Display Image
Receipt_PIC을
duplicate함
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
63
M03.1-7. Expense 영수증 관리 Form 수정 – Text field
Text Areaà Text Field로 변경
Text Areaà Rich text editor 로
변경(HTML 입력 가능)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
64
중간 결과물
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
65
M03.1-7. Expense 영수증 관리 Form 수정 – Layout 변경(1/3)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
66
M03.1-7. Expense 영수증 관리 Form 수정 – Layout 변경(2/3)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
67
M03.1-7. Expense 영수증 관리 Form 수정 – Layout 변경(3/3)
Column 12칸 중에서 9칸 부터 시작해서
4칸(span)을 차지하도록 변경
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
68
M03.1-7. Expense 영수증 관리 Form 수정 – Read only
사용자 : employee_ID (dev01) 자동입력 된 후
변경되지 않도록 Read only= always 설정
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
69
로그인 - flower
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
70
M03.1-7. Expense 영수증 관리 Form 수정 – CSS 등록
Form 입력하면 사진
크기가 너무 큼
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
71
M03.1-7. Expense 영수증 관리 Form 수정 – CSS 등록
img {
width: 200px;
height: 300px;
}
1
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
72
M03.1-7. Expense 영수증 관리 Form 수정 – Format mask
1
73
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
74
M03.2-1. Expense 영수증 관리 Form 입력 (1/5)
Flower 로그인 후
Form 5개 입력
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
75
M03.2-1. Expense 영수증 관리 Form 입력 (2/5)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
76
M03.2-1. Expense 영수증 관리 Form 입력 (3/5)
chuchu 로그인 후
Form 5개 입력
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
77
M03.2-1. Expense 영수증 관리 Form 입력 (4/5)
chuchu 로그인 후
Form 5개 입력
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
78
M03.2-1. Expense 영수증 관리 Form 입력 (5/5)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
79
M03.2-2. Expense Report 수정 -로그인 User만 조회 가능 (1/3)
SQL 쿼리 수정:
조회조건 추가
1
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
80
M03.2-2. Expense Report 수정 -로그인 User만 조회 가능 (2/3)
리포트 조회 조건
§ 현재 로그인한 사용자만 자신의
영수증 정보를 볼 수 있도록
=<#"#&#H()'I##2*J L&)'=#"M?N//2O1-8P
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
81
M03.2-2. Expense Report 수정 -로그인 User만 조회 가능 (3/3)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
82
M03.2-3. Expense Report 수정 - 불필요 column 삭제
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
83
M03.2-3. Expense Report 수정 - 불필요 column 삭제
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
84
M03.2-3. Expense Report 수정 - 컬럼 설정
Column 이름 변경 헤더 이름 변경 설정 변경 설정 기능 위치
P31_Employee_ID • 사용자 • LOV Look up
• ID Type : Plain text based on LOV
• List of Values : Employee
P31_Type_ID • 비용 유형 • LOV Look up
• ID Type : Plain text based on LOV
• List of Values : Expense type
P31_Payment_amount • 결재 금액 • 포맷 지정
P31_Title • 제목
P31_Description • 설명 • Html 출력되지 않도록 • ID type : Percent Graph
P31_Receipt_status • 영수증 상태 • LOV Look up
• ID Type : Plain text based on LOV
• List of Values : Receipt status
P31_Card_type • 카드 유형 • LOV Look up
• ID Type : Plain text based on LOV
• List of Values : card type
P31_receipt_pic • 영수증 사진 • Hidden 처리
P31_use_date • 사용일 • 포맷 설정 YYYY-MM-DD
P31_cre_date • Hidden 처리
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
85
M03.2-3. Expense Report 수정 - 컬럼 한글화
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
86
M03.2-3. Expense Report 수정 - 컬럼 포맷
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
87
M03.2-3. Expense Report 수정 - LOV Value 대체(look up) (1/4)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
88
M03.2-3. Expense Report 수정 - LOV Value 대체(look up) (2/4)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
89
M03.2-3. Expense Report 수정 - LOV Value 대체(look up) (3/4)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
90
M03.2-3. Expense Report 수정 - LOV Value 대체(look up) (4/4)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
91
M03.2-3. Expense Report 수정 – HTML 지원 설정
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
92
중간 결과물
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
93
M03.2-3. Expense Report 수정 – Hero (1/5)
1
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
94
M03.2-3. Expense Report 수정 – Hero (2/5)
2
3
위치 옮김
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
95
M03.2-3. Expense Report 수정 – Hero (3/5)
4
5
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
96
M03.2-3. Expense Report 수정 – Hero (4/5)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
97
M03.2-3. Expense Report 수정 – Hero (5/5)
Source > Text 에서
<p> </p> 뒤에
(&APP_USER.) 을 추가하면 (Chuchu)
출력됨
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
98
M03.2-4. Expense Report - 검색 기간 Default 설정 (1/13)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
99
M03.2-4. Expense Report - 검색 기간 Default 설정 (2/13)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
100
M03.2-4. Expense Report - 검색 기간 Default 설정 (3/13)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
101
M03.2-4. Expense Report - 검색 기간 Default 설정 (4/13)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
102
M03.2-4. Expense Report - 검색 기간 Default 설정 (5/13)
Search에서 우클릭 후
Page item 2 개,
Button 1 개
생성함
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
103
M03.2-4. Expense Report - 검색 기간 Default 설정 (6/13)
1
2
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
104
M03.2-4. Expense Report - 검색 기간 Default 설정 (7/13)
3
4
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
105
M03.2-4. Expense Report - 검색 기간 Default 설정 (8/13)
5
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
106
M03.2-4. Expense Report - 검색 기간 Default 설정 (9/13)
6
7
SQL쿼리 입력 - 뒷장 참고
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
107
M03.2-4. Expense Report - 검색 기간 Default 설정 (10/13)
Default 설정
§ P31_Search_From
§ 영수증 날짜 중에서 가장 과거의
날짜가 기본으로 보이도록 설정
!"#"$%&'()*+!",-.%"/&012'&"34")!"!&
56"1"&"'4#27"",(-&8&#25"1*9:;;,<=>?/
Default 설정
§ P31_Search_To
§ 영수증 날짜 중에서 가장 최근
날짜가 기본으로 보이도록 설정
select max(use_date) from expenses
where employee_id = lower(:APP_USER)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
108
M03.2-4. Expense Report - 검색 기간 Default 설정 (11/13)
8
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
109
M03.2-4. Expense Report - 검색 기간 Default 설정 (12/13)
9
10
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
110
M03.2-4. Expense Report - 검색 기간 Default 설정 (13/13)
11
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
111
M03.2-5. Expense Report 수정 – 검색 한글화, 날짜 포맷
12
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
112
M03.2-5. Expense Report 수정 – 검색 한글화, 날짜 포맷
13
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
113
중간 결과 물
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
114
M03.2-6. Expense Report 검색 (1/3)
14
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
115
M03.2-6. Expense Report 검색 (2/3)
검색 where 절 설정
§ Default 날짜 중에서 검색 하도록
56"1"&>@;ABC>>,DE&8&#25"1*9:;;,<=>?/&
.)-&<=>,E:F>&G8&FB,E:F>*9;HI,=>:?JK,L?B@M&NCCCCO@@OEEN/&
.)-&<=>,E:F>&P8&FB,E:F>*9;HI,=>:?JK,FBM&NCCCCO@@OEEN/
Where 교체 !!
(추가 아님)
15
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
116
M03.2-6. Expense Report 검색 (3/3)
16
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
117
M03.2-7. Expense Report - Dynamic Search (1/11)
1
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
118
M03.2-7. Expense Report - Dynamic Search (2/11)
1
2
조건 확인
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
119
M03.2-7. Expense Report - Dynamic Search (3/11)
3
4
5
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
120
M03.2-7. Expense Report - Dynamic Search (4/11)
6
7
조건 확인
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
121
M03.2-7. Expense Report - Dynamic Search (5/11)
8
9
10
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
122
M03.2-7. Expense Report - Dynamic Search (6/11)
11
12
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
123
M03.2-7. Expense Report - Dynamic Search (7/11)
각각 클릭
13
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
124
M03.2-7. Expense Report - Dynamic Search (8/11)
14
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
125
M03.2-7. Expense Report - Dynamic Search (9/11)
15
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
126
M03.2-7. Expense Report - Dynamic Search (10/11)
16
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
127
M03.2-7. Expense Report - Dynamic Search (11/11)
17
메시지가 과도할 경우
Advanced > ignore !
128
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
129
[참고] Expense_Reports 테이블 설명
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
130
M03.3-1. Master Detail 생성과 데이터 소스 연결(1/6)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
131
M03.3-1. Master Detail 생성과 데이터 소스 연결(2/6)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
132
M03.3-1. Master Detail 생성과 데이터 소스 연결(3/6)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
133
M03.3-1. Master Detail 생성과 데이터 소스 연결(4/6)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
134
M03.3-1. Master Detail 생성과 데이터 소스 연결(5/6)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
135
M03.3-1. Master Detail 생성과 데이터 소스 연결(6/6)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
136
Master Detail 페이지 생성
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
137
M03.3-2. PK 자동 설정 : Sequence 생성 (1/5)
1
2
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
138
M03.3-2. PK 자동 설정 : Sequence 생성 (2/5)
3
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
139
M03.3-2. PK 자동 설정 : Sequence 생성 (3/5)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
140
M03.3-2. PK 자동 설정 : Sequence 생성 (4/5)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
141
M03.3-2. PK 자동 설정 : Sequence 생성 (5/5)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
142
M03.3-3. PK 자동 설정 : Process 등록 (1/8)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
143
M03.3-3. PK 자동 설정 : Process 등록 (2/8)
PK가 없으므로 Form 생성되지
않음
Sequence에서 나오는 값을
PK로 insert하는 프로세스
필요
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
144
M03.3-3. PK 자동 설정 : Process 등록 (3/8)
1
2
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
145
M03.3-3. PK 자동 설정 : Process 등록 (4/8)
3
위치를 맨 처음으로
변경
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
146
M03.3-3. PK 자동 설정 : Process 등록 (5/8)
4
Code 입력
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
147
M03.3-3. PK 자동 설정 : Process 등록 (6/8)
Process 등록: set pk with seq
declare
V_REPORT_ID number(9);
begin
select EXPENSE_REPORT_SEQ.nextval into
V_REPORT_ID from dual;
:P42_EXPENSE_REPORT_ID := V_REPORT_ID;
end;
5
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
148
M03.3-3. PK 자동 설정 : Process 등록 (7/8)
PK가 있으므로 Form 생성
가능, Master detail 생성 가능
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
149
M03.3-3. PK 자동 설정 : Process 등록 (8/8)
Form에서 Create 버튼을
클릭할 경우에만 PK 설정되는
프로세스가 실행하도록 설정
6
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
150
M03.3-4. Form 수정 – Hidden
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
151
M03.3-4. Form 수정 – LOV Value 대체 (look up)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
152
M03.3-4. Form 수정 – 날짜 자동 설정
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
153
중간 결과물
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
154
M03.3-4. Form 수정 – 한글화
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
155
M03.3-4. Form 수정 – 한글화
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
156
M03.3-4. Form 수정 – 한글화
157
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
158
[참고] Expense_Reports, Expense_Report_Items 테이블 설명
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
159
작업 대상 – P43. Expense Report Items
Expense ID 부분에
대한 설정
P43
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
160
M03.4-1. 리포트 아이템 수정 – Hidden
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
161
M03.4-1. 리포트 아이템 수정 – LOV, SQL 쿼리 적용 (1/4)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
162
M03.4-1. 리포트 아이템 수정 – LOV, SQL 쿼리 적용 (2/4)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
163
M03.4-1. 리포트 아이템 수정 – LOV, SQL 쿼리 적용 (3/4)
SQL Query로 List of value 만들기
select title||','||payment_amount||'('||use_date||')', expense_id
from expenses
where employee_id=lower(:APP_USER) and
expense_id not in (
select i.expense_id
from expense_reports r, expense_report_items i
where r.EXPENSE_REPORT_ID = i.report_id and r.employee_id =
lower(:APP_USER) )
order by use_date
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
164
M03.4-1. 리포트 아이템 수정 – LOV, SQL 쿼리 적용 (4/4)
(p41)
+ 기호 수정
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
165
M03.4-1. 리포트 아이템 수정 – 버튼 수정 (1/3)
1
2
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
166
M03.4-1. 리포트 아이템 수정 – 버튼 수정 (2/3)
3
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
167
M03.4-1. 리포트 아이템 수정 – 버튼 수정 (3/3)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
168
M03.4-1. 리포트 아이템 수정 – 한글화
3
169
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
170
[참고] Expense_Report_Items의 View 설명
기존 Table 대신 View를 참조
à View를 source로 등록 필요
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
171
[참고] Expense_Report_Items의 View 설명
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
172
[참고] Expense_report_items_V
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
173
[참고] Expense_report_items_V
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
174
M03.5-1. 영수증 목록 개선 – Source : View로 변경 (1/3)
1
2
Table à View로
바꿔도 where절
그대로
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
175
M03.5-1. 영수증 목록 개선 – Source : View로 변경 (2/3)
3
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
176
M03.5-1. 영수증 목록 개선 – Source : View로 변경 (3/3)
REPORT_ID
= :P41_EXPENSE_REPORT_ID
expense_id
4
5
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
177
M03.5-2. 영수증 Reports items 추가
영수증 추가 누르고
4개 create 합니다
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
178
M03.5-2. 영수증 Reports items 추가
현재 1개씩 삭제 대신
일괄 삭제 버튼으로
수정
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
179
M03.5-3. 영수증 Reports items – Select All UI 생성 (1/10)
1
2
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
180
M03.5-3. 영수증 Reports items – Select All UI 생성 (2/10)
SQL Query 변경
select
REPORT_ID,
EXPENSE_ID,
EMPLOYEE_ID,
TYPE_ID,
PAYMENT_AMOUNT,
TITLE,
DESCRIPTION,
USE_DATE,
CRE_DATE
from EXPENSE_REPORT_ITEMS_V
where REPORT_ID = :P41_EXPENSE_REPORT_ID
order by expense_id
3
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
181
M03.5-3. 영수증 Reports items – Select All UI 생성 (3/10)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
182
M03.5-3. 영수증 Reports items – Select All UI 생성 (4/10)
SQL Query 컬럼 추가
apex_item.checkbox2(1, EXPENSE_ID) selected,
‘Expense_ID의 컬럼을 가져와서
check box HTML로 변환하라’는 함수
4
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
183
M03.5-3. 영수증 Reports items – Select All UI 생성 (5/10)
새로운 checkbox HTML
태그가 등록됨
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
184
M03.5-3. 영수증 Reports items – Select All UI 생성 (6/10)
맨 위로 위치 옮김
1
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
185
M03.5-3. 영수증 Reports items – Select All UI 생성 (7/10)
2
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
186
M03.5-3. 영수증 Reports items – Select All UI 생성 (8/10)
새로운 HTML 태그가
UI로 변경, 정렬 필요
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
187
M03.5-3. 영수증 Reports items – Select All UI 생성 (9/10)
3
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
188
M03.5-3. 영수증 Reports items – Select All UI 생성 (10/10)
Heading
<input type="checkbox" id="selectunselectall">
Selected 칼럼의 헤딩에
checkbox를 만들어라!
ID는
selectunselectall
1
2
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
189
중간 결과물
Selected 칼럼의
헤딩에 checkbox
생성됨!
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
190
[참고] 일괄선택 및 일괄해지 기능
상태가 변경되면,
아래 checkbox가 모두 선택 또는
해지되도록 설정
Change event 발생 à
added expenses위치에서 Javascript 실행
(added expenses 생성필요)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
191
M03.5-4. 영수증 Reports items – 일괄선택해지 기능 (1/6)
Advanced > Static ID
: added_expenses 설정
added expenses에서
이벤트/자바스크립트
작동되도록
1
2
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
192
M03.5-4. 영수증 Reports items – 일괄선택해지 기능 (2/6)
Change 이벤트를 우클릭
dynamic action으로 등록
3
4
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
193
M03.5-4. 영수증 Reports items – 일괄선택해지 기능 (3/6)
change selectunselectall
JQuery Selector
#selectunselectall
5
6
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
194
M03.5-4. 영수증 Reports items – 일괄선택해지 기능 (4/6)
Dynamic
#added_expenses
7
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
195
M03.5-4. 영수증 Reports items – 일괄선택해지 기능 (5/6)
Execute Javascript Code
8
9
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
196
M03.5-4. 영수증 Reports items – 일괄선택해지 기능 (6/6)
Execute JavaScript
if ($('#added_expenses #selectunselectall' ).is(':checked') ) {
$('#added_expenses
input[type=checkbox][name=f01]').prop('checked',true);
} else {
$('#added_expenses
input[type=checkbox][name=f01]').prop('checked',false);
}
10
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
197
M03.5-5. 영수증 Reports items – 삭제 버튼 (1/8)
1
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
198
M03.5-5. 영수증 Reports items – 삭제 버튼 (2/8)
여기로 이동
2
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
199
M03.5-5. 영수증 Reports items – 삭제 버튼 (3/8)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
200
M03.5-5. 영수증 Reports items – 삭제 버튼 (4/8)
3
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
201
M03.5-5. 영수증 Reports items – 삭제 버튼 (5/8)
4
5
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
202
M03.5-5. 영수증 Reports items – 삭제 버튼 (6/8)
6
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
203
M03.5-5. 영수증 Reports items – 삭제 버튼 (7/8)
영수증 일괄 삭제
FOR i in 1..APEX_APPLICATION.G_F01.COUNT LOOP
delete from EXPENSE_REPORT_ITEMS
where report_id = :P41_EXPENSE_REPORT_ID and
expense_id = APEX_APPLICATION.G_F01(i);
END LOOP;
7
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
204
M03.5-5. 영수증 Reports items – 삭제 버튼 (8/8)
8
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
205
중간 결과물
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
206
M03.5-6. 영수증 Reports items – LOV 참조키 치환 (1/2)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
207
M03.5-6. 영수증 Reports items – LOV 참조키 치환 (2/2)
LOV 참조 키 치환
select title||'('||payment_amount||')', expense_id from expenses
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
208
M03.5-6. 영수증 Reports items – LOV Value 대체 (look up)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
209
M03.5-6. 영수증 Reports items – LOV Value 대체 (look up)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
210
M03.5-6. 영수증 Reports items – 금액 포맷
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
211
M03.5-6. 영수증 Reports items – HTML 지원 설정
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
212
M03.5-6. 영수증 Reports items – 한글화
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
213
M03.5-6. 영수증 Reports items – 한글화
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
214
M03.5-6. 영수증 Reports items – 한글화
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
215
M03.5-6. 영수증 Reports items – 한글화
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
216
M03.5-6. 영수증 Reports items – 한글화
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
217
M03.5-6. 영수증 Reports items – 한글화
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
218
M03.5-6. 영수증 Reports items – 한글화
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
219
중간 결과물
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
220
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
221
M03.6-1. Master 업데이트
이 부분이 Master table 보이는 곳
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
222
이 부분이 Master
이 부분이 Master table보이는 곳
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
223
M03.6-1. Master 업데이트
좌 4개 컬럼은
서버 side 조건이 걸려있으므로
data=null일 경우에는 데이터를
볼 수 없었음
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
224
M03.6-1. Master 업데이트 – 한글화
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
225
M03.6-1. Master 업데이트 – 한글화
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
226
M03.6-1. Master 업데이트 – 한글화
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
227
M03.6-1. Master 업데이트 – 한글화
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
228
M03.6-2. Master 업데이트 – Stored Procedure 생성 (1/4)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
229
M03.6-2. Master 업데이트 – Stored Procedure 생성 (2/4)
create or replace PROCEDURE update_expense_report( p_report_id IN VARCHAR2 )
IS
v_cc_num NUMBER(3);
v_cc_amount NUMBER(9);
v_pc_num NUMBER(3);
v_pc_amount NUMBER(9);
BEGIN
select count(e.expense_id), nvl(sum(e.PAYMENT_AMOUNT),0)
into v_cc_num, v_cc_amount
from expenses e, expense_report_items i
where e.EXPENSE_ID = i.expense_id
and i.report_id = p_report_id
and card_type = 'cc';
select count(e.expense_id), nvl(sum(e.PAYMENT_AMOUNT),0)
into v_pc_num, v_pc_amount
from expenses e, expense_report_items i
where e.EXPENSE_ID = i.expense_id
and i.report_id = p_report_id
and card_type = 'pc';
UPDATE EXPENSE_REPORTS
SET
COMPANY_CARD_RECEIPT_NUM = v_cc_num,
PRIVATE_CARD_RECEIEPT_NUM = v_pc_num,
COMPANY_CARD_AMOUNT = v_cc_amount,
PRIVATE_CARD_AMOUNT = v_pc_amount
WHERE EXPENSE_REPORT_ID = p_report_id;
END;
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
230
M03.6-2. Master 업데이트 – Stored Procedure 생성 (3/4)
Stored procedure 복사&붙이기
영수증이 등록(p43), 삭제(p41)될 때 그 정보가
master (report)에 업데이트 되도록!
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
231
M03.6-2. Master 업데이트 – Stored Procedure 생성 (4/4)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
232
M03.6-3. Master 업데이트 – Process 추가 (1/8)
1
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
233
M03.6-3. Master 업데이트 – Process 추가 (2/8)
10번 확인
2
3
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
234
M03.6-3. Master 업데이트 – Process 추가 (3/8)
4
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
235
M03.6-3. Master 업데이트 – Process 추가 (4/8)
P41 – Process 추가
§ Name : update report
§ When : delete
begin
update_expense_report( p_report_id => :P41_EXPENSE_REPORT_ID);
end;
5
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
236
M03.6-3. Master 업데이트 – Process 추가 (5/8)
6
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
237
M03.6-3. Master 업데이트 – Process 추가 (6/8)
2개 프로세스 사이로 위치 변경
7
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
238
M03.6-3. Master 업데이트 – Process 추가 (7/8)
8
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
239
M03.6-3. Master 업데이트 – Process 추가 (8/8)
P43 – Process 추가
§ Name : update report
begin
update_expense_report( p_report_id => :P43_REPORT_ID);
end;
9
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
240
중간 결과물
1개 Delete à 아래 1개 record
삭제
4개 record 생성되어 보임
1
2
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
241
중간 결과물
1개 추가 à 아래 1개 record
추가됨
그러나, 위는 변화하지 않음
(dynamic action 수정 필요!)
3
4
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
242
M03.6-4. Master 업데이트 – Dynamic Action (1/5)
순서 변경
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
243
M03.6-4. Master 업데이트 – Dynamic Action (2/5)
1
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
244
M03.6-4. Master 업데이트 – Dynamic Action (3/5)
2
3
Expense Reports
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
245
M03.6-4. Master 업데이트 – Dynamic Action (4/5)
4
True 액션 생성
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
246
M03.6-4. Master 업데이트 – Dynamic Action (5/5)
5
6
Expense Report Items
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
247
결과물
1개 추가 à 아래 1개 record
추가됨
5개로 변경됨!
(dynamic action 실행)
1
2
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
248
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
249
M04.1-1. Login 페이지 변경
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
250
M04.1-1. Login 페이지 변경
기본 로그인 페이지
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
251
M04.1-1. Login 페이지 변경 – 이미지 다운 로드
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
252
M04.1-2. Login 페이지 변경 – Static Application Files (1/5)
1
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
253
M04.1-2. Login 페이지 변경 – Static Application Files (2/5)
2
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
254
M04.1-2. Login 페이지 변경 – Static Application Files (3/5)
3
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
255
M04.1-2. Login 페이지 변경 – Static Application Files (4/5)
4
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
256
M04.1-2. Login 페이지 변경 – Static Application Files (5/5)
5
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
257
M04.1-3. Login 페이지 변경 – 페이지 레이아웃 (1/4)
1
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
258
M04.1-3. Login 페이지 변경 – 페이지 레이아웃 (2/4)
2
3
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
259
M04.1-3. Login 페이지 변경 – 페이지 레이아웃 (3/4)
4
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
260
M04.1-3. Login 페이지 변경 – 페이지 레이아웃 (4/4)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
261
M04.1-4. Login 페이지 변경 – CSS 변경 (1/2)
5
6
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
262
M04.1-4. Login 페이지 변경 – CSS 변경 (2/2)
bg.png로 변경
CSS Inline
body{
background-image: url('#APP_IMAGES#base.jpg');
background-position: center;
background-repeat: no-repeat;
background-size: cover;
}
Span.t-Login-logo{
background-image : url('#APP_IMAGES#oracle-apex.png');
background-Size :cover;
width :150px;
height :120px;
}
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
263
결과물
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
264
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
265
M04.2-1. APEX 커스텀 인증 – 테이블 패스워드 설정 (1/5)
1
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
266
M04.2-1. APEX 커스텀 인증 – 테이블 패스워드 설정 (2/5)
Employee_ID, EMP_PW로 인증하는
방식으로 만듬
2
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
267
M04.2-1. APEX 커스텀 인증 – 테이블 패스워드 설정 (3/5)
3
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
268
M04.2-1. APEX 커스텀 인증 – 테이블 패스워드 설정 (4/5)
EMP_PW에 WELCOME123456! 로
설정
update employees set EMP_PW = 'WELCOME123456!';
4
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
269
M04.2-1. APEX 커스텀 인증 – 테이블 패스워드 설정 (5/5)
EMP_PW에 WELCOME123456! 로
설정 확인!
5
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
270
M04.2-2. APEX 커스텀 인증 – 오라클 Function 생성 (1/3)
Table로 인증하는 방식을 만들기 위해
오라클 Function 생성
Table에 employee_Id, EMP_PW 있는지
확인 후 있으면 success (인증성공)
1
2
M04.2-2. APEX 커스텀 인증 – 오라클 Function 생성 (2/3)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
271
오라클 Function – APEX 인증 : SQL Workshop > SQL Commands
create or replace function authenticate_user (
p_username in varchar2,
p_password in varchar2
) return boolean
as
v_pw_check varchar2(1);
begin
APEX_UTIL.SET_SESSION_STATE('LOGIN_MESSAGE', '시작');
select 'x'
into v_pw_check
from employees
where upper(employee_id) = upper(p_username) and upper(emp_pw) = upper(p_password);
apex_util.set_authentication_result(0);
APEX_UTIL.SET_SESSION_STATE('LOGIN_MESSAGE', 'Success');
return true;
exception when NO_DATA_FOUND then
apex_util.set_authentication_result(4);
APEX_UTIL.SET_SESSION_STATE('LOGIN_MESSAGE', '오류!! 아이디와 비밀번호가 불일치합니다.');
return false;
end authenticate_user;
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
272
M04.2-2. APEX 커스텀 인증 – 오라클 Function 생성 (3/3)
Login message라는 변수 생성
필요!
3
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
273
1
M04.2-3. APEX 커스텀 인증 – Application item 등록 (1/5)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
274
M04.2-3. APEX 커스텀 인증 – Application item 등록 (2/5)
2
세션 객체에 변수를 등록하는
과정
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
275
M04.2-3. APEX 커스텀 인증 – Application item 등록 (3/5)
3
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
276
M04.2-3. APEX 커스텀 인증 – Application item 등록 (4/5)
4
5
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
277
M04.2-3. APEX 커스텀 인증 – Application item 등록 (5/5)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
278
M04.2-4. APEX 커스텀 인증 – Authentication Scheme 생성 (1/6)
1
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
279
M04.2-4. APEX 커스텀 인증 – Authentication Scheme 생성 (2/6)
2
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
280
M04.2-4. APEX 커스텀 인증 – Authentication Scheme 생성 (3/6)
3
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
281
M04.2-4. APEX 커스텀 인증 – Authentication Scheme 생성 (4/6)
4
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
282
M04.2-4. APEX 커스텀 인증 – Authentication Scheme 생성 (5/6)
5
6
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
283
M04.2-4. APEX 커스텀 인증 – Authentication Scheme 생성 (6/6)
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
284
M04.2-5. APEX 커스텀 인증 – Login 확인 (1/3)
1
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
285
M04.2-5. APEX 커스텀 인증 – Login 확인 (2/3)
2
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
286
M04.2-5. APEX 커스텀 인증 – Login 확인 (3/3)
Apex_authentication.login이라는
stored procedure 호출하는데
Function을 생성했으므로
authenticate_user 라는
function에서 인증정보를 가져와서
인증
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
287
결과물
Flower, WELCOME123456!
입력하면 커스텀 인증으로 로그인 됨
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
288
오타 수정
http://taewan.kim/apex-
workshop/01.beginner_ws/30.expense/20-
expense_mngt_list/
P31
http://taewan.kim/apex-
workshop/01.beginner_ws/20.
m01/10-app-tabes/
레지던
트
Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted
289
오타 수정
http://taewan.kim/apex-
workshop/01.beginner_ws/30.expense/20-
expense_mngt_list/
오타 수정
# 추가
http://taewan.kim/apex-
workshop/01.beginner_ws/30.expense/50-
expense_report_receipts_list/
http://taewan.kim/apex-
workshop/01.beginner_ws/40.authentification/20-
authentication/
패스워드

More Related Content

PDF
Oracle APEX 기초 워크샵 - 실습 가이드 문서: Part 1 (1/2)
PDF
Oracle GoldenGate 19c を使用した 簡単データベース移行ガイド_v1.0
PPTX
パスキーでリードする: NGINXとKeycloakによる効率的な認証・認可
PPTX
【閲覧用】新人教育向け_バージョン管理システム.pptx
PDF
“SharePoint Online Management Shell” をプログラムから実行する
PDF
Lessons learned from running Pega in Kubernetes
PDF
A Practical Introduction to Handling Log Data in ClickHouse, by Robert Hodges...
PDF
PostgreSQL13でのpg_basebackupの改善について(第13回PostgreSQLアンカンファレンス@オンライン)
Oracle APEX 기초 워크샵 - 실습 가이드 문서: Part 1 (1/2)
Oracle GoldenGate 19c を使用した 簡単データベース移行ガイド_v1.0
パスキーでリードする: NGINXとKeycloakによる効率的な認証・認可
【閲覧用】新人教育向け_バージョン管理システム.pptx
“SharePoint Online Management Shell” をプログラムから実行する
Lessons learned from running Pega in Kubernetes
A Practical Introduction to Handling Log Data in ClickHouse, by Robert Hodges...
PostgreSQL13でのpg_basebackupの改善について(第13回PostgreSQLアンカンファレンス@オンライン)

What's hot (20)

PDF
Db2 for z/OS and FlashCopy - Practical use cases (June 2019 Edition)
PDF
オンプレミスからクラウドへ:Oracle Databaseの移行ベストプラクティスを解説 (Oracle Cloudウェビナーシリーズ: 2021年2月18日)
PDF
GoldenGateテクニカルセミナー3「Oracle GoldenGate Technical Deep Dive」(2016/5/11)
PDF
V sphere 7 update 3 へのアップグレードについて
PDF
20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理
PPTX
iostat await svctm の 見かた、考え方
PPTX
High Performance, High Reliability Data Loading on ClickHouse
PPTX
Maria db 이중화구성_고민하기
PDF
あなたのクラウドは大丈夫?NRI実務者が教えるセキュリティの傾向と対策 (Oracle Cloudウェビナーシリーズ: 2021年11月24日)
PDF
Introduction to Greenplum
PDF
Oracle GoldenGate Cloud Serviceユーザーズガイド
PPTX
oracle ebs free web service integration tools
PPT
08 Dynamic SQL and Metadata
PPTX
PowerShellでWebブラウザ(Selenium Webdriver)を動かした話
PDF
Data-Driven Rules in HFM
PDF
Developer’s guide to contributing code to Kafka with Mickael Maison and Tom B...
PDF
20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL
PDF
MySQL Database Architectures - MySQL InnoDB ClusterSet 2021-11
PDF
Oracle GoldenGate 概要 2020年11月版
PPTX
Oracle Database Appliance, ODA, X7-2 portfolio.
Db2 for z/OS and FlashCopy - Practical use cases (June 2019 Edition)
オンプレミスからクラウドへ:Oracle Databaseの移行ベストプラクティスを解説 (Oracle Cloudウェビナーシリーズ: 2021年2月18日)
GoldenGateテクニカルセミナー3「Oracle GoldenGate Technical Deep Dive」(2016/5/11)
V sphere 7 update 3 へのアップグレードについて
20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理
iostat await svctm の 見かた、考え方
High Performance, High Reliability Data Loading on ClickHouse
Maria db 이중화구성_고민하기
あなたのクラウドは大丈夫?NRI実務者が教えるセキュリティの傾向と対策 (Oracle Cloudウェビナーシリーズ: 2021年11月24日)
Introduction to Greenplum
Oracle GoldenGate Cloud Serviceユーザーズガイド
oracle ebs free web service integration tools
08 Dynamic SQL and Metadata
PowerShellでWebブラウザ(Selenium Webdriver)を動かした話
Data-Driven Rules in HFM
Developer’s guide to contributing code to Kafka with Mickael Maison and Tom B...
20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL
MySQL Database Architectures - MySQL InnoDB ClusterSet 2021-11
Oracle GoldenGate 概要 2020年11月版
Oracle Database Appliance, ODA, X7-2 portfolio.
Ad

More from Taewan Kim (9)

PPTX
[OCI 새소식] OCI Burstable Instance
PDF
오라클 클라우드 OCI 기초 개념 & 용어 정리
PDF
20191119 Cloud Native Java : GraalVM
PDF
13회 Oracle Developer Meetup 발표 자료: Oracle Cloud Data Interface(2019.07.20)
PDF
11회 Oracle Developer Meetup 발표 자료: Oracle NoSQL (2019.05.18) oracle-nosql pu...
PDF
Cloud Native Java GraalVM 이상과 현실
PDF
2018 Oracle Impact 발표자료: Oracle Enterprise AI
PDF
Oracle Code in Seoul: Provisioning of Cloud Resource
PDF
Oracle Container Cloud Service & Docker Overview
[OCI 새소식] OCI Burstable Instance
오라클 클라우드 OCI 기초 개념 & 용어 정리
20191119 Cloud Native Java : GraalVM
13회 Oracle Developer Meetup 발표 자료: Oracle Cloud Data Interface(2019.07.20)
11회 Oracle Developer Meetup 발표 자료: Oracle NoSQL (2019.05.18) oracle-nosql pu...
Cloud Native Java GraalVM 이상과 현실
2018 Oracle Impact 발표자료: Oracle Enterprise AI
Oracle Code in Seoul: Provisioning of Cloud Resource
Oracle Container Cloud Service & Docker Overview
Ad

Recently uploaded (20)

PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PPTX
Reimagine Home Health with the Power of Agentic AI​
PPTX
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
PPTX
ai tools demonstartion for schools and inter college
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
Nekopoi APK 2025 free lastest update
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PPTX
assetexplorer- product-overview - presentation
PDF
Softaken Excel to vCard Converter Software.pdf
PDF
top salesforce developer skills in 2025.pdf
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PDF
medical staffing services at VALiNTRY
PDF
System and Network Administration Chapter 2
PPTX
history of c programming in notes for students .pptx
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PPT
Introduction Database Management System for Course Database
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Navsoft: AI-Powered Business Solutions & Custom Software Development
Reimagine Home Health with the Power of Agentic AI​
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
ai tools demonstartion for schools and inter college
Wondershare Filmora 15 Crack With Activation Key [2025
Which alternative to Crystal Reports is best for small or large businesses.pdf
Nekopoi APK 2025 free lastest update
Upgrade and Innovation Strategies for SAP ERP Customers
assetexplorer- product-overview - presentation
Softaken Excel to vCard Converter Software.pdf
top salesforce developer skills in 2025.pdf
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
medical staffing services at VALiNTRY
System and Network Administration Chapter 2
history of c programming in notes for students .pptx
How to Choose the Right IT Partner for Your Business in Malaysia
Introduction Database Management System for Course Database
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...

Oracle APEX 기초 워크샵 - 실습 가이드 문서: Part 2 (2/2)

  • 1. 2021.09.06 한국오라클 김은희 상무 APEX 입문 워크샵(Beginner Workshop) - 실습가이드: Part 2
  • 2. 2
  • 3. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 3 [참고] Expenses 테이블 설명
  • 4. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 4 [참고] 법인카드 영수증 등록 Form – PK 자동 설정 PK 설정 방법 1. PK 직접 입력 : 직원정보 관리 Form 2. PK 자동 설정 : 법인카드 영수증 등록 Form (1) 법인카드 영수증 등록 Form에서 Insert문 수행 전에 Trigger 작동 (2) Trigger는 Sequence 객체를 시작시켜 일련 번호를 생성하는 프로세스 수행 (3) 생성된 일련번호가 PK로 자동 입력 ** Sequence, Trigger 생성 필요 **
  • 5. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 5 M03.1-1. Interactive Report with Form 생성과 데이터 소스 연결(1/11) 1
  • 6. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 6 M03.1-1. Interactive Report with Form 생성과 데이터 소스 연결(2/11) 2
  • 7. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 7 M03.1-1. Interactive Report with Form 생성과 데이터 소스 연결(3/11) 3
  • 8. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 8 M03.1-1. Interactive Report with Form 생성과 데이터 소스 연결(4/11) 4
  • 9. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 9 M03.1-1. Interactive Report with Form 생성과 데이터 소스 연결(5/11) 5
  • 10. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 10 M03.1-1. Interactive Report with Form 생성과 데이터 소스 연결(6/11) 6
  • 11. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 11 M03.1-1. Interactive Report with Form 생성과 데이터 소스 연결(7/11) 7
  • 12. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 12 M03.1-1. Interactive Report with Form 생성과 데이터 소스 연결(8/11) 8
  • 13. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 13 M03.1-1. Interactive Report with Form 생성과 데이터 소스 연결(9/11)
  • 14. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 14 M03.1-1. Interactive Report with Form 생성과 데이터 소스 연결(10/11) 9
  • 15. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 15 M03.1-1. Interactive Report with Form 생성과 데이터 소스 연결(11/11)
  • 16. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 16 M03.1-2. PK 자동 설정 : Sequence 생성 (1/5) 1
  • 17. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 17 M03.1-2. PK 자동 설정 : Sequence 생성 (2/5) 2
  • 18. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 18 M03.1-2. PK 자동 설정 : Sequence 생성 (3/5) 3
  • 19. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 19 M03.1-2. PK 자동 설정 : Sequence 생성 (4/5) 4
  • 20. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 20 M03.1-2. PK 자동 설정 : Sequence 생성 (5/5)
  • 21. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 21 M03.1-2. PK 자동 설정 : Trigger 생성 (1/3) 1
  • 22. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 22 M03.1-2. PK 자동 설정 : Trigger 생성 (2/3) 트리거 생성 § APEX Workspace > SQL workshop > SQL command § Expense 테이블의 Insert 문 수행 전에 작동하는 트리거 !"#$%#&'"&"#()$!#&%"*++#"&,-./-01-1234,& 5-678-& *9:#"%&'9&,-./-01-1,& ;'"&#$!<&"'=& >#+*9& *;&?0-@A,-./-01-2BC,&*:&9D))&%<#9& :#)#!%&,-./-01-21-E,A9#F%G$)&*9%'& ?0-@A,-./-01-2BC,&;"'H&:I:AJD$)K& #9J&*;K& #9JK 3 SQL command 입력 2
  • 23. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 23 M03.1-2. PK 자동 설정 : Trigger 생성 (3/3) 4
  • 24. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 24 M03.1-2. PK 자동 설정 : 확인 (1/6) 1 2
  • 25. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 25 M03.1-2. PK 자동 설정 : 확인 (2/6) 3
  • 26. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 26 M03.1-2. PK 자동 설정 : 확인 (3/6) 4
  • 27. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 27 M03.1-2. PK 자동 설정 : 확인 (4/6) 5
  • 28. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 28 M03.1-2. PK 자동 설정 : 확인 (5/6) Form에 입력하면 Expense_ID (PK)가 자동 생성되고 Form 생성 가능
  • 29. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 29 M03.1-2. PK 자동 설정 : 확인 (6/6) Form에 입력하면 Expense_ID (PK)가 자동 생성되고 à Form 생성 à Report 생성 성공!
  • 30. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 30 M03.1-3. 새로운 APEX 사용자 등록 (1/4) 1
  • 31. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 31 M03.1-3. 새로운 APEX 사용자 등록 (2/4) 2
  • 32. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 32 M03.1-3. 새로운 APEX 사용자 등록 (3/4) ID MAIL PW Type flower demo@gmail.com Welcome123456! Admin chuchu demo@gmail.com Welcome123456! Admin 새로운 사용자(admin) 2명을 생성함. M02. 직원 정보 관리 report에서 ‘ID: chuchu’ 로 정보 입력 진행 3
  • 33. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 33 M03.1-3. 새로운 APEX 사용자 등록 (4/4)
  • 34. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 34 M03.1-4. 대체 문자열 설정 (1/2) 로그인한 사용자가 p32 Form을 create클릭 후 생성할 때, Employee_ID 칸에 default로 사용자 대체 문자열이 소문자가 들어가도록 설정 lower(:APP_USER) 1 2 modal dialog는 32p : save à p31 : run 실행!
  • 35. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 35 M03.1-4. 대체 문자열 설정 (2/2) 3 default로 사용자의 대체 문자열(소문자) 입력됨 lower(:APP_USER)
  • 36. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 36 M03.1-5. 직원 정보 관리 Form 수정 - Hidden
  • 37. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 37 M03.1-6. LOV 컴포넌트 생성, List of Values (1/18) 1
  • 38. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 38 M03.1-6. LOV 컴포넌트 생성, List of Values (2/18) 2
  • 39. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 39 M03.1-6. LOV 컴포넌트 생성, List of Values (3/18) 3
  • 40. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 40 M03.1-6. LOV 컴포넌트 생성, List of Values (4/18) § EMPLOYEES § Expense Types § Card Types § Receipt Status !"#"$%&"'(#)*""+,- ./&&"'(+01'" 22&3&43&22&%5%"1'+01'"223/&322%5%"1'+67##+01'" 22383&-& 6.)'&"'(#)*""!&"/&%"1'!&%& 9:"."&"5%"1'+,- ;&%5%"1'+,- !"#"$%&%*("+,- 1!&./&%*("+01'" 1!&-&6.)'&<=><?@<+AB><@& ).-".&C*&D Display Return 개인 카드 Pc 법인 카드 Cc Display Return 분실 M 보관 K
  • 41. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 41 M03.1-6. LOV 컴포넌트 생성, List of Values (5/18)
  • 42. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 42 M03.1-6. LOV 컴포넌트 생성, List of Values (6/18)
  • 43. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 43 M03.1-6. LOV 컴포넌트 생성, List of Values (7/18)
  • 44. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 44 M03.1-6. LOV 컴포넌트 생성, List of Values (8/18)
  • 45. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 45 M03.1-6. LOV 컴포넌트 생성, List of Values (9/18)
  • 46. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 46 M03.1-6. LOV 컴포넌트 생성, List of Values (10/18)
  • 47. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 47 M03.1-6. LOV 컴포넌트 생성, List of Values (11/18)
  • 48. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 48 M03.1-6. LOV 컴포넌트 생성, List of Values (12/18)
  • 49. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 49 M03.1-6. LOV 컴포넌트 생성, List of Values (13/18)
  • 50. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 50 M03.1-6. LOV 컴포넌트 생성, List of Values (14/18)
  • 51. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 51 M03.1-6. LOV 컴포넌트 생성, List of Values (15/18)
  • 52. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 52 M03.1-6. LOV 컴포넌트 생성, List of Values (16/18)
  • 53. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 53 M03.1-6. LOV 컴포넌트 생성, List of Values (17/18)
  • 54. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 54 M03.1-6. LOV 컴포넌트 생성, List of Values (18/18)
  • 55. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 55 M03.1-7. Expense 영수증 관리 Form 수정 – LOV 적용 (1/6) Page Item Identification Type List of Values P32_Employee_ID Select List Shared component / Employees P32_Type_ID Select List Shared component / Expense Types P32_Card_Type Radio Group Shared component / Card types P32_Receipt_status Radio Group Shared component / Receipt status § Page Item : List of Values 설정
  • 56. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 56 M03.1-7. Expense 영수증 관리 Form 수정 – LOV 적용 (2/6) 1
  • 57. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 57 M03.1-7. Expense 영수증 관리 Form 수정 – LOV 적용 (3/6) 2
  • 58. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 58 M03.1-7. Expense 영수증 관리 Form 수정 – LOV 적용 (4/6) 3
  • 59. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 59 M03.1-7. Expense 영수증 관리 Form 수정 – LOV 적용 (5/6) 4
  • 60. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 60 중간 결과물 – LOV 적용 (6/6) § Employee_ID § Type_ID § Card_Type, Receipt_status Select list Radio group
  • 61. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 61 M03.1-7. Expense 영수증 관리 Form 수정 - 한글화 Page Item Label P32_Employee_ID 사용자 P32_Type_ID 비용 유형 P32_Payment_Amount 결재금액 P32_Title 제목 P32_Description 설명 P32_Receipt_status 영수증 상태 P32_card_type 카드 유형 P32_receipt_pic 영수증 등록 P32_receipt_pic2 영수증 사진 P32_use_date 사용일
  • 62. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 62 M03.1-7. Expense 영수증 관리 Form 수정 – Display Image Receipt_PIC을 duplicate함
  • 63. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 63 M03.1-7. Expense 영수증 관리 Form 수정 – Text field Text Areaà Text Field로 변경 Text Areaà Rich text editor 로 변경(HTML 입력 가능)
  • 64. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 64 중간 결과물
  • 65. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 65 M03.1-7. Expense 영수증 관리 Form 수정 – Layout 변경(1/3)
  • 66. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 66 M03.1-7. Expense 영수증 관리 Form 수정 – Layout 변경(2/3)
  • 67. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 67 M03.1-7. Expense 영수증 관리 Form 수정 – Layout 변경(3/3) Column 12칸 중에서 9칸 부터 시작해서 4칸(span)을 차지하도록 변경
  • 68. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 68 M03.1-7. Expense 영수증 관리 Form 수정 – Read only 사용자 : employee_ID (dev01) 자동입력 된 후 변경되지 않도록 Read only= always 설정
  • 69. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 69 로그인 - flower
  • 70. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 70 M03.1-7. Expense 영수증 관리 Form 수정 – CSS 등록 Form 입력하면 사진 크기가 너무 큼
  • 71. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 71 M03.1-7. Expense 영수증 관리 Form 수정 – CSS 등록 img { width: 200px; height: 300px; } 1
  • 72. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 72 M03.1-7. Expense 영수증 관리 Form 수정 – Format mask 1
  • 73. 73
  • 74. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 74 M03.2-1. Expense 영수증 관리 Form 입력 (1/5) Flower 로그인 후 Form 5개 입력
  • 75. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 75 M03.2-1. Expense 영수증 관리 Form 입력 (2/5)
  • 76. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 76 M03.2-1. Expense 영수증 관리 Form 입력 (3/5) chuchu 로그인 후 Form 5개 입력
  • 77. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 77 M03.2-1. Expense 영수증 관리 Form 입력 (4/5) chuchu 로그인 후 Form 5개 입력
  • 78. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 78 M03.2-1. Expense 영수증 관리 Form 입력 (5/5)
  • 79. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 79 M03.2-2. Expense Report 수정 -로그인 User만 조회 가능 (1/3) SQL 쿼리 수정: 조회조건 추가 1
  • 80. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 80 M03.2-2. Expense Report 수정 -로그인 User만 조회 가능 (2/3) 리포트 조회 조건 § 현재 로그인한 사용자만 자신의 영수증 정보를 볼 수 있도록 =<#"#&#H()'I##2*J L&)'=#"M?N//2O1-8P
  • 81. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 81 M03.2-2. Expense Report 수정 -로그인 User만 조회 가능 (3/3)
  • 82. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 82 M03.2-3. Expense Report 수정 - 불필요 column 삭제
  • 83. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 83 M03.2-3. Expense Report 수정 - 불필요 column 삭제
  • 84. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 84 M03.2-3. Expense Report 수정 - 컬럼 설정 Column 이름 변경 헤더 이름 변경 설정 변경 설정 기능 위치 P31_Employee_ID • 사용자 • LOV Look up • ID Type : Plain text based on LOV • List of Values : Employee P31_Type_ID • 비용 유형 • LOV Look up • ID Type : Plain text based on LOV • List of Values : Expense type P31_Payment_amount • 결재 금액 • 포맷 지정 P31_Title • 제목 P31_Description • 설명 • Html 출력되지 않도록 • ID type : Percent Graph P31_Receipt_status • 영수증 상태 • LOV Look up • ID Type : Plain text based on LOV • List of Values : Receipt status P31_Card_type • 카드 유형 • LOV Look up • ID Type : Plain text based on LOV • List of Values : card type P31_receipt_pic • 영수증 사진 • Hidden 처리 P31_use_date • 사용일 • 포맷 설정 YYYY-MM-DD P31_cre_date • Hidden 처리
  • 85. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 85 M03.2-3. Expense Report 수정 - 컬럼 한글화
  • 86. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 86 M03.2-3. Expense Report 수정 - 컬럼 포맷
  • 87. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 87 M03.2-3. Expense Report 수정 - LOV Value 대체(look up) (1/4)
  • 88. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 88 M03.2-3. Expense Report 수정 - LOV Value 대체(look up) (2/4)
  • 89. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 89 M03.2-3. Expense Report 수정 - LOV Value 대체(look up) (3/4)
  • 90. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 90 M03.2-3. Expense Report 수정 - LOV Value 대체(look up) (4/4)
  • 91. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 91 M03.2-3. Expense Report 수정 – HTML 지원 설정
  • 92. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 92 중간 결과물
  • 93. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 93 M03.2-3. Expense Report 수정 – Hero (1/5) 1
  • 94. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 94 M03.2-3. Expense Report 수정 – Hero (2/5) 2 3 위치 옮김
  • 95. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 95 M03.2-3. Expense Report 수정 – Hero (3/5) 4 5
  • 96. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 96 M03.2-3. Expense Report 수정 – Hero (4/5)
  • 97. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 97 M03.2-3. Expense Report 수정 – Hero (5/5) Source > Text 에서 <p> </p> 뒤에 (&APP_USER.) 을 추가하면 (Chuchu) 출력됨
  • 98. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 98 M03.2-4. Expense Report - 검색 기간 Default 설정 (1/13)
  • 99. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 99 M03.2-4. Expense Report - 검색 기간 Default 설정 (2/13)
  • 100. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 100 M03.2-4. Expense Report - 검색 기간 Default 설정 (3/13)
  • 101. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 101 M03.2-4. Expense Report - 검색 기간 Default 설정 (4/13)
  • 102. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 102 M03.2-4. Expense Report - 검색 기간 Default 설정 (5/13) Search에서 우클릭 후 Page item 2 개, Button 1 개 생성함
  • 103. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 103 M03.2-4. Expense Report - 검색 기간 Default 설정 (6/13) 1 2
  • 104. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 104 M03.2-4. Expense Report - 검색 기간 Default 설정 (7/13) 3 4
  • 105. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 105 M03.2-4. Expense Report - 검색 기간 Default 설정 (8/13) 5
  • 106. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 106 M03.2-4. Expense Report - 검색 기간 Default 설정 (9/13) 6 7 SQL쿼리 입력 - 뒷장 참고
  • 107. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 107 M03.2-4. Expense Report - 검색 기간 Default 설정 (10/13) Default 설정 § P31_Search_From § 영수증 날짜 중에서 가장 과거의 날짜가 기본으로 보이도록 설정 !"#"$%&'()*+!",-.%"/&012'&"34")!"!& 56"1"&"'4#27"",(-&8&#25"1*9:;;,<=>?/ Default 설정 § P31_Search_To § 영수증 날짜 중에서 가장 최근 날짜가 기본으로 보이도록 설정 select max(use_date) from expenses where employee_id = lower(:APP_USER)
  • 108. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 108 M03.2-4. Expense Report - 검색 기간 Default 설정 (11/13) 8
  • 109. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 109 M03.2-4. Expense Report - 검색 기간 Default 설정 (12/13) 9 10
  • 110. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 110 M03.2-4. Expense Report - 검색 기간 Default 설정 (13/13) 11
  • 111. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 111 M03.2-5. Expense Report 수정 – 검색 한글화, 날짜 포맷 12
  • 112. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 112 M03.2-5. Expense Report 수정 – 검색 한글화, 날짜 포맷 13
  • 113. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 113 중간 결과 물
  • 114. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 114 M03.2-6. Expense Report 검색 (1/3) 14
  • 115. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 115 M03.2-6. Expense Report 검색 (2/3) 검색 where 절 설정 § Default 날짜 중에서 검색 하도록 56"1"&>@;ABC>>,DE&8&#25"1*9:;;,<=>?/& .)-&<=>,E:F>&G8&FB,E:F>*9;HI,=>:?JK,L?B@M&NCCCCO@@OEEN/& .)-&<=>,E:F>&P8&FB,E:F>*9;HI,=>:?JK,FBM&NCCCCO@@OEEN/ Where 교체 !! (추가 아님) 15
  • 116. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 116 M03.2-6. Expense Report 검색 (3/3) 16
  • 117. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 117 M03.2-7. Expense Report - Dynamic Search (1/11) 1
  • 118. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 118 M03.2-7. Expense Report - Dynamic Search (2/11) 1 2 조건 확인
  • 119. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 119 M03.2-7. Expense Report - Dynamic Search (3/11) 3 4 5
  • 120. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 120 M03.2-7. Expense Report - Dynamic Search (4/11) 6 7 조건 확인
  • 121. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 121 M03.2-7. Expense Report - Dynamic Search (5/11) 8 9 10
  • 122. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 122 M03.2-7. Expense Report - Dynamic Search (6/11) 11 12
  • 123. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 123 M03.2-7. Expense Report - Dynamic Search (7/11) 각각 클릭 13
  • 124. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 124 M03.2-7. Expense Report - Dynamic Search (8/11) 14
  • 125. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 125 M03.2-7. Expense Report - Dynamic Search (9/11) 15
  • 126. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 126 M03.2-7. Expense Report - Dynamic Search (10/11) 16
  • 127. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 127 M03.2-7. Expense Report - Dynamic Search (11/11) 17 메시지가 과도할 경우 Advanced > ignore !
  • 128. 128
  • 129. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 129 [참고] Expense_Reports 테이블 설명
  • 130. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 130 M03.3-1. Master Detail 생성과 데이터 소스 연결(1/6)
  • 131. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 131 M03.3-1. Master Detail 생성과 데이터 소스 연결(2/6)
  • 132. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 132 M03.3-1. Master Detail 생성과 데이터 소스 연결(3/6)
  • 133. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 133 M03.3-1. Master Detail 생성과 데이터 소스 연결(4/6)
  • 134. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 134 M03.3-1. Master Detail 생성과 데이터 소스 연결(5/6)
  • 135. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 135 M03.3-1. Master Detail 생성과 데이터 소스 연결(6/6)
  • 136. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 136 Master Detail 페이지 생성
  • 137. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 137 M03.3-2. PK 자동 설정 : Sequence 생성 (1/5) 1 2
  • 138. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 138 M03.3-2. PK 자동 설정 : Sequence 생성 (2/5) 3
  • 139. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 139 M03.3-2. PK 자동 설정 : Sequence 생성 (3/5)
  • 140. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 140 M03.3-2. PK 자동 설정 : Sequence 생성 (4/5)
  • 141. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 141 M03.3-2. PK 자동 설정 : Sequence 생성 (5/5)
  • 142. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 142 M03.3-3. PK 자동 설정 : Process 등록 (1/8)
  • 143. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 143 M03.3-3. PK 자동 설정 : Process 등록 (2/8) PK가 없으므로 Form 생성되지 않음 Sequence에서 나오는 값을 PK로 insert하는 프로세스 필요
  • 144. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 144 M03.3-3. PK 자동 설정 : Process 등록 (3/8) 1 2
  • 145. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 145 M03.3-3. PK 자동 설정 : Process 등록 (4/8) 3 위치를 맨 처음으로 변경
  • 146. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 146 M03.3-3. PK 자동 설정 : Process 등록 (5/8) 4 Code 입력
  • 147. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 147 M03.3-3. PK 자동 설정 : Process 등록 (6/8) Process 등록: set pk with seq declare V_REPORT_ID number(9); begin select EXPENSE_REPORT_SEQ.nextval into V_REPORT_ID from dual; :P42_EXPENSE_REPORT_ID := V_REPORT_ID; end; 5
  • 148. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 148 M03.3-3. PK 자동 설정 : Process 등록 (7/8) PK가 있으므로 Form 생성 가능, Master detail 생성 가능
  • 149. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 149 M03.3-3. PK 자동 설정 : Process 등록 (8/8) Form에서 Create 버튼을 클릭할 경우에만 PK 설정되는 프로세스가 실행하도록 설정 6
  • 150. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 150 M03.3-4. Form 수정 – Hidden
  • 151. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 151 M03.3-4. Form 수정 – LOV Value 대체 (look up)
  • 152. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 152 M03.3-4. Form 수정 – 날짜 자동 설정
  • 153. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 153 중간 결과물
  • 154. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 154 M03.3-4. Form 수정 – 한글화
  • 155. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 155 M03.3-4. Form 수정 – 한글화
  • 156. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 156 M03.3-4. Form 수정 – 한글화
  • 157. 157
  • 158. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 158 [참고] Expense_Reports, Expense_Report_Items 테이블 설명
  • 159. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 159 작업 대상 – P43. Expense Report Items Expense ID 부분에 대한 설정 P43
  • 160. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 160 M03.4-1. 리포트 아이템 수정 – Hidden
  • 161. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 161 M03.4-1. 리포트 아이템 수정 – LOV, SQL 쿼리 적용 (1/4)
  • 162. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 162 M03.4-1. 리포트 아이템 수정 – LOV, SQL 쿼리 적용 (2/4)
  • 163. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 163 M03.4-1. 리포트 아이템 수정 – LOV, SQL 쿼리 적용 (3/4) SQL Query로 List of value 만들기 select title||','||payment_amount||'('||use_date||')', expense_id from expenses where employee_id=lower(:APP_USER) and expense_id not in ( select i.expense_id from expense_reports r, expense_report_items i where r.EXPENSE_REPORT_ID = i.report_id and r.employee_id = lower(:APP_USER) ) order by use_date
  • 164. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 164 M03.4-1. 리포트 아이템 수정 – LOV, SQL 쿼리 적용 (4/4) (p41) + 기호 수정
  • 165. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 165 M03.4-1. 리포트 아이템 수정 – 버튼 수정 (1/3) 1 2
  • 166. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 166 M03.4-1. 리포트 아이템 수정 – 버튼 수정 (2/3) 3
  • 167. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 167 M03.4-1. 리포트 아이템 수정 – 버튼 수정 (3/3)
  • 168. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 168 M03.4-1. 리포트 아이템 수정 – 한글화 3
  • 169. 169
  • 170. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 170 [참고] Expense_Report_Items의 View 설명 기존 Table 대신 View를 참조 à View를 source로 등록 필요
  • 171. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 171 [참고] Expense_Report_Items의 View 설명
  • 172. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 172 [참고] Expense_report_items_V
  • 173. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 173 [참고] Expense_report_items_V
  • 174. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 174 M03.5-1. 영수증 목록 개선 – Source : View로 변경 (1/3) 1 2 Table à View로 바꿔도 where절 그대로
  • 175. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 175 M03.5-1. 영수증 목록 개선 – Source : View로 변경 (2/3) 3
  • 176. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 176 M03.5-1. 영수증 목록 개선 – Source : View로 변경 (3/3) REPORT_ID = :P41_EXPENSE_REPORT_ID expense_id 4 5
  • 177. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 177 M03.5-2. 영수증 Reports items 추가 영수증 추가 누르고 4개 create 합니다
  • 178. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 178 M03.5-2. 영수증 Reports items 추가 현재 1개씩 삭제 대신 일괄 삭제 버튼으로 수정
  • 179. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 179 M03.5-3. 영수증 Reports items – Select All UI 생성 (1/10) 1 2
  • 180. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 180 M03.5-3. 영수증 Reports items – Select All UI 생성 (2/10) SQL Query 변경 select REPORT_ID, EXPENSE_ID, EMPLOYEE_ID, TYPE_ID, PAYMENT_AMOUNT, TITLE, DESCRIPTION, USE_DATE, CRE_DATE from EXPENSE_REPORT_ITEMS_V where REPORT_ID = :P41_EXPENSE_REPORT_ID order by expense_id 3
  • 181. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 181 M03.5-3. 영수증 Reports items – Select All UI 생성 (3/10)
  • 182. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 182 M03.5-3. 영수증 Reports items – Select All UI 생성 (4/10) SQL Query 컬럼 추가 apex_item.checkbox2(1, EXPENSE_ID) selected, ‘Expense_ID의 컬럼을 가져와서 check box HTML로 변환하라’는 함수 4
  • 183. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 183 M03.5-3. 영수증 Reports items – Select All UI 생성 (5/10) 새로운 checkbox HTML 태그가 등록됨
  • 184. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 184 M03.5-3. 영수증 Reports items – Select All UI 생성 (6/10) 맨 위로 위치 옮김 1
  • 185. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 185 M03.5-3. 영수증 Reports items – Select All UI 생성 (7/10) 2
  • 186. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 186 M03.5-3. 영수증 Reports items – Select All UI 생성 (8/10) 새로운 HTML 태그가 UI로 변경, 정렬 필요
  • 187. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 187 M03.5-3. 영수증 Reports items – Select All UI 생성 (9/10) 3
  • 188. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 188 M03.5-3. 영수증 Reports items – Select All UI 생성 (10/10) Heading <input type="checkbox" id="selectunselectall"> Selected 칼럼의 헤딩에 checkbox를 만들어라! ID는 selectunselectall 1 2
  • 189. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 189 중간 결과물 Selected 칼럼의 헤딩에 checkbox 생성됨!
  • 190. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 190 [참고] 일괄선택 및 일괄해지 기능 상태가 변경되면, 아래 checkbox가 모두 선택 또는 해지되도록 설정 Change event 발생 à added expenses위치에서 Javascript 실행 (added expenses 생성필요)
  • 191. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 191 M03.5-4. 영수증 Reports items – 일괄선택해지 기능 (1/6) Advanced > Static ID : added_expenses 설정 added expenses에서 이벤트/자바스크립트 작동되도록 1 2
  • 192. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 192 M03.5-4. 영수증 Reports items – 일괄선택해지 기능 (2/6) Change 이벤트를 우클릭 dynamic action으로 등록 3 4
  • 193. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 193 M03.5-4. 영수증 Reports items – 일괄선택해지 기능 (3/6) change selectunselectall JQuery Selector #selectunselectall 5 6
  • 194. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 194 M03.5-4. 영수증 Reports items – 일괄선택해지 기능 (4/6) Dynamic #added_expenses 7
  • 195. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 195 M03.5-4. 영수증 Reports items – 일괄선택해지 기능 (5/6) Execute Javascript Code 8 9
  • 196. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 196 M03.5-4. 영수증 Reports items – 일괄선택해지 기능 (6/6) Execute JavaScript if ($('#added_expenses #selectunselectall' ).is(':checked') ) { $('#added_expenses input[type=checkbox][name=f01]').prop('checked',true); } else { $('#added_expenses input[type=checkbox][name=f01]').prop('checked',false); } 10
  • 197. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 197 M03.5-5. 영수증 Reports items – 삭제 버튼 (1/8) 1
  • 198. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 198 M03.5-5. 영수증 Reports items – 삭제 버튼 (2/8) 여기로 이동 2
  • 199. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 199 M03.5-5. 영수증 Reports items – 삭제 버튼 (3/8)
  • 200. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 200 M03.5-5. 영수증 Reports items – 삭제 버튼 (4/8) 3
  • 201. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 201 M03.5-5. 영수증 Reports items – 삭제 버튼 (5/8) 4 5
  • 202. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 202 M03.5-5. 영수증 Reports items – 삭제 버튼 (6/8) 6
  • 203. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 203 M03.5-5. 영수증 Reports items – 삭제 버튼 (7/8) 영수증 일괄 삭제 FOR i in 1..APEX_APPLICATION.G_F01.COUNT LOOP delete from EXPENSE_REPORT_ITEMS where report_id = :P41_EXPENSE_REPORT_ID and expense_id = APEX_APPLICATION.G_F01(i); END LOOP; 7
  • 204. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 204 M03.5-5. 영수증 Reports items – 삭제 버튼 (8/8) 8
  • 205. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 205 중간 결과물
  • 206. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 206 M03.5-6. 영수증 Reports items – LOV 참조키 치환 (1/2)
  • 207. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 207 M03.5-6. 영수증 Reports items – LOV 참조키 치환 (2/2) LOV 참조 키 치환 select title||'('||payment_amount||')', expense_id from expenses
  • 208. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 208 M03.5-6. 영수증 Reports items – LOV Value 대체 (look up)
  • 209. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 209 M03.5-6. 영수증 Reports items – LOV Value 대체 (look up)
  • 210. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 210 M03.5-6. 영수증 Reports items – 금액 포맷
  • 211. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 211 M03.5-6. 영수증 Reports items – HTML 지원 설정
  • 212. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 212 M03.5-6. 영수증 Reports items – 한글화
  • 213. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 213 M03.5-6. 영수증 Reports items – 한글화
  • 214. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 214 M03.5-6. 영수증 Reports items – 한글화
  • 215. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 215 M03.5-6. 영수증 Reports items – 한글화
  • 216. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 216 M03.5-6. 영수증 Reports items – 한글화
  • 217. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 217 M03.5-6. 영수증 Reports items – 한글화
  • 218. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 218 M03.5-6. 영수증 Reports items – 한글화
  • 219. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 219 중간 결과물
  • 220. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 220
  • 221. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 221 M03.6-1. Master 업데이트 이 부분이 Master table 보이는 곳
  • 222. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 222 이 부분이 Master 이 부분이 Master table보이는 곳
  • 223. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 223 M03.6-1. Master 업데이트 좌 4개 컬럼은 서버 side 조건이 걸려있으므로 data=null일 경우에는 데이터를 볼 수 없었음
  • 224. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 224 M03.6-1. Master 업데이트 – 한글화
  • 225. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 225 M03.6-1. Master 업데이트 – 한글화
  • 226. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 226 M03.6-1. Master 업데이트 – 한글화
  • 227. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 227 M03.6-1. Master 업데이트 – 한글화
  • 228. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 228 M03.6-2. Master 업데이트 – Stored Procedure 생성 (1/4)
  • 229. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 229 M03.6-2. Master 업데이트 – Stored Procedure 생성 (2/4) create or replace PROCEDURE update_expense_report( p_report_id IN VARCHAR2 ) IS v_cc_num NUMBER(3); v_cc_amount NUMBER(9); v_pc_num NUMBER(3); v_pc_amount NUMBER(9); BEGIN select count(e.expense_id), nvl(sum(e.PAYMENT_AMOUNT),0) into v_cc_num, v_cc_amount from expenses e, expense_report_items i where e.EXPENSE_ID = i.expense_id and i.report_id = p_report_id and card_type = 'cc'; select count(e.expense_id), nvl(sum(e.PAYMENT_AMOUNT),0) into v_pc_num, v_pc_amount from expenses e, expense_report_items i where e.EXPENSE_ID = i.expense_id and i.report_id = p_report_id and card_type = 'pc'; UPDATE EXPENSE_REPORTS SET COMPANY_CARD_RECEIPT_NUM = v_cc_num, PRIVATE_CARD_RECEIEPT_NUM = v_pc_num, COMPANY_CARD_AMOUNT = v_cc_amount, PRIVATE_CARD_AMOUNT = v_pc_amount WHERE EXPENSE_REPORT_ID = p_report_id; END;
  • 230. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 230 M03.6-2. Master 업데이트 – Stored Procedure 생성 (3/4) Stored procedure 복사&붙이기 영수증이 등록(p43), 삭제(p41)될 때 그 정보가 master (report)에 업데이트 되도록!
  • 231. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 231 M03.6-2. Master 업데이트 – Stored Procedure 생성 (4/4)
  • 232. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 232 M03.6-3. Master 업데이트 – Process 추가 (1/8) 1
  • 233. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 233 M03.6-3. Master 업데이트 – Process 추가 (2/8) 10번 확인 2 3
  • 234. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 234 M03.6-3. Master 업데이트 – Process 추가 (3/8) 4
  • 235. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 235 M03.6-3. Master 업데이트 – Process 추가 (4/8) P41 – Process 추가 § Name : update report § When : delete begin update_expense_report( p_report_id => :P41_EXPENSE_REPORT_ID); end; 5
  • 236. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 236 M03.6-3. Master 업데이트 – Process 추가 (5/8) 6
  • 237. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 237 M03.6-3. Master 업데이트 – Process 추가 (6/8) 2개 프로세스 사이로 위치 변경 7
  • 238. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 238 M03.6-3. Master 업데이트 – Process 추가 (7/8) 8
  • 239. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 239 M03.6-3. Master 업데이트 – Process 추가 (8/8) P43 – Process 추가 § Name : update report begin update_expense_report( p_report_id => :P43_REPORT_ID); end; 9
  • 240. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 240 중간 결과물 1개 Delete à 아래 1개 record 삭제 4개 record 생성되어 보임 1 2
  • 241. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 241 중간 결과물 1개 추가 à 아래 1개 record 추가됨 그러나, 위는 변화하지 않음 (dynamic action 수정 필요!) 3 4
  • 242. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 242 M03.6-4. Master 업데이트 – Dynamic Action (1/5) 순서 변경
  • 243. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 243 M03.6-4. Master 업데이트 – Dynamic Action (2/5) 1
  • 244. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 244 M03.6-4. Master 업데이트 – Dynamic Action (3/5) 2 3 Expense Reports
  • 245. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 245 M03.6-4. Master 업데이트 – Dynamic Action (4/5) 4 True 액션 생성
  • 246. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 246 M03.6-4. Master 업데이트 – Dynamic Action (5/5) 5 6 Expense Report Items
  • 247. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 247 결과물 1개 추가 à 아래 1개 record 추가됨 5개로 변경됨! (dynamic action 실행) 1 2
  • 248. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 248
  • 249. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 249 M04.1-1. Login 페이지 변경
  • 250. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 250 M04.1-1. Login 페이지 변경 기본 로그인 페이지
  • 251. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 251 M04.1-1. Login 페이지 변경 – 이미지 다운 로드
  • 252. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 252 M04.1-2. Login 페이지 변경 – Static Application Files (1/5) 1
  • 253. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 253 M04.1-2. Login 페이지 변경 – Static Application Files (2/5) 2
  • 254. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 254 M04.1-2. Login 페이지 변경 – Static Application Files (3/5) 3
  • 255. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 255 M04.1-2. Login 페이지 변경 – Static Application Files (4/5) 4
  • 256. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 256 M04.1-2. Login 페이지 변경 – Static Application Files (5/5) 5
  • 257. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 257 M04.1-3. Login 페이지 변경 – 페이지 레이아웃 (1/4) 1
  • 258. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 258 M04.1-3. Login 페이지 변경 – 페이지 레이아웃 (2/4) 2 3
  • 259. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 259 M04.1-3. Login 페이지 변경 – 페이지 레이아웃 (3/4) 4
  • 260. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 260 M04.1-3. Login 페이지 변경 – 페이지 레이아웃 (4/4)
  • 261. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 261 M04.1-4. Login 페이지 변경 – CSS 변경 (1/2) 5 6
  • 262. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 262 M04.1-4. Login 페이지 변경 – CSS 변경 (2/2) bg.png로 변경 CSS Inline body{ background-image: url('#APP_IMAGES#base.jpg'); background-position: center; background-repeat: no-repeat; background-size: cover; } Span.t-Login-logo{ background-image : url('#APP_IMAGES#oracle-apex.png'); background-Size :cover; width :150px; height :120px; }
  • 263. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 263 결과물
  • 264. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 264
  • 265. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 265 M04.2-1. APEX 커스텀 인증 – 테이블 패스워드 설정 (1/5) 1
  • 266. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 266 M04.2-1. APEX 커스텀 인증 – 테이블 패스워드 설정 (2/5) Employee_ID, EMP_PW로 인증하는 방식으로 만듬 2
  • 267. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 267 M04.2-1. APEX 커스텀 인증 – 테이블 패스워드 설정 (3/5) 3
  • 268. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 268 M04.2-1. APEX 커스텀 인증 – 테이블 패스워드 설정 (4/5) EMP_PW에 WELCOME123456! 로 설정 update employees set EMP_PW = 'WELCOME123456!'; 4
  • 269. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 269 M04.2-1. APEX 커스텀 인증 – 테이블 패스워드 설정 (5/5) EMP_PW에 WELCOME123456! 로 설정 확인! 5
  • 270. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 270 M04.2-2. APEX 커스텀 인증 – 오라클 Function 생성 (1/3) Table로 인증하는 방식을 만들기 위해 오라클 Function 생성 Table에 employee_Id, EMP_PW 있는지 확인 후 있으면 success (인증성공) 1 2
  • 271. M04.2-2. APEX 커스텀 인증 – 오라클 Function 생성 (2/3) Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 271 오라클 Function – APEX 인증 : SQL Workshop > SQL Commands create or replace function authenticate_user ( p_username in varchar2, p_password in varchar2 ) return boolean as v_pw_check varchar2(1); begin APEX_UTIL.SET_SESSION_STATE('LOGIN_MESSAGE', '시작'); select 'x' into v_pw_check from employees where upper(employee_id) = upper(p_username) and upper(emp_pw) = upper(p_password); apex_util.set_authentication_result(0); APEX_UTIL.SET_SESSION_STATE('LOGIN_MESSAGE', 'Success'); return true; exception when NO_DATA_FOUND then apex_util.set_authentication_result(4); APEX_UTIL.SET_SESSION_STATE('LOGIN_MESSAGE', '오류!! 아이디와 비밀번호가 불일치합니다.'); return false; end authenticate_user;
  • 272. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 272 M04.2-2. APEX 커스텀 인증 – 오라클 Function 생성 (3/3) Login message라는 변수 생성 필요! 3
  • 273. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 273 1 M04.2-3. APEX 커스텀 인증 – Application item 등록 (1/5)
  • 274. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 274 M04.2-3. APEX 커스텀 인증 – Application item 등록 (2/5) 2 세션 객체에 변수를 등록하는 과정
  • 275. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 275 M04.2-3. APEX 커스텀 인증 – Application item 등록 (3/5) 3
  • 276. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 276 M04.2-3. APEX 커스텀 인증 – Application item 등록 (4/5) 4 5
  • 277. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 277 M04.2-3. APEX 커스텀 인증 – Application item 등록 (5/5)
  • 278. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 278 M04.2-4. APEX 커스텀 인증 – Authentication Scheme 생성 (1/6) 1
  • 279. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 279 M04.2-4. APEX 커스텀 인증 – Authentication Scheme 생성 (2/6) 2
  • 280. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 280 M04.2-4. APEX 커스텀 인증 – Authentication Scheme 생성 (3/6) 3
  • 281. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 281 M04.2-4. APEX 커스텀 인증 – Authentication Scheme 생성 (4/6) 4
  • 282. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 282 M04.2-4. APEX 커스텀 인증 – Authentication Scheme 생성 (5/6) 5 6
  • 283. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 283 M04.2-4. APEX 커스텀 인증 – Authentication Scheme 생성 (6/6)
  • 284. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 284 M04.2-5. APEX 커스텀 인증 – Login 확인 (1/3) 1
  • 285. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 285 M04.2-5. APEX 커스텀 인증 – Login 확인 (2/3) 2
  • 286. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 286 M04.2-5. APEX 커스텀 인증 – Login 확인 (3/3) Apex_authentication.login이라는 stored procedure 호출하는데 Function을 생성했으므로 authenticate_user 라는 function에서 인증정보를 가져와서 인증
  • 287. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 287 결과물 Flower, WELCOME123456! 입력하면 커스텀 인증으로 로그인 됨
  • 288. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 288 오타 수정 http://taewan.kim/apex- workshop/01.beginner_ws/30.expense/20- expense_mngt_list/ P31 http://taewan.kim/apex- workshop/01.beginner_ws/20. m01/10-app-tabes/ 레지던 트
  • 289. Copyright © 2020, Oracle and/or its affiliates | Confidential: Internal/Restricted/Highly Restricted 289 오타 수정 http://taewan.kim/apex- workshop/01.beginner_ws/30.expense/20- expense_mngt_list/ 오타 수정 # 추가 http://taewan.kim/apex- workshop/01.beginner_ws/30.expense/50- expense_report_receipts_list/ http://taewan.kim/apex- workshop/01.beginner_ws/40.authentification/20- authentication/ 패스워드